首页 文章

共享Excel宏启用的工作簿 - Excel无法访问文件问题

提问于
浏览
0

What I want to do.

使用工作宏将我启用宏的Excel文档发送给我的同事,该宏打开一个保存文件对话框,然后生成此csv .

What have I done?

我在Excel 2013中创建了一个VBA宏,它在我的机器上运行良好 . 但是,当我将这个启用Macro的excel表发送给我的同事时,他得到:

Microsoft Office Excel无法访问“我的计算机上的文档路径”文件 . 有几个可能的原因:

  • 文件名或路径不存在 .

  • 该文件正被另一个程序使用 .

  • 您尝试保存的工作簿与当前打开的工作簿具有相同的名称

我的来源:

Sub Convert2CSV()
    Dim fileName As String
    fileName = "OrderSedel_" & Format(Now, "yyyy-mm-dd hh mm") & ".csv"

    With Application.FileDialog(msoFileDialogSaveAs)
            .Title = "xxx"
            .AllowMultiSelect = False
            .InitialFileName = fileName
            .FilterIndex = 15
            result = .Show
            If (result <> 0) Then
                ' create file
                fileName = Trim(.SelectedItems.Item(1))
                fnum = FreeFile
                Open fileName For Output As fnum


                ' Write the csv data from form record set
                For i = 7 To ActiveSheet.UsedRange.Rows.Count
                    If ( _
                        (Not Trim(Cells(i, 1).Value & vbNullString) = vbNullString Or _
                        Not Trim(Cells(i, 3).Value & vbNullString) = vbNullString) And _
                        Not Trim(Cells(i, 9).Value & vbNullString) = vbNullString) Then
                            'Check EAN (Trim). If No EAN get Bolist ArtNum
                            If (Trim(Cells(i, 3).Value & vbNullString) = vbNullString) Then
                                Print #fnum, Cells(i, 1).Value & ";" & Cells(i, 9).Value
                                Else
                                Print #fnum, Cells(i, 3).Value & ";" & Cells(i, 9).Value
                                End If
                    End If
                Next i



            ' close file
            Close #fnum
            End If
      End With

End Sub

Screenshot of file xlsm

1 回答

  • 0

    发送它们的代码以插入宏来运行它,看看它们是否得到相同的错误 . 它对我运行正常(除了我定义我的变量) .

    可能是他们的Excel副本没有设置为信任VBA . (在“设置”下 . )

相关问题