【VBA】VBAスキルを取得するきっかけと結果について
みなさんこんにちは。
数あるプログラミング言語の中でVBAはかなり限定的な言語であり、最も身近にある言語だと思います。
VBAはMicrosoftに特化した言語でありながら習得スキルとしては優先度が低めに認知されているのも事実かと思います。
かといって、取得しなくても問題ないかと言われるとそうではありません。
そこで、今回はVBAスキルを取得しようと思ったきっかけと、
結果について私自身の経験を基にご紹介したいと思います。
この記事はこんな人におすすめ
この記事はこんな人におすすめです!
- VBAプログラミング:初学者~初級者
- Excelスキル:初級者~上級者
- VBAを学習しようか迷っている人
- VBAの効果をより深く知りたい人
といったところでしょうか。
この記事を読むメリット
この記事を読むメリットは以下のとおりです。
- VBA活用の実態がわかる。
- VBAの必要性が高い現場の実態がわかる。
- VBAの拡張性がわかる。
- VBAでできることの整理ができる
といったところでしょうか。
私自身C、C++、C#、VB、VBA、JavaScriptなど取得してきましたが、
VBAが学習コストも比較的低め(プログラム言語として)で、
現場でもすぐに実践できる手軽さがあると感じています。
VBAを始めたきっかけ
いきなりですが、私自身のキャリアは以下の通りです。
- ソフトウェア開発会社で8年
- 学校職員兼情シス担当として3年
- ITインフラ管理の会社で5年
- ココナラ副業3年
2社目である学校の職員として働いているときに私は、
VBAを本格的に始める決断をしました。
なぜなら、職員のみなさまはVBAの存在と業務効率についてあまり意識をしていなかったからです。
今PCで作業しているのは当たり前の作業で効率化する余地が無く、
自動化できること自体をご存知無い。
そして何より人手不足により、効率化を考える余裕がないというのが現実でした。
学校の事務職員としての現場実態
もちろんフォーマットや過去の資料からの流用によりテンプレートのようなものは存在します。
が、それらを使用して作成する際の現状は、
人間の手作業によるコピペの応酬、ファイル同士の転記や切り貼りの嵐でした。
自動化自体の発想が無いというのもありますが、
そもそも人手不足による時間的制限が発生していることが大きな課題でした。
過去の記事でもざっくりと触れています。
ご興味のある方は是非!!
VBAでできること
VBAでできることはざっくりと以下があります。
- カスタム関数の作成
- ユーザーインターフェースの作成
- ファイル操作
- インターネット操作
- 複数のオフィスアプリケーションの連携
カスタム関数の作成
Excelの標準関数では対応できない複雑な計算や処理を行うための独自の関数を作成できます。
Excelの標準関数を理解する必要がありますが、Excelの持つ力をより拡張することが出来ます。
ユーザーインターフェースの作成
フォームとコントロール: ExcelやWord内にカスタムフォームを作成し、
ユーザーフレンドリーなインターフェースを提供できます。
ボタン、テキストボックス、リストボックスなどを使って、ユーザー入力を受け取ることができます。
表計算ソフトとしての印象が強いExcelですが、VBAを活用することにより
デスクトップアプリを作成することも可能です。
ファイル操作
ここは王道ですが、ファイルの作成、削除、コピー、移動などをVBAを使ってプログラム的に制御できます。
インターネット操作
エクセル操作の自動化のみならず、Webサイト内の情報を取得、操作することも可能です。
- Webスクレイピング: VBAとInternet ExplorerやSeleniumを組み合わせて、Webサイトから情報を取得することができます。
- HTTPリクエスト: インターネット経由でAPIを呼び出し、データを取得したり送信したりすることができます。
複数のオフィスアプリケーションの連携
インターネット操作にも関連して、PC内の既存アプリとの連携も可能です。
- Outlookとの連携: ExcelからOutlookのメールを自動送信したり、メール内容を解析してExcelに取り込むことができます。
- PowerPointのスライド操作: ExcelデータをもとにPowerPointプレゼンテーションを自動生成することが可能です。
VBAを取得したメリット
VBAを取得した際と一番のメリットは、
定常的な作業を自動化することが出来たことです。
先ずは、自分自身の作業範囲だけでも定常的な作業を自動化するツールを作りました。
今はその職場からは離れてしまいましたが、
転職してからもそのツールが活用されていると話に聞くことがあります。
最後に
いかがでしたでしょうか。
業務効率化を実践したいけど、費用面や依頼の手間などを考えると
自分でカスタマイズすることが手っ取り早い職場環境も実は多いかと思います。
VBAについてこれから調べる、これから学習する、これから行動する人にとって少しでもご参考になれば幸いです。
VBEに関する過去の記事について
VBA初学者がVBEをより快適に操作できるように過去の記事でも触れております。
ご興味のある方は是非!!
開発依頼について
ココナラでWebスクレイピング開発サービスを出品しております。
自分で開発をしようと思ったけど、依頼したり、何か聞きたいことがあったりしたら
いつでもお気軽にご相談ください。
また、内容についてご不明点があればメッセージをいただけると幸いです。
Excelにてブラウザ操作自動化ツールを作成します その作業、webスクレイピングを使って自動化しましょう!