Foxtable(狐表)用户栏目专家坐堂 → 关于导出Excel问题


  共有3813人关注过本帖树形打印复制链接

主题:关于导出Excel问题

帅哥哟,离线,有人找我吗?
裴保民
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/8/12 16:08:00 [只看该作者]

运行后弹出错误提示

图片点击可在新窗口打开查看此主题相关图片如下:截图12.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/12 16:15:00 [只看该作者]

哪一句代码出错?调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/8/12 16:24:00 [只看该作者]

刚才是字段少了一个字符,不过也行后“idx ”都是4呢?导出的数据,逻辑值不对

图片点击可在新窗口打开查看此主题相关图片如下:截图13.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/12 16:43:00 [只看该作者]

dim idx as integer = -1
For Each dc As Col In post.cols
    If dc.name = "是否填开" Then
    idx = dc.index
exit for
    End If
Next
改为
Dim idx As Integer = -1
For i As Integer = 0 To post.cols.count - 1
    Dim dc As Col = post.cols(i)
    If dc.Visible Then idx += 1
    If dc.name = "是否填开" Then
        Exit For
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/8/12 17:14:00 [只看该作者]

蓝老师运行后,发现以下错误

(1)如果导出的数据列不包括“是否已填开”列时会将其他列覆盖,
(2)“是否已填开”列只有“否”数据,

图片点击可在新窗口打开查看此主题相关图片如下:截图14.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:截图15.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:截图16.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:截图17.png
图片点击可在新窗口打开查看



[此贴子已经被作者于2020/8/12 17:31:07编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/12 17:33:00 [只看该作者]

自己判断如果不包含这个逻辑列就不要进行for循环了:http://www.foxtable.com/webhelp/topics/0561.htm

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/8/12 17:43:00 [只看该作者]

这句代码操作的不是Excel吧?怎么不包含该字段也执行呀?

就算包含也不对,好像只有逻辑列在最后,执行的列才对上号,其他的都不对,还有就是只有“是”数据,“否”数据没导出来
[此贴子已经被作者于2020/8/12 17:46:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/12 17:47:00 [只看该作者]

Dim idx As Integer = -1
For i As Integer = 0 To post.cols.count - 1
    Dim dc As Col = post.cols(i)
    If dc.Visible Then idx += 1
    If dc.name = "是否填开" Then
if dc.Visible =false then idx = -1
        Exit For
    End If
Next
if dx > -1
Dim Book As New XLS.Book(dlg.FileName)
Dim Sheet As XLS.Sheet = Book.Sheets(0)
For n As Integer = 1 To Sheet.Rows.Count -1
    If Sheet(n,idx ).Text = "1" '假设逻辑列是第6列
        Sheet(n,idx ).Value = "是"
    Else
        Sheet(n,idx ).Value = "否"
    End If
Next
endif

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/8/12 17:57:00 [只看该作者]

测试后和刚才一样

图片点击可在新窗口打开查看此主题相关图片如下:截图18.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/13 8:28:00 [只看该作者]

请上传实例测试

 回到顶部
总数 25 上一页 1 2 3 下一页