簡體   English   中英

Microsoft Excel VBA運行時錯誤5

[英]Microsoft Excel VBA Run Time Error 5

我是Excel VBA的新手。 我正在使用Outlook自動化從Outlook電子郵件正文中獲取數據,生成報告並發送給團隊。 我剛剛開始嘗試從Outlook電子郵件正文中獲取數據並導出到Excel的一些方法。 我嘗試在電子郵件正文中提取特定數據以導出到Excel工作表,似乎我一直在運行運行時錯誤5

vText = Trim(M.SubMatches(1))

例如

Sub GetData()
    Dim folders As Outlook.folders
    Dim folder As Outlook.MAPIFolder
    Dim iRow As Integer
    Dim Pst_Folder_Name As String
    Dim MailboxName As String
    Dim subFolderName As String
    Dim xlSheet As Object
    Dim Reg As Object
    Dim sText As String
    Dim vText As Variant
    Dim M As Object
    Dim M1 As Object

    MailboxName = "nms@gmail.com"

    Pst_Folder_Name = "My Folders"

    subFolderName = "HTD Ticketing System"

    Set folder = Outlook.Session.folders(MailboxName).folders(Pst_Folder_Name).folders(subFolderName)
    If folder = "" Then
        MsgBox "Invalid Data in Input"
        GoTo end_lbl1:
    End If

    Sheets(1).Activate

    For iRow = 1 To folder.Items.Count
        Sheets(1).Cells(iRow, 1).Select

        sText = folder.Items.Item(iRow).Body

        Set Reg = CreateObject("VBScript.RegExp")

        With Reg
            .Pattern = "(http.)"
        End With

        If Reg.Test(sText) Then
            Set M1 = Reg.Execute(sText)
            For Each M In M1
                vText = Trim(M.SubMatches(1))
            Next
        End If

        Sheets(1).Cells(iRow, 2) = vText

        Set M = Nothing
        Set M1 = Nothing
        Set Reg = Nothing
    Next iRow

    end_lbl1:

End Sub

謝謝

Niisa

SubMatches集合為零索引,因此只需更改為:

vText = Trim(M.SubMatches(0))

目前你只會得到第一場比賽,如果你想要他們所需要的全部Reg.Global = True

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM