【VBA】ツイッターAPIを使ってツイートする(外部ソフト無し)

エクセル

ツイッターAPIを使ってエクセルVBAからツイートをする方法を紹介します。

※自動化などをするときはツイッターAPIの規約に従って運用を行ってください。
規約を違反した場合はアカウントロックや凍結されることがあると認識して利用してください。

ここで紹介する方法は外部のソフトやライブラリを使わず、VBA内で処理を完結します。

スポンサーリンク

環境条件

条件として

  • microsoftエクセル(バージョン未検証)
  • ネットにつながった環境
  • ツイッターAPIの認証情報

が必要です。

エクセルはもちろんで、ツイート自体はHTTP通信を使って行われますのでネットにつながった環境も必要です。

「ツイッターAPIの認証情報」はAPI認証情報の取得方法をご覧頂き取得をしてください。

またエクセルのVBE画面で「ツール」⇒「参照設定」からライブラリの読み込みをします。

  • Microsoft XML, v6.0

上記を参照設定でチェックしておきましょう。

シート

簡単にユーザー名と認証情報、ツイートの内容を記載したシートを用意します。

C列に情報を記載しています。

簡単にボタンを設置しています。

ソース

以下はソースです。

標準モジュール

twitter_apiとして

本体は「send_tweet」です。

その他は細かいエンコードや暗号化、変換構築機能です。

処理の流れ的には、

API認証情報でHTTPレスポンスヘッダーを作成して、objRest.sendでツイートを送信します。

ヘッダーを作成するときに暗号化やエンコードをいくつか行いますがここが肝です。

ここで正確なヘッダーを作成しないとエラーになってしまいます。カスタムする時は気をつけましょう。

また、認証情報が誤っていてエラーになるケースも多いので注意しましょう。

コマンドボタン

下記はコマンドボタンのソースです。

ツイート内容を少々加工しています。

ツイート内容はエンコードして送信しますが、一部半角文字でエラーが出るので全角に変換して送信します。

文字数のチェックは入れていませんが文字数がオーバーしているとエラーになるので注意です。エクセルに入力する時点で判定するなどの方がよろしいかもしれません。

 


 

これを利用して自動化やツイート内容の自動生成等が可能になります。

また、画像付きのツイートをしたりすることもできるのですが、少々方法が変わります。

画像付き自動ツイートをご要望の方は当方で販売を行っていますのでご覧いただけると幸いです。

エクセルからツイッターAPIで自動投稿するファイルを販売しています

また、ここでは入っていませんが、フィルターしたツイートを取得する、ツイートを削除するなども実装することが可能です。

こちらはまた違う機会で紹介します。

コメント

タイトルとURLをコピーしました