Line Bot-2021 結合Excel VBA 製作各種通知機器人

註冊 LINE 機器人網址

取得連線 Channel access token

  • 步驟1:進到控制台
  • 步驟2:選擇建立的機器人
  • 步驟3:選擇Messaging API
  • 步驟4:拉到底看到Channel access token
  • 步驟5:點選後方Reissue

取得UserID

  • 步驟1:進到控制台
  • 步驟2:選擇建立的機器人
  • 步驟3:選擇Basic settings
  • 步驟4:拉到底看到UserID

將LINE機器人加為好友

  • 步驟1:進到控制台
  • 步驟2:選擇建立的機器人
  • 步驟3:選擇Messaging API
  • 步驟4:往下拉至Bot information

製作【E-VBA】通知程式

Sub 斷線通知()

'line bot 引用
Dim myXML As Object
Set myXML = CreateObject("winHttp.winHttpRequest.5.1")


'取得資料列數
For i = 2 To Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row

    '取得檔案修改時間
    With ThisWorkbook.Sheets("偵測程式運作")
        Path = .Range("A" & i) '檔案路徑
        uname = .Range("B" & i) '檔案名稱
        filepath = Path & uname
        fdt = FileDateTime(filepath)

      If fdt = .Range("C" & i) Then

            通知訊息 = .Range("D" & i)
            機器號 = .Range("E" & i)
            機器名稱 = .Range("F" & i)

            If sendMsg = "" Then
                sendMsg = 通知訊息 & "|" & 機器號 & "|" & 機器名稱
            Else
                sendMsg = sendMsg & "\n" & 通知訊息 & "|" & 機器號 & "|" & 機器名稱
            End If

        Else

        End If

        .Range("C" & i) = fdt
    End With

Next
If sendMsg = "" Then Exit Sub

'==========發送訊息

channelAccessToken = ""
UserID = ""
'---人員1
With myXML
    .Open "POST", "https://api.line.me/v2/bot/message/push", False
    .SetRequestHeader "Content-Type", "application/json"
    .SetRequestHeader "Authorization", "Bearer " & channelAccessToken
    payLoad = "{""to"":""" & UserID & """, ""messages"":[{""type"":""text"",""text"":""" & "斷線通知:\n" & sendMsg & """}]}}"

    .send payLoad
End With

Set myXML = Nothing
End Sub

成果

發表評論

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

18 − 十二 =

購物車