我在Sub cmdSelectFile中定义了xlsApp,并打开了一个文件,
我想在Sub cmdStartTest中继续对这个文件操作。
请问相关变量的定义如何做?谢谢!Private Sub cmdSelectFile_Click()
Dim SourceFile, DestinationFile As String
SourceFile = "D:\workshop\VBproject\Template.xls"
cmnDlg1.Filter = ".xls"
cmnDlg1.ShowSave
DestinationFile = cmnDlg1.FileName + ".xls"
FileCopy SourceFile, DestinationFileDim xlsApp As Excel.Application
Set xlsApp = Excel.Application
xlsApp.Visible = True
xlsApp.Workbooks.Open FileName:=DestinationFile
   
End SubPrivate Sub cmdStartTest_Click()
Dim xlssheet As Excel.Worksheet
Set xlssheet = xlsApp.Workbooks.Sheets(KJTX)
xlssheet.Cells(1, 1) = 1End Sub

解决方案 »

  1.   

    你需要把Dim xlsApp As Excel.Application定义成窗体级的变量
      

  2.   

    你可以把Dim xlsApp As Excel.Application定义到外面啊!
    也就是窗口的全局变量Dim xlsApp As Excel.ApplicationPrivate Sub cmdSelectFile_Click()
    Dim SourceFile, DestinationFile As String
    SourceFile = "D:\workshop\VBproject\Template.xls"
    cmnDlg1.Filter = ".xls"
    cmnDlg1.ShowSave
    DestinationFile = cmnDlg1.FileName + ".xls"
    FileCopy SourceFile, DestinationFileSet xlsApp = Excel.Application
    xlsApp.Visible = True
    xlsApp.Workbooks.Open FileName:=DestinationFile
       
    End SubPrivate Sub cmdStartTest_Click()
    Dim xlssheet As Excel.Worksheet
    Set xlssheet = xlsApp.Workbooks.Sheets(KJTX)
    xlssheet.Cells(1, 1) = 1End Sub