【VBA】LINEへメッセージを送信する

VBAから
 ・LINEへメッセージを送信
できます!

この記事では
 ・「グループ」へメッセージを送信する方法
を記載します。

VBAコード自体は
非常にシンプルです!

ただ「準備」が少し面倒かもです…。
※少しだけです。

PR

準備①(LINEのグループを作成)

ここでは
 ・メッセージ送信先となるグループとして「テストグループ」を新規作成
します。
※グループの作成方法は割愛します。

新規作成したグループ「テストグループ」
新規作成したグループ「テストグループ」

新規作成するのではなく、既存のグループを使用しても問題ありません。

PR

準備②(LINE Notifyを友だち追加)

以下のURLへアクセスし、QRコードを利用して「LINE Notify」を友だちに追加します。

「友だち追加画面」の「QRコード」をタップすると、QRコード読み取り画面を表示できます。

QRコードの読み取り
QRコードの読み取り


追加すると「LINE Notify」から以下のメッセージが届きます。
※メッセージが届いたら無事に追加できたということです

「LINE Notify」から届いたメッセージ
「LINE Notify」から届いたメッセージ
PR

準備③(グループへLINE Notifyを追加)

メッセージ送信先となるグループに
 ・上記で友だちに追加した「LINE Notify」を追加
します。
※ここでは上記で作成したグループ「テストグループ」に追加します。
※追加方法は割愛します。

グループに「LINE Notify」を追加した
グループに「LINE Notify」を追加した
PR

準備④(LINEにメアドとパスワードを設定)

公式サイト「LINE Notify」にログインできるようにするために、LINEに
 ・メールアドレス
 ・パスワード
 ・ログインを「許可」
を設定します。
※設定方法は割愛します。

メールアドレスとパスワードを追加
メールアドレスとパスワードを追加
ログインを「許可」
ログインを「許可」
PR

準備⑤(公式サイト「LINE Notify」へログイン)

公式サイト「LINE Notify」へログインします。

公式サイト「LINE Notify」
公式サイト「LINE Notify」


初めてのログインの場合は、本人確認を求められます。

本人確認①
本人確認①
本人確認②
本人確認②
本人確認③
本人確認③
PR

準備⑥(トークンを発行)

「トークン」を発行します。
「トークン」はVBAコードで使用します。

「マイページ」にある「トークンを発行する」をクリックします。

「トークン」の発行①
「トークン」の発行①


表示されたページで
 ・任意で「トークン名」を設定 ※ここでは「Excel/VBA実践ガイド」と設定します。
 ・メッセージ送信先となるグループを選択
 ・「発行する」をクリック
します。

「トークン」の発行②
「トークン」の発行②
「トークン」の発行③
「トークン」の発行③

「グループ」ではなく「自分」へメッセージを送信する場合は
 ・「1:1でLINE Notifyから通知を受け取る」
を選択します。

「自分」へメッセージを送信する場合
「自分」へメッセージを送信する場合
PR

VBAコード

ここでは例として
 ・上記で発行した「トークン」を使用して
 ・LINEへメッセージを送信
します。

Option Explicit

Sub sample()
    
    Dim token As String
    Dim url As String
    Dim messege As String
    Dim httpReq As Object
    
    '発行したトークンを設定
    token = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    '「LINE Notify」のURLを設定
    url = "https://notify-api.line.me/api/notify"
    'LINEへ送信するメッセージを設定
    messege = "VBAから送信しました"
    
    '「WinHttpRequestオブジェクト」を取得
    Set httpReq = CreateObject("WinHttp.WinHttpRequest.5.1")
    
    'HTTPリクエストを送信
    httpReq.Open "POST", url, False
    httpReq.setRequestHeader "Authorization", "Bearer " & token
    httpReq.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    httpReq.send "message=" & messege
    
    '後片づけ
    Set httpReq = Nothing
    
End Sub

「トークン」を設定します(11行目)。
※上記の手順で発行した「トークン」を指定してください。
※上記では仮で「XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX」としています。

「LINE NotifyのURL」を設定します(13行目)。

送信するメッセージを設定します(15行目)。
※送信したいメッセージを指定してください。

「WinHttpRequestオブジェクト」を取得します(18行目)。

HTTPリクエストを送信します(21~24行目)。
※コードの詳細は気にしなくてよいです。お約束の記述です。

PR

実行結果

LINEへメッセージを送信できました。
※グループへ追加した「LINE Notify」からメッセージが届きます。

実行結果
実行結果
PR

参考①

上記で使用した以下の詳細は、公式サイトをご確認ください。

「WinhttpRequestオブジェクト」の「Open」メソッド


●「WinhttpRequestオブジェクト」の「Send」メソッド

PR

参考②

PowerShellでもLINEへメッセージを送信できます。

詳細は以下の記事をご確認ください。

PR

参考③

バッチファイルでもLINEへメッセージを送信できます。

詳細は以下の記事をご確認ください。