実行時エラー70アクセス許可がExcelVBAを拒否しました

ネオセガウク

メールをフォルダに移動し、一意のIDを追加し、スプレッドシートに入れて、重複を上書きしないコードをいくつか作成しました。

これは私が作成したときに機能し、実行時エラー70アクセス許可が拒否されました。コードを調べていて、これがどこで、なぜ起こっているのか理解できません。

私が欠けているものを見ることができますか?

Option Explicit
Const fPath As String = "C:\Users\Emails" 'The path to save the messages

Sub Download_Outlook_Mail_To_Excel()
Dim olApp As Object
Dim olFolder As Object
Dim olNS As Object
Dim xlBook As Workbook
Dim xlSheet As Worksheet
Dim NextRow As Long
Dim i As Long
Dim olItem As Object
    Set xlBook = Workbooks.Add
    Set xlSheet = xlBook.Sheets(1)
    On Error Resume Next
    Set olApp = GetObject(, "Outlook.Application")
    If Err <> 0 Then
        Set olApp = CreateObject("Outlook.Application")
    End If
    On Error GoTo 0
    With xlSheet
        .Cells(1, 1) = "Sender"
        .Cells(1, 2) = "Subject"
        .Cells(1, 3) = "Date"
        '.Cells(1, 4) = "Size"
        .Cells(1, 5) = "EmailID"
        .Cells(1, 6) = "Body"
        CreateFolders fPath
        Set olNS = olApp.GetNamespace("MAPI")
        Set olFolder = olNS.PickFolder
        For Each olItem In olFolder.Items
            NextRow = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
            If olItem.Class = 43 Then
                .Cells(NextRow, 1) = olItem.Sender
                .Cells(NextRow, 2) = olItem.Subject
                .Cells(NextRow, 3) = olItem.SentOn
                '.Cells(NextRow, 4) =
                .Cells(NextRow, 5) = SaveMessage(olItem)
                .Cells(NextRow, 6) = olItem.Body
            End If
        Next olItem
    End With
     MsgBox "Outlook Mails Extracted to Excel"
lbl_Exit:
    Set olApp = Nothing
    Set olFolder = Nothing
    Set olItem = Nothing
    Set xlBook = Nothing
    Set xlSheet = Nothing
    Exit Sub
End Sub

Function SaveMessage(olItem As Object) As String
Dim Fname As String
    Fname = Format(olItem.ReceivedTime, "yyyymmdd") & Chr(32) & _
            Format(olItem.ReceivedTime, "HH.MM") & Chr(32) & olItem.SenderName & " - " & olItem.Subject
    Fname = Replace(Fname, Chr(58) & Chr(41), "")
    Fname = Replace(Fname, Chr(58) & Chr(40), "")
    Fname = Replace(Fname, Chr(34), "-")
    Fname = Replace(Fname, Chr(42), "-")
    Fname = Replace(Fname, Chr(47), "-")
    Fname = Replace(Fname, Chr(58), "-")
    Fname = Replace(Fname, Chr(60), "-")
    Fname = Replace(Fname, Chr(62), "-")
    Fname = Replace(Fname, Chr(63), "-")
    Fname = Replace(Fname, Chr(124), "-")
    SaveMessage = SaveUnique(olItem, fPath, Fname)
lbl_Exit:
    Exit Function
End Function

Private Function SaveUnique(oItem As Object, _
                            strPath As String, _
                            strFileName As String) As String
Dim lngF As Long
Dim lngName As Long
    lngF = 1
    lngName = Len(strFileName)
    Do While FileExists(strPath & strFileName & ".msg") = True
        strFileName = Left(strFileName, lngName) & "(" & lngF & ")"
        lngF = lngF + 1
    Loop
    oItem.SaveAs strPath & strFileName & ".msg"
    SaveUnique = strPath & strFileName & ".msg"
lbl_Exit:
    Exit Function
End Function

Private Sub CreateFolders(strPath As String)
Dim strTempPath As String
Dim iPath As Long
Dim vPath As Variant
    vPath = Split(strPath, "\")
    strPath = vPath(0) & "\"
    For iPath = 1 To UBound(vPath)
        strPath = strPath & vPath(iPath) & "\"
        If Not FolderExists(strPath) Then MkDir strPath
    Next iPath
End Sub

Private Function FolderExists(ByVal PathName As String) As Boolean
   Dim nAttr As Long
   On Error GoTo NoFolder
   nAttr = GetAttr(PathName)
   If (nAttr And vbDirectory) = vbDirectory Then
      FolderExists = True
   End If
NoFolder:
End Function

Private Function FileExists(filespec) As Boolean
Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    If fso.FileExists(filespec) Then
        FileExists = True
    Else
        FileExists = False
    End If
lbl_Exit:
    Exit Function
End Function
ネオセガウク

この問題は解決されました。これは、メールが保存するフォルダが特別な権限を持っていることが原因でした。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

MS Access VBAエラー:実行時エラー「70」のアクセス許可が拒否されました

分類Dev

'unlink'、関数[exec]の実行時にアクセス許可がエラーを拒否しました

分類Dev

ヘッダー付きの複数列リストボックスの作成-実行時エラー「70」のアクセス許可が拒否されました

分類Dev

Azure WebAppLinux-node.jsExpressアプリの実行時にアクセス許可が拒否されましたエラー

分類Dev

コンテナーの実行時にアクセス許可が拒否されました(docker 1.12.5)

分類Dev

rsyncエラーのアクセス許可が拒否されました

分類Dev

実行時にアクセス許可を要求した後でも「アクセス拒否」エラーを解決する方法

分類Dev

Linuxエラーメッセージ:すべてのアクセス許可を付与した後、アクセス許可が拒否されました

分類Dev

実行時のSymfonyWebpackアンコールエラー。アンコール:許可が拒否されました

分類Dev

.shスクリプトの実行時にアクセス許可が拒否されました

分類Dev

.shスクリプトの実行時にアクセス許可が拒否されました

分類Dev

実行エラー-許可が拒否されました

分類Dev

Windows7のアクセス許可がエラーを拒否しました

分類Dev

Errno 13virtualenvの実行時にアクセス許可が拒否されました

分類Dev

shファイルの実行時にアクセス許可が拒否されました

分類Dev

エラーの修正方法:mkdir():composerの実行時にアクセスが拒否されました

分類Dev

Railsコンソールのアクセス許可が拒否されました@rb_sysopenエラー

分類Dev

mysql-workbench:エラーログのアクセス許可が拒否されました

分類Dev

dockerの実行時にmongoでアクセス許可エラーが発生しました

分類Dev

setup.pyを実行できません(エラー5-アクセスが拒否されました)

分類Dev

Google API 実行可能ファイルのアクセス許可が拒否されたエラー

分類Dev

Firestoreクエリのアクセス許可が拒否されました

分類Dev

スクリプトの実行中にアクセス許可が拒否されました

分類Dev

スクリプトの実行中にアクセス許可が拒否されました

分類Dev

スクリプトの実行中にアクセス許可が拒否されました

分類Dev

htop の実行時に「エラー: ファイル /etc/sensors3.conf: 許可が拒否されました」

分類Dev

実行中に自己解凍型インストーラーのアクセス許可が拒否されました

分類Dev

MySQLWorkbench:「アクセスが拒否されました。データベースのアクセス許可が必要です」エラーが発生します

分類Dev

Firebaseアクセス許可が拒否されました

Related 関連記事

  1. 1

    MS Access VBAエラー:実行時エラー「70」のアクセス許可が拒否されました

  2. 2

    'unlink'、関数[exec]の実行時にアクセス許可がエラーを拒否しました

  3. 3

    ヘッダー付きの複数列リストボックスの作成-実行時エラー「70」のアクセス許可が拒否されました

  4. 4

    Azure WebAppLinux-node.jsExpressアプリの実行時にアクセス許可が拒否されましたエラー

  5. 5

    コンテナーの実行時にアクセス許可が拒否されました(docker 1.12.5)

  6. 6

    rsyncエラーのアクセス許可が拒否されました

  7. 7

    実行時にアクセス許可を要求した後でも「アクセス拒否」エラーを解決する方法

  8. 8

    Linuxエラーメッセージ:すべてのアクセス許可を付与した後、アクセス許可が拒否されました

  9. 9

    実行時のSymfonyWebpackアンコールエラー。アンコール:許可が拒否されました

  10. 10

    .shスクリプトの実行時にアクセス許可が拒否されました

  11. 11

    .shスクリプトの実行時にアクセス許可が拒否されました

  12. 12

    実行エラー-許可が拒否されました

  13. 13

    Windows7のアクセス許可がエラーを拒否しました

  14. 14

    Errno 13virtualenvの実行時にアクセス許可が拒否されました

  15. 15

    shファイルの実行時にアクセス許可が拒否されました

  16. 16

    エラーの修正方法:mkdir():composerの実行時にアクセスが拒否されました

  17. 17

    Railsコンソールのアクセス許可が拒否されました@rb_sysopenエラー

  18. 18

    mysql-workbench:エラーログのアクセス許可が拒否されました

  19. 19

    dockerの実行時にmongoでアクセス許可エラーが発生しました

  20. 20

    setup.pyを実行できません(エラー5-アクセスが拒否されました)

  21. 21

    Google API 実行可能ファイルのアクセス許可が拒否されたエラー

  22. 22

    Firestoreクエリのアクセス許可が拒否されました

  23. 23

    スクリプトの実行中にアクセス許可が拒否されました

  24. 24

    スクリプトの実行中にアクセス許可が拒否されました

  25. 25

    スクリプトの実行中にアクセス許可が拒否されました

  26. 26

    htop の実行時に「エラー: ファイル /etc/sensors3.conf: 許可が拒否されました」

  27. 27

    実行中に自己解凍型インストーラーのアクセス許可が拒否されました

  28. 28

    MySQLWorkbench:「アクセスが拒否されました。データベースのアクセス許可が必要です」エラーが発生します

  29. 29

    Firebaseアクセス許可が拒否されました

ホットタグ

アーカイブ