Uncategorized

VBAまとめ

こんにちはhokkyokunです。

VBAについての記事まとめです。
色々と関数を開発したり、しくみを解説してきたので
それをとりまとめます。

配列

配列はプログラミングの基本技術です。
が、VBAはかなり不親切な作りになっており、
これがVBAが使いずらいといわれる要因の一つに感じます。

配列に関する記事を取りまとめました。

配列に関する解説

先ずは配列に関する解説です。

VBA配列は癖が強く、慣れないとエラーが生じやすいので

便利さに気づく前に嫌になって使わなかったり、
ディクショナリーオブジェクトやコレクションオブジェクトに
逃げたりしがちです。

それではもったいないので
投げ出す前に一度記事を見ていただければと思います!

配列に関する解説

配列を便利にする関数群

VBA配列は要素を追加するだけでも一苦労です。
空の配列を操作するだけでも平気でエラーが発生します。

他のプログラミング言語のような便利な関数があまりにも少ないので
自作しました。

自分で言うのもなんですが、
何かのプログラムを作る際に
これらを使うのと使わないのとでは作業効率やコード量が全然変わってきます。

だまされたと思って一度見てみてください。

配列を便利にする関数

実務で活用できる関数

私が実務で使用してきたプログラム群です。

事務系の仕事を長年やってきて
他部門からも依頼があった中で作成してきたものです。

基礎的プログラム

 

カレンダー、日付操作

事務系・営業系の仕事をしていると
月末月初や第○○営業日などの日付操作をする必要が出てきます。

これらについての処理を便利にする関数です。

アウトルック・メール操作

メールやカレンダーの自動操作ができるようになると
かなりたいていの仕事は効率化できるのではないでしょうか。

Dictionary(辞書)操作

VBAの辞書はめちゃくちゃ強力な武器です。

これを知っているか知らないかで

  • できる範囲、
  • 回避できるエラー、
  • コード量
    全然変わります!

少なくともユニークリスト(重複のない一意のリスト)作りには
Dictionaryオブジェクトを使ってください。

フィルタリング操作(データの抽出)

データを抽出する操作です。
実務では必ず何らかの条件でデータを絞りこんでいると思います。

ファイル操作

事務処理をしていると以下のような操作を必要とすることがあります。

  • フォルダ作成・削除
  • ダイアログを出して、ファイルを人に選んでもらう

これらに対応するための解説です。

テーブル操作

テーブルは使っていますか?

使ったことがないのはもったいない!
特にVBA使いの方は使ってみてください。
コード量も減りますし、簡単に表の列や行の追加に対応できます。

スクレイピング(インターネット操作)

インターネットの自動操作ができれば
業務の対応範囲は格段に広がります。

ただ、VBAでの自動操作はあまりおすすめしません。

Pythonなどの多言語であれば
優秀なエンジニアがモジュール(プログラム群)を作ってくれていますが、

VBAの場合はあまりありません。
一部seleniumの操作などで操作ができますが
定期的なメンテナンスが必要で使用感としてはいまいちです。

そこに労力をかけるのであれば
Pythonなどを使って優秀な方々が作ったプログラムを
使っていった方が本業の効率化が早く、確実だと思います。