在代码结尾用xlBook.SaveAs (filename)把数据保存到生成的excel文件。这时候因为有同名文件,系统会提示是不是覆盖,这时候如果我选择“否”,程序中xlBook.SaveAs (filename)这句代码就会报错,请问有什么解决方法?
多谢!

解决方案 »

  1.   

    这xlBook.SaveAs之前加上on error resume next
      

  2.   

    Dim excelapp As Excel.Application
            Dim excelbook As Excel.Workbook
            Dim excelsheet As Excel.Worksheet
    '    创建Excel工作表
            Set excelapp = CreateObject("Excel.Application")
            Set excelbook = excelapp.Workbooks.Add
            Set excelsheet = excelbook.Worksheets(1)
            
            Savedlg.cancelerror = True
        On Error GoTo cancelerror
            Savedlg.InitDir = App.Path
            Savedlg.Filter = "EXCEL 表格(*.xls)|*.xls"
            Savedlg.ShowSave
    '向表中依次读入数据
        'ReDim str(MfgDW.Cols)
            excelapp.Visible = True '显示
            Dim i, j As Long
                For j = 1 To MfgDW.Cols
                    '设置导出以后的格式为文本
                    excelsheet.Columns.NumberFormatLocal = "@"
                Next j
            
                For i = 0 To MfgDW.Rows - 1
                    For j = 1 To MfgDW.Cols
                        '如何设置导出以后的格式?
                        excelsheet.Cells(i + 1, j) = CStr(MfgDW.TextMatrix(i, j - 1))
                    Next j
                Next i
            'excelapp.Visible = True '显示
    '选择所有格,自动调整列宽后 变为选择 “A1”
      excelapp.Cells.Select
      excelapp.Selection.Columns.AutoFit '自动调整列宽
      excelapp.Range("A1").Select
      excelapp.ActiveWorkbook.SaveAs Savedlg.FileName
    Exit Sub
    cancelerror:
        'MsgBox "取消输出到EXCEL文件!", vbOKOnly + vbInformation, "提示"
        excelbook.Close
        Set excelapp = Nothing
        Err.Clear
    End Sub不会报错吧
    这时我的,EXCEL提示保存为BOOK.XLS,不保存也没错误。
      

  3.   

    有没有不提示保存为book.xls的方法?
      

  4.   

    可以啊,这个save后面还有参数的