えくせるちゅんちゅん

ことりがエクセルをちゅんちゅんするブログ

MENU

VBA開発支援

VBA開発における開発を支援するための基礎知識から応用知識まで。 環境構築やテクニックをご紹介。

ExcelVBAはどのようにプロシージャを分割すると良いのか(前編)

概要 私がVBAでプログラミングをするときは、プロシージャを3つの階層に分けて作るように意識している。 今回は私のプロシージャ分割の考え方を紹介する。 本記事では自分が説明しやすいようにプロシージャを次の2種類に分けて表記する。 マクロ・・・ユーザ…

WinAPIの64bit化で出てくるPtrSafe、LongLong、LongPtrってなんなのさ?

Office VBA の WinAPIを64bitに対応しようとした時に絶対に覚えなくてはならないのがLongPtrである。 Declare文の64bit対応に関しては以前次のような記事を書いたが、LongPtrの置き換えの考え方に関しては説明を省略していた。 今回は64bit対応のためにPtrSa…

快適なExcelライフを送るために必要な環境構築(開発者編)

前回から続きまして、筆者ことりちゅんが、快適にExcelライフを送るのに欠かせない環境構築の全貌をお見せします。 今回は開発者向けの設定を紹介していきます。従ってVBEの設定もします。 前編はこちら 概要 開発タブを表示する 左下にマクロの記録を表示す…

快適なExcelライフを送るために必要な環境構築(ライトユーザー編)

今回は筆者ことりちゅんが、快適にExcelライフを送るのに欠かせない環境構築の全貌をお見せします。 一度にすべてを書ききる事ができなかったため、前編(ライトユーザー向け)と後編(開発者向け)に分けてお送りします。 ※各項先頭のカッコ【必須】【推奨…

VBAの参照設定は個人用マクロを使うと快適になるよ

VBAを使っていると「参照設定」をしなければならない場面が多々あります。 ネット上で拾ってきたコードをコピーして使ったら、それが参照設定が必要なコードで必要なライブラリを調べて、設定画面でライブラリを探し出してチェックを入れるのが億劫になって…

VBA開発環境(VBE)にオリジナルの機能を追加する

VBA開発を行うに当たって、特に厄介な課題の一つとして挙げられるのが「開発環境であるVBEがショボすぎる」という事である。 VBEをカスタマイズする方法は色々あるが、ここでは「開発環境(VBE)にコマンドを追加して自作のVBAプログラムを実行する」方法を…

ワークシート用ユーザー定義関数は使い方を誤ると危険である

VBAで作るユーザー定義関数の第三弾。 ここまでユーザー定義関数を推しておいて今更だが、私は多用するのはオススメしていない。 今回はユーザー定義関数の何が危険なのかを説明する。

VBAでの広域コメントアウトの代替案

VBAにはCのような開始位置と終了位置を明示して広範囲をコメントアウトを行う記法が存在しない。 それでも広範囲コメントアウトを行いたい人のために、私はディレクティブの活用を提案したい。 VBAのコメントアウトについて まずはVBAで使える二種類のコメン…

VBAによる安定したワークシート用ユーザー定義関数の作り方

今回はVBAで安定したユーザー定義関数を作る方法についてお話します。

VBA関数のライブラリ名やモジュール名の省略を検知するアイディア

こんばんわ。最近自作のVBAモジュールのライブラリ化を夢見てアレコレしていることりちゅんです。 ライブラリ化を進めるに当たって、今まで適当に省略して済ませてきたモジュール名の明示が重要な課題となってきました。 そんな中、良い感じのアイディアが浮…

VBAでIIF関数が全ての項を評価してしまうのは当然である

今日はVBAのIIF関数で、なぜ全ての引数を評価してしまうのか説明する。

VBAの裏技?コロンで好きな位置にブレークポイントを設置する

今回はVBAで好きな位置にブレークポイントを設置して、ストレス無く開発を進めるためのテクニックを紹介します。

VBAのStopとDebug.Assertステートメントの違い

今回はVBAのStopとDebug.Assertステートメントの違いについてお話します。

VBEでオブジェクトのどのイベントを使えば良いのか簡単に調べる方法

今回はVBEでWorksheetの全てのイベントを検知してDebug.Printするためのコードを素早く作成する方法を動画でお送りします。

VBEをカスタマイズしてコメントアウトを効率的に行う

こんばんちゅん。ことりちゅんです。(・8・) 突然ですが今日はVBAのコメントブロックについてです。 VBA(VBE)って標準設定ではコメントアウトのボタン(「編集」ツールバー)は隠されてるわ、コメントアウトにショートカットキーが使えないわで、とても不…

【永久保存版】VBAにおける真のイミディエイトウィンドウの使い方

VBAの開発画面(VBE)には様々なウィンドウがありますが、その中でも特に奥が深いのがイミディエイトウィンドウです。 イミディエイトウィンドウをどれだけ使いこなしているかで、その人のVBAプログラミングスキルがどれ程のものかひと目で分かる(かもしれ…

応答が停止したExcelで、VBAを確実に中断させる方法

今回はVBAユーザー必見、応答なしになったExcelでVBAを確実に中断させる方法(仮称:ちゅんちゅん奥義)を紹介します。 皆さんはVBA或いはマクロの実行中に、無限ループを起こしてしまい中断できないので「泣く泣くExcelを強制終了させた」なんて経験はあり…

VBA開発におけるIME活用方法について

今回はVBA開発において、私が使っているIMEの活用方法を紹介します。 開発の効率化を説明する記事は色々と読んだことはありますが、IME改善の話を私は見たことがないので試しに書いてみました。 IMEとは? なぜGoogle? ユーザー定義辞書の活用方法 私のユー…

Excel VBAの自作関数の効率的なテスト方法について

今回は自作関数のテスト方法について、私のお気に入りの方法を紹介する。 そもそもテストパターンを作成して関数毎にテストするなんて、現役のプログラマからしてみたら当たり前のことだと思うが、VBAの現場でそこまでキッチリテストしている人は少数派なの…

プライバシーポリシー