提取excel表字段的问题

superzd 2007-05-28 09:09:12
提取excel表字段采用如下方式,提取出的字段都为空,不知道为什么!高手指点下!
MyOle.WorkBooks.Open(ls_path)

IF NOT IsValid(xlsub) THEN
xlsub = CREATE OLEObject
END IF
xlsub = myole.Application.ActiveWorkbook.Worksheets[1]
long ll_excel_column
ll_excel_column=xlsub.UsedRange.Columns.Count

int s
string ls_str=''
for s=1 to ll_excel_column
ls_column_cmnt[s]=string(xlsub.cells[1,s])
if isnull(ls_column_cmnt[s]) then
messagebox("错误","要导入数据的表字段不容许为空")
myole.application.ActiveWorkbook.close(False) //关闭活动工作表
myole.quit() //关闭工作簿
IF IsValid(myole) THEN
DESTROY myole
END IF
IF IsValid(xlsub) THEN
DESTROY xlsub
END IF
setpointer(Arrow!)
return -1
end if
dw_apply.setitem(s,'join_column',ls_column_cmnt[s])
if s <> ll_columncount then
ls_str=ls_str+ls_column_cmnt[s]+"~t"+string(s)+"/"
else
ls_str=ls_str+ls_column_cmnt[s]+"~t"+string(s)
end if
next
...全文
363 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
superzd 2007-05-29
  • 打赏
  • 举报
回复
问题解决了ls_column_cmnt[s]=string(xlsub.cells[1,s])
这里应该是ls_column_cmnt[s]=string(xlsub.cells[1,s].value)
真晕
superzd 2007-05-29
  • 打赏
  • 举报
回复
第一个数据就取不到,如果去掉哪个判断语句,
if isnull(ls_column_cmnt[s]) then
messagebox("错误","要导入数据的表字段不容许为空")
myole.application.ActiveWorkbook.close(False) //关闭活动工作表
myole.quit() //关闭工作簿
IF IsValid(myole) THEN
DESTROY myole
END IF
IF IsValid(xlsub) THEN
DESTROY xlsub
END IF
setpointer(Arrow!)
return -1
end if
则取到的所有值都为空!郁闷啊!
AFIC 2007-05-29
  • 打赏
  • 举报
回复
建议你debug跟一下,缩小一下可能出错的代码范围。
ajyang 2007-05-29
  • 打赏
  • 举报
回复
首先看看你读取出来的第一个字段是否就为空了!
如果不为空最好在语句dw_apply.setitem(s,'join_column',ls_column_cmnt[s])
上面一行增加messagebox("提示",ls_columm_cmnt[s]),看看是否整个for循环都有值,
如果有值,说明dw_apply.setitem(s,'join_column',ls_column_cmnt[s])有问题.
考虑datawindow.accepttext();
superzd 2007-05-29
  • 打赏
  • 举报
回复
这个以前是好的,现在就咋弄也不行了,奇怪啊!
sxg263 2007-05-28
  • 打赏
  • 举报
回复
???
ybkenan 2007-05-28
  • 打赏
  • 举报
回复
全部匯入就用ole_excle.activesheet.cells.copy
superzd 2007-05-28
  • 打赏
  • 举报
回复
没人关心一下啊??
完整清晰版 PDF ,有目录。共 120MB,分为四个分卷 Access 2007 VBA宝典 作者:(美)费德玛(Feddema,H.) 著,张波,陈江红,苏丽译 出版社:人民邮电出版社 出版日期:2008-6-1 ISBN:9787115175984 字数:843000 页数:473 -------------------------------------------------------------------------------- 使用VBA代码链接Office应用程序   同步Access和Outlook联系人   简化任务并提高生产率。   充分利用Access 2007的全部功能   充分利用Access 2007的全部功能   在各个Microsoft Office应用程序之间无缝地传递Access数据,这只是针对初学者。在这本由知名AcceSS专家HeIen Feddema撰写的全新并且全面的指南中。您可以学习编写Vi-sual Basic代码,从而自动执行Access数据库任务、创建独立脚本、提取及合并数据,而且可以将各种强大的解决方案结合起来,从而提高在Office家族成员间工作时的效率。无论您是初学者还是有经验的用户,本书都是您成功驾驭Access 2007 的必备书籍。   ·在Word、Excel和Outlook之间操作并共享Access数据:   ·从Access创建Word文档;   ·编写VBA代码来自动执行数据库任务;   ·创建Access窗体,作为数据交换的控制面板:   ·使用COM和Access加载项添加功能;   ·使用SQL Server数据:   ·使用XML自定义Access 2007功能区。   在各个Microsoft Office应用程序之间无缝地传递Access数据,这只是针对初学者。在这本由知名Access专家Helen Feddema撰写的全新并且全面的指南中,您可以学习编写Visual Basic代码。从而自动执行Access数据库任务、创建独立脚本、提取及合并数据,而且可以将各种强大的解决方案结合起来,从而提高在Office家族成员间工作时的效率。无论您是初学者还是有经验的用户。本书都是您成功驾驭Access 2007的必备书籍。 内容提要 -------------------------------------------------------------------------------- Access是Microsoft公司Office办公套件中的数据库应用程序,而Access VBA是Access的编程语言。利用VBA不仅能够设计常用的小工具、小软件,还能够编写代码,让很多程序共享数据。本书全面介绍了Access VBA的应用。首先介绍各种Office组件及其用途,然后详细介绍了这些组件,以及如何在组件之间共享各种数据;最后介绍了更为高级的主题,包括VB 6.0、Access加载项、Visual Studio 2005共享加载项、使用XML实现自定义Office 2007功能区,以及与SQL Server数据库的交互等。   本书内容丰富,并且在配套网站上提供了书中所有的示例文件和代码,有助于读者通过亲身实践掌握Access VBA的强大功能。本书适合Office的中高级用户以及希望学习Access VBA的人员参考。 目录 -------------------------------------------------------------------------------- 第1部分 Office组件及其最佳用途  第1章 在Access中存储和显示数据   1.1 Office数据交换简史   1.2 在Access中存储数据   1.3 在Access窗体和报中显示数据    1.3.1 创建Access套用信函    1.3.2 在Access中创建工作类型的报   1.4 小结  第2章 从Access中创建Word文档   2.1 使用TypeText.方法为Word文档填充Access数据   2.2 使用Word模板创建格式化的Word文档    2.2.1 书签    2.2.2 文档属性   2.3 窗体域文档   2.4 小结  第3章 使用Excel分析数据   3.1 将Access数据导出到未格式化的工作   3.2 使用Excel模板创建填充了Access数据的格式化工作   3.3 使用VBA代码对Excel工作进行格式化   3.4 小结  第4章 使用Outlook进行组织和通信   4.1 将约会和任务导出到Outlook   4.2 将日记信息导出到Ou

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧