请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

裴松晨
注册会员   /  发表于:2025-5-6 11:33  /   查看:66  /  回复:9

sheet.getColumnCount()
如果我将插入批注的那列进行删除后获取的是五列
但是加上后获取的列数就对不上是为什么

工作簿1.zip

10.32 KB, 下载次数: 2

9 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-5-6 17:53:47
来自 8#
可以使用 getUsedRange(GC.Spread.Sheets.UsedRangeType.data) 获取数据单元格的区域信息:
image.png723465881.png
具体可参考学习指南相关介绍:
https://demo.grapecity.com.cn/sp ... sed-range#timestamp
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-5-6 15:19:18
沙发
本帖最后由 Lynn.Dou 于 2025-5-6 15:21 编辑

您好,
从文件来看有3列设置了批注,“我将插入批注的那列进行删除”具体操作的哪一个批注呢?
请结合您提供的文件详细描述下完整操作步骤以及遇到的问题,以便我们进行验证。
image.png751986388.png
回复 使用道具 举报
裴松晨
注册会员   /  发表于:2025-5-6 15:23:43
板凳
Lynn.Dou 发表于 2025-5-6 15:19
您好,
从文件来看有3列设置了批注,“我将插入批注的那列进行删除”具体操作的哪一个批注呢?
请结合您 ...

是有红色批注(2行)的那一行,删除了然后就是好的,不删除就获取的是六列。删除了就是五列
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-5-6 16:34:31
地板
我使用V16.2.6直接导入您提供的xlsx文件,删除前后的列数如下图所示(选择第二行右键菜单删除):
image.png284207762.png
您对比下在您项目中显示的列数是否与我截图效果一致。如果不一致,看下是否是提供文件有误。


回复 使用道具 举报
裴松晨
注册会员   /  发表于:2025-5-6 17:07:35
5#
本帖最后由 裴松晨 于 2025-5-6 17:11 编辑
Lynn.Dou 发表于 2025-5-6 16:34
我使用V16.2.6直接导入您提供的xlsx文件,删除前后的列数如下图所示(选择第二行右键菜单删除):

您对 ...

1.我的场景是将excel中的文件进行导入
下面是我的操作代码
<template>
  <el-dialog title='导入文件' :close-on-click-modal='false' :modal='false'
             class='JNPF-dialog JNPF-dialog_center JNPF-dialog-import' lock-scroll width='1000px'>
    <div class='import-main'>
      <div class='upload'>
        <div class='up_right'>
          <p class='title'>上传填好的数据表</p>
          <p class='tip'>文件后缀名必须是xlsx,点击保存赋值到下面报表中</p>
          <el-upload :action="define.comUrl+'/api/extend/Employee/Uploader'"
                     :headers='{ Authorization: $store.getters.token}' n-success='handleSuccess'
                     :file-list='fileList' accept=".xls,.xlsx"
                     class='upload-area'>
            <el-button type='text'>上传文件</el-button>
          </el-upload>
        </div>
      </div>
    </div>
    <span slot='footer' class='dialog-footer'>
      <el-button @click='cancel()'>取 消</el-button>
      <el-button @click='cancel(true)' type='primary'>确 定</el-button>
    </span>
  </el-dialog>
</template>

<script>

import * as ExcelIO from '@grapecity/spread-excelio'

export default {
  props: ['template', 'year'],
  data() {
    return {
      importExcelFile: null,
      fileName: '',
      fileList: [],
      list: []
    }
  },
  methods: {
    //导入的方法
cancel(isRefresh) {
      if (isRefresh) {
        // let spread = this.spreadValue
let excelIo = new ExcelIO.IO()
        let excelFile = this.importExcelFile
        var _this = this
        excelIo.open(excelFile, function(json) {
          // spread.fromJSON(workbookObj);
          // _this.$emit('ImportInit', json)
console.log(json)
          _this.$parent.ImportInit(json)
        }, function(e) {
          // process error
alert(e.errorMessage)
        })
      }
    },
    handleSuccess(res, file, fileList) {
      this.importExcelFile = file.raw
      if (res.code == 200) {
        this.fileList = fileList.slice(-1)
        this.fileName = res.data.name
      } else {
        this.fileList = fileList.filter(o => o.uid != file.uid)
        this.$message({ message: res.msg, type: 'error', duration: 1000 })
      }
    }
  }
}
</script>

2.这是我的控制台删除后输出5列是对的

image.png124656066.png forum.png135744017.png


回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-5-6 17:30:52
6#
“将插入批注的那列进行删除”您是在本地Excel做的删除操作吧(如 微软Excel 或 WPS)
如果是,原因如下:
批注会占据右侧的列位置,所以未删除时列数为9。下图可以直观看出效果:
image.png852170715.png
删除批注后,占据右侧列位置的情况也就不存在了,所以列数为5。
回复 使用道具 举报
裴松晨
注册会员   /  发表于:2025-5-6 17:41:06
7#
Lynn.Dou 发表于 2025-5-6 17:30
“将插入批注的那列进行删除”您是在本地Excel做的删除操作吧(如 微软Excel 或 WPS)
如果是,原因如下: ...

我就是在本地excel操作的,有没有一种方式获取到实际的列数,不受批注的影响
回复 使用道具 举报
裴松晨
注册会员   /  发表于:2025-5-7 08:25:18
9#
Lynn.Dou 发表于 2025-5-6 17:53
可以使用 getUsedRange(GC.Spread.Sheets.UsedRangeType.data) 获取数据单元格的区域信息:

具体可参考 ...

好的,谢谢,这个确实可以获取到
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-5-7 09:40:35
10#
那本帖就先结贴了, 有问题欢迎另开新帖交流。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部