求高手指点,调用子程序,向已有的excel添加数据,为什么会出现对象‘cells’的方法‘—worksheet’失败
时间:2011-07-29
来源:互联网
[size=24px]子程序为:
Set xlapp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlbook = xlapp.Workbooks.Open("C:\Documents and Settings\Administrator\桌面\逆温层\20000107.xls") '打开已经存在的test.xls工件簿文件
xlapp.Visible = True '设置EXCEL对象可见(或不可见)
Set xlsheet = xlbook.Worksheets(1) '设置活动工作表''
Dim q%
Workbooks.Open ("C:\Documents and Settings\Administrator\桌面\逆温层\20000107.xls ")
With ActiveSheet
q = .UsedRange.Rows.Count '行数
End With
Close #1
'检测txt文件内有多少条记录
Open Txtwenj.Text For Input As #1
m = 0
While Not EOF(1)
Input #1, a
m = m + 1
Wend[/size] Close #1
Open Txtwenj.Text For Input As #1
For n = 1 To m
Line Input #1, a
m1 = n
If m1 = 1 Then
If Mid(a, 3, 1) = 0 Then
a1 = Mid(a, 4, 1)
xlsheet.Cells(q, 1) = a1
Else
a1 = Mid(a, 3, 2)
xlsheet.Cells(q, 1) = a1
End If
Set xlapp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlbook = xlapp.Workbooks.Open("C:\Documents and Settings\Administrator\桌面\逆温层\20000107.xls") '打开已经存在的test.xls工件簿文件
xlapp.Visible = True '设置EXCEL对象可见(或不可见)
Set xlsheet = xlbook.Worksheets(1) '设置活动工作表''
Dim q%
Workbooks.Open ("C:\Documents and Settings\Administrator\桌面\逆温层\20000107.xls ")
With ActiveSheet
q = .UsedRange.Rows.Count '行数
End With
Close #1
'检测txt文件内有多少条记录
Open Txtwenj.Text For Input As #1
m = 0
While Not EOF(1)
Input #1, a
m = m + 1
Wend[/size] Close #1
Open Txtwenj.Text For Input As #1
For n = 1 To m
Line Input #1, a
m1 = n
If m1 = 1 Then
If Mid(a, 3, 1) = 0 Then
a1 = Mid(a, 4, 1)
xlsheet.Cells(q, 1) = a1
Else
a1 = Mid(a, 3, 2)
xlsheet.Cells(q, 1) = a1
End If
作者: wang_yiye 发布时间: 2011-07-29
把Dim q%
Workbooks.Open ("C:\Documents and Settings\Administrator\桌面\逆温层\20000107.xls ")
With ActiveSheet
中间的workbooks.open这一句注释掉,你已经打开了,不需要重复打开
这样就解决了你的cells的方法worksheet失败问题
但是,你的代码还有问题
While Not EOF(1)
Input #1, a
m = m + 1
Wend[/size] Close #1
Open Txtwenj.Text For Input As #1
For n = 1 To m
Line Input #1, a
m1 = n
你的m在第一个循环中记录文件行数为m,但是这个m的值为文件总行数+1
第二个循环for n=1 to m 将会越界.
Workbooks.Open ("C:\Documents and Settings\Administrator\桌面\逆温层\20000107.xls ")
With ActiveSheet
中间的workbooks.open这一句注释掉,你已经打开了,不需要重复打开
这样就解决了你的cells的方法worksheet失败问题
但是,你的代码还有问题
While Not EOF(1)
Input #1, a
m = m + 1
Wend[/size] Close #1
Open Txtwenj.Text For Input As #1
For n = 1 To m
Line Input #1, a
m1 = n
你的m在第一个循环中记录文件行数为m,但是这个m的值为文件总行数+1
第二个循环for n=1 to m 将会越界.
作者: xiaolinyouni 发布时间: 2011-07-29
非常感谢指出了程序运行的错误,
我刚注册,不知道有没有分值可以赠送给您,还请以后多多赐教
我刚注册,不知道有没有分值可以赠送给您,还请以后多多赐教
作者: wang_yiye 发布时间: 2011-07-29
我去..页面上这不是有"管理菜单" "结贴" "发帖" "回复"..你点结贴就能给分
-----------------------------
女子女子穴习,二人二人向下
-----------------------------
女子女子穴习,二人二人向下
作者: xiaolinyouni 发布时间: 2011-07-29
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28