0

Excel 2007 プロジェクトにこの VBA サブがあります。Sharepoint サイトの .txt ファイルに、ユーザー名、レポート名、日付、およびバージョンを記録します。一部のユーザーがRun-Time error'76' Path not found問題を抱えています。

これが私のコードです:

Sub logReport(ReportName As String)

    Call AppendTxt("//myaviall/teamsites/AviallReportingSolutions/Airplane_Usage_Log/Airplane_ACT.txt", UNameWindows & ";" & ReportName & ";" & Now & ";" & VersionNum)

    Dim oFS, TS, FileObj

    'Get text stream
    'Set oFS = CreateObject("Scripting.FileSystemObject")
    'Set FileObj = oFS.GetFile("//myaviall/teamsites/AviallReportingSolutions/Airplane_Usage_Log/Airplane_ACT.txt")
    'Set TS = FileObj.OpenAsTextStream(8, -2) 'ForWriting, TristateUseDefault)

    ' Write to file

    'TS.WriteLine UNameWindows & ";" & ReportName & ";" & Now & ";" & VersionNum
    'TS.Close

    'Set TS = Nothing
    'Set FileObj = Nothing
    'Set oFS = Nothing

End Sub

Function AppendTxt(sFile As String, sText As String)
On Error GoTo Err_Handler
    Dim FileNumber As Integer
 
    FileNumber = FreeFile                   ' Get unused file number
    Open sFile For Append As #FileNumber    ' Connect to the file
    Print #FileNumber, sText                ' Append our string
    Close #FileNumber                       ' Close the file

Exit_Err_Handler:
    Exit Function
 
Err_Handler:
    MsgBox "The following error has occured" & vbCrLf & vbCrLf & _
           "Error Number: " & Err.Number & vbCrLf & _
           "Error Source: AppendTxt" & vbCrLf & _
           "Error Description: " & Err.Description, vbCritical, "An Error has Occured!"
    GoTo Exit_Err_Handler
End Function
4

1 に答える 1

0

スコットが指摘するように、問題を抱えているユーザーが1人だけの場合、私が最初に問題にアクセスすることを検討します。

ここのコードに基づいて、Outlookからcsvファイルに行を書き込む非常によく似た手順を実行します http://www.devhut.net/2011/06/06/vba-append-text-to-a-text-file //

これはおそらくあなたの答えではありませんが、アクセスに問題がなければ、別の方法を試してみても問題はありません。

アップデート

また、ファイルが存在するかどうかをテストするために、これをコードに含めます

exists = Dir$(sFile) <> fileName

ここで、fileName = "Airplane_ACT.txt"しかし、msgBoxを使用してこれを試して、何が返されるかを確認します。

また、文字列をAirplane_ACT_test.txtに変更してコードを実行してみてください。これにより、新しいtxtファイルが作成されます。この場合、問題は最初のtxtファイルに関連している可能性があります。

最後に、別のパスを試してください。例:ユーザーのデスクトップへ。

于 2012-12-14T10:27:47.400 に答える