質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

3回答

4648閲覧

エクセルを用いた自動ツイートに必須なもの

prof

総合スコア179

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

1グッド

0クリップ

投稿2020/03/14 04:01

趣味でブログをやっており、ツイッターを活用するときが増えてきました。

記事紹介をする際、もしろん最新記事の更新は自分の手ですぐできます。
ただ、過去記事紹介を行うのが自分では面倒に感じます。

最近、プロゲートでWeb系のプログラミングの学習(Ruby PHP Python)を終えたレベルです。
プログラミングの情報収集をしていたら、エクセルのマクロという存在に気づきました。

「ツイッターを自動化できるかもしれないな」と思い調べていたのですが、有益なサイトがほとんど無いため困っています。

必須なことが全然わからないので教えてほしいです。
マクロの基礎学習はしていきます。ツイッターのAPIが必要なのもわかっています。

他にどういった学習を進めていけばよいのか、教えてほしいです。

理想形

  • リストエクセルにツイート文章、時刻、画像ファイルを打ち込むと実行される。
  • リストもちろん、毎週何曜日だとか、乱数でランダムに記事を紹介していく。
  • リスト自分でハッシュタグやパンくずリストのような単語も登録することで、ツイッター上で急上昇しているワードに関係する記事の自動ツイートができる。

などです。

s.k👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/03/14 04:05

- リスト ↑どのマークダウンもそうですけど、「ここを自分の文章に書き換えてね」という意味で選択状態になってます。残す必要はありません。
m.ts10806

2020/03/14 04:07

それに、「紹介」ってどこにどのようにするつもりなのでしょう。 ExcelマクロでやったらExcel開いてる当人にしかできませんけど、マクロ自体を配布するということでしょうか? 意図が分かりません。 質問本文編集して追記してください。
guest

回答3

0

せっかくPythonを覚えたのだからPythonで作ってみたらどうですか?
データなどはCSV読み込みとかにしたらよいのでは?

仕事をされているのであればVBAを覚えるのはすごく有益なので
VBAを覚えたい為に今回のプログラムを作成したいのであれば
いきなり高度過ぎるのでオススメできないです。

投稿2020/03/14 04:33

編集2020/03/14 04:36
AMK

総合スコア765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

prof

2020/03/14 05:20

回答ありがとうございます。 大学生で情報系です。いまは仕事をしていないのでVBAを覚えても、将来使うかはわからないですね。 Pythonでやる方法調べてみたいと思います。CSVもPythonについて調べたとき聞いたことがあるので、詳しくググって見ます。 ありがとうございます。
AMK

2020/03/14 05:29

Python を覚えておけば、これからAIが進出してくるので AIで使われているのもPythonなので、すごく有利です。 色々やらずに1つのプログラムを極めた方がいいです 極めてからならほかのプログラムを覚えるのは、比較対象の プログラム言語があるので、そんなにしんどくないと思いますよ
guest

0

まず、Excelを離れ、Googleスプレッドシートを利用することをおすすめします。
Googleスプレッドシートには、Excelでいうマクロに相当するGoogle App Script (GAS)と呼ばれる機能があります。

理由は2つあります。

  1. 自動ツイートの処理は定期実行したいですよね。Excelのマクロはローカルで動きます。つまりあなたのPCの電源をONにしている間しか動かず、定期実行のためにはPCをずっと起動しておく必要があります。クラウド上で動くGASを使うほうが良いでしょう。
  2. EXCELのマクロはVBAというVBをベースにした言語を使います。一方でGASはJavaScriptをベースにした言語を使います。VBは非常にレガシーで、書きづらく、「使いたくない言語ランキング」上位の常連です。一方でJSは現在でも非常に人気があり、他にもたくさんの用途があります。JSを学ぶほうが今後のためにもよいでしょう。

GASを利用した処理の定期実行についてはこのような記事が参考になります。
【Google Apps Script】その8 スクリプトを定期実行し、ビットコインの1分ごとの価格を自動取得する

まずはGASを使う方向で考えてみてください。

投稿2020/03/14 04:26

takeaship

総合スコア129

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

prof

2020/03/14 04:33

回答、本当にありがとうございます。 ローカルでしか実行されないのですね。知らなかったので助かりました。 書き忘れていましたが、今メインで学習しているのはjavascriptでした。それをもとにした言語と言うならやる気も出てきました。 参考記事も読ませていただきます。
takeaship

2020/03/14 04:41

もう一つ、重要な理由がありました。 ExcelはExcel内で完結する処理のために作られているので、他サービスとの連携に向いておらず、そのための情報も乏しいと思います。 Googleスプレッドシートは他サービスとの連携がやりやすく、情報量も桁違いでしょう。先ほど紹介した記事もその一つですね。 うまくいくことを願っています!
prof

2020/03/14 05:21

たしかに連携させるのはスプレッドシートでやると聞いたことがあります。お問合せフォームにきた情報をスプレッドシートに入力させているのも知っていました。 ご丁寧にありがとうございます。
guest

0

ベストアンサー

ブログ、がどういったものか分かりませんが、例えばWordPressだったら過去記事を自動ツイートするプラグインがありますし、そもそもTwitterのBot作成サービスなんていくらでも存在します。

過去記事紹介を行うのが自分では面倒

という理由なら、何もツールを自作する必要はないように思います。

プログラミングの練習として自分で組んでみたいということであれば、学習されているRuby、PHP、Pythonあたりならどれでも実現可能でしょう(もちろん自動実行できる環境は必要)し、ネットで探せばいくらでも作例が出てきます。
特に理由がないのであれば、あえてVBAを使う必要もないでしょう。

投稿2020/03/14 04:49

Takumiboo

総合スコア2534

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

prof

2020/03/14 05:18

回答ありがとうございます。 勝手なイメージですが、エクセルだとデータ管理がカンタンに思えたからです。 自動実行できる環境というのは、ツイッター画面のhtmlなどから自動クリックを行わせることでしょうか?
Takumiboo

2020/03/14 05:49

管理の便利さを取って開発の面倒くささを取るかどうか出はないでしょうか。 そもそもプログラムにやらせるのであれば、現在投稿済みの記事のうち1ヶ月以上前に投稿されたものをランダムでツイート、なども出来ますし、記事のリストを別で持つメリットがあるかどうかというのもありますね。 「ツイッター画面のhtmlなどから自動クリックを行わせる」というのが何を指しているのか分かりませんが、例えば自分のPCでもどこかのサーバでも、Ruby、PHP、Pythonのプログラムを走らせっぱなしにして定時でツイートするということは一般的ではなく、時間に応じてプログラムを起動させるようにします。Windowsならタスクスケジューラ、Linux系だとcronなどと呼ばれる仕組みです。これらのことを「自動実行できる環境」と書きました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問