| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 783 人关注过本帖
标题:[求助]操作EXCEL碰到的怪事。
只看楼主 加入收藏
tang688
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1219
专家分:35
注 册:2004-12-25
结帖率:100%
收藏
 问题点数:0 回复次数:2 
[求助]操作EXCEL碰到的怪事。
我有一段程序:

Private Sub Command7_Click()
Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open(App.Path & "\" & xm & "\工作底稿.xls") '打开已经存在的EXCEL工件簿文件
xlApp.Visible = True '设置EXCEL对象可见(或不可见)
Set xlSheet = xlBook.Worksheets(Label1.Caption) '设置活动工作表
xlSheet.Activate '激活工作表
xlBook.RunAutoMacros (xlAutoOpen) '运行自动开启宏auto_open()
If maxl > 5 Then
For n = 1 To maxl - 5 'maxl-5是需要增加的行数。
xlSheet.Rows(6).Insert '在工作表的第6行处插入一行
xlSheet.Range("A6:D6").Select '选定要合并的行
Application.CutCopyMode = False
With Selection
.HorizontalAlignment = xlGeneral '这一行会报错
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = True
End With
Next
End If
End Sub

这段程序能在我指定的EXCEL工作薄位置增加指定的行数,并能把我指定的格子合并了。
看起来一点问题都没有,但它只能点击一次,也就是说,如果我把EXCEL关闲了,再想打开一次时(点击Command7),它会报.HorizontalAlignment这行的变量或with块的变量未设置。
每次都是这样,就是第一次点一切正常,关闭EXCEL后再点就报这个错,感觉是内存中有什么东东没有清除。
请问高手门,我该什么办?!

另,这段程序也能给初学者一点学习参考价值吧

[此贴子已经被作者于2006-10-20 11:32:31编辑过]

搜索更多相关主题的帖子: EXCEL 怪事 
2006-10-20 11:20
tang688
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1219
专家分:35
注 册:2004-12-25
收藏
得分:0 
已经搞定
Private Sub Command7_Click()
Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open(App.Path & "\" & xm & "\工作底稿.xls") '打开已经存在的EXCEL工件簿文件
xlApp.Visible = True '设置EXCEL对象可见(或不可见)
Set xlSheet = xlBook.Worksheets(Label1.Caption) '设置活动工作表
xlSheet.Activate '激活工作表
xlBook.RunAutoMacros (xlAutoOpen) '运行自动开启宏auto_open()
If maxl > 5 Then
For n = 1 To maxl - 5 'maxl-5是需要增加的行数。
xlSheet.Rows(6).Insert '在工作表的第6行处插入一行
xlSheet.Range("A6:D6").Select '选定要合并的行
Application.CutCopyMode = False
With xlApp.Selection '这一行这样改就什么问题都没了。
.HorizontalAlignment = xlGeneral '这一行会报错
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = True
End With
Next
End If
End Sub

2006-10-20 11:57
电梯浪子
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-10-28
收藏
得分:0 

怎么改变写入字体的颜色??是那个属性??

2006-10-28 16:30
快速回复:[求助]操作EXCEL碰到的怪事。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033089 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved