Excel 无法在Access/VBA应用程序中正确保存和关闭XLS文件

Excel 无法在Access/VBA应用程序中正确保存和关闭XLS文件,excel,ms-access,vba,Excel,Ms Access,Vba,我是Access和VBA的新手,尝试开发一个简单的代码:将表导出到xls,打开它,简单操作格式化,保存和关闭 但在此过程中,我会收到以下消息框:此位置已存在名为RESUME.XLW的文件。你想更换它吗 选择“是”将生成xls文件。但是当我试图打开它时,Excel以只读模式运行,我不明白为什么 我正在使用以下代码: Sub FormataExcelPadrao(caminhoExcel As String) Set arquivoExcel = CreateObject("Excel.Appli

我是Access和VBA的新手,尝试开发一个简单的代码:将表导出到xls,打开它,简单操作格式化,保存和关闭

但在此过程中,我会收到以下消息框:此位置已存在名为RESUME.XLW的文件。你想更换它吗

选择“是”将生成xls文件。但是当我试图打开它时,Excel以只读模式运行,我不明白为什么

我正在使用以下代码:

Sub FormataExcelPadrao(caminhoExcel As String)

Set arquivoExcel = CreateObject("Excel.Application")
arquivoExcel.Workbooks.Open (caminhoExcel)

With arquivoExcel
    For Each pagina In .Worksheets
        With pagina
            .Columns("A:Z").Autofit
            .Cells.Font.Size = "10"
            .Cells.Font.Name = "Calibri"
        End With
    Next pagina
End With

arquivoExcel.Save
arquivoExcel.Close

End Sub
提前谢谢

替换这个:

 arquivoExcel.Save
与:


请参阅:

定义对象,然后使用它。看这个例子

Sub FormataExcelPadrao(caminhoExcel As String)
    Dim arquivoExcel As Object, wb As Object, pagina As Object

    Set arquivoExcel = CreateObject("Excel.Application")
    Set wb = arquivoExcel.Workbooks.Open(caminhoExcel)

    With wb '<~~ Also this has to be the workbook and not excel app
        For Each pagina In .Worksheets
            With pagina
                .Columns("A:Z").AutoFit
                .Cells.Font.Size = "10"
                .Cells.Font.Name = "Calibri"
            End With
        Next pagina
    End With

    wb.Close SaveChanges:=True
    arquivoExcel.Quit

    Set wb = Nothing
    Set arquivoExcel = Nothing
End Sub

谢谢@TimWilliams Dunno我怎么会错过这个呢。更新!下一次,如果你看到任何这样愚蠢的错误,请随意修改:很好,我的朋友!非常感谢;
Sub FormataExcelPadrao(caminhoExcel As String)
    Dim arquivoExcel As Object, wb As Object, pagina As Object

    Set arquivoExcel = CreateObject("Excel.Application")
    Set wb = arquivoExcel.Workbooks.Open(caminhoExcel)

    With wb '<~~ Also this has to be the workbook and not excel app
        For Each pagina In .Worksheets
            With pagina
                .Columns("A:Z").AutoFit
                .Cells.Font.Size = "10"
                .Cells.Font.Name = "Calibri"
            End With
        Next pagina
    End With

    wb.Close SaveChanges:=True
    arquivoExcel.Quit

    Set wb = Nothing
    Set arquivoExcel = Nothing
End Sub