[求助]操作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编辑过]