VBA
VBA開発を行うに当たって、特に厄介な課題の一つとして挙げられるのが「開発環境であるVBEがショボすぎる」という事である。 VBEをカスタマイズする方法は色々あるが、ここでは「開発環境(VBE)にコマンドを追加して自作のVBAプログラムを実行する」方法を…
今回は紙エクセル対策で必要な罫線作図ツール開発の序章です。 本記事はSpredsheets/Excel Advent Calendar 2019 の4日目の投稿です。(みんな参加してね!) (実際には12/1に公開した記事ですが) 3日目は Silloi (id:silloi) さんの「Google Spreadsheets…
思わぬ挙動でびっくりしたので書き残しておく 詳しい本文はまた今度追記する。 何らかの演算をすることで、Variantに暗黙的に変換されるんだろうな。 'SpecialFoldersの引数にString型変数を指定すると誤動作する。 Sub Test_SpecialFolders() With CreateOb…
VBAで作るユーザー定義関数の第三弾。 ここまでユーザー定義関数を推しておいて今更だが、私は多用するのはオススメしていない。 今回はユーザー定義関数の何が危険なのかを説明する。
当然のことではあるがプログラミングに於いて、コメントを残すことは非常に重要である。 ここでは私が個人開発をする中で「コメントを残しておいて良かった。」と思った事を、独り言として書き残しておく。 コメントを残して良かったと思う時 なぜこのように…
VBAにはCのような開始位置と終了位置を明示して広範囲をコメントアウトを行う記法が存在しない。 それでも広範囲コメントアウトを行いたい人のために、私はディレクティブの活用を提案したい。 VBAのコメントアウトについて まずはVBAで使える二種類のコメン…
今回はVBAで戻り値のある複数シートをコピーする関数を作ってみたので紹介します。
Twitterにてアイディアを頂いて、昨日とは別の方法でOutlookのメール受信者がリンクをクリックできるようにするマクロを作ってみた。
Outlookでメール記載されたパスをハイパーリンク化してクリックできるようにするマクロを作ってみた。
愛用マクロを64bit版Excelに早急に対応させる必要が出てきたので、ソースコード上のWin32APIのDeclare文を64bit対応に自動変換プログラムを作ってみたので紹介する。 なお、Declare文の変更だけでは完全に64bit対応とはならないので、実際に使う人はちゃんと…
今回はVBAで作るユーザー定義関数の第二弾。揮発性関数についてお話します。
今回はVBAで安定したユーザー定義関数を作る方法についてお話します。
こんばんわ。最近自作のVBAモジュールのライブラリ化を夢見てアレコレしていることりちゅんです。 ライブラリ化を進めるに当たって、今まで適当に省略して済ませてきたモジュール名の明示が重要な課題となってきました。 そんな中、良い感じのアイディアが浮…
今日はVBAでWinAPIのEnumWindowsを使って別プロセスのExcelを取得する関数を作ってみました。
野良マグロを養殖して駆逐するミニゲームを作ってみたので紹介する。 前置き ソースコード 導入方法 解説 補足 まとめ 前置き まずは下記の記事をご覧いただきたい。 週刊アスキー アニメイトグループ社内の“天然マクロ”を駆逐したkintone 「天然マクロ」と…
今日はVBAのIIF関数で、なぜ全ての引数を評価してしまうのか説明する。
今回はVBAで好きな位置にブレークポイントを設置して、ストレス無く開発を進めるためのテクニックを紹介します。
今回はVBAのStopとDebug.Assertステートメントの違いについてお話します。
先日Twitterで教えて頂いたInStr関数の名前付き引数の不思議な挙動について情報を整理してみた。
今回はVBAで最速で文字列に含まれる文字列の出現回数をカウントする関数を求めて色々と調査してみました。
先日、フォロワーのA氏がWindowsMediaPlayerを使ったVBAで、環境依存のバグに悩んでいたので解決した話をする。
今回はVBEでWorksheetの全てのイベントを検知してDebug.Printするためのコードを素早く作成する方法を動画でお送りします。
今回はちょっとしたユーザー定義関数を作ったので紹介します。
先日Twitterで話題になった「1から100の偶数の和を求めるワンライナー」に関して、VBA作成までに思考したことを整理しておきます。
今回は以前作成したセル範囲を二次元配列化する関数を改造して、非表示のセルを除外するようにしてみたので紹介します。
今回は64bit版VBAの整数型で使えるIntergerとLongとLongLongのうち、どれが最速なのかを調べてみました。
游ゴシック大嫌いな同志諸君!お久しぶりです。ことりちゅんです。 ついに!ついに、Excelからレイアウトを崩さずに游フォントを完全に消し去る最強のマクロが完成しましたのでご報告申し上げます。 本記事は「Excelから游ゴシック体を徹底的に駆逐する」の…
今回はExcelの「重複の削除」機能をVBAで実行するための「RemoveDuplicates」で、引数に配列変数を指定したい場合の使い方を調べてみました。 きっかけ 解決した方法 RemoveDuplicatesとは 調査 思いついたアイディアを試してみる ヒントがないかとググって…
今回はVBAのApplication.Runを使用した場合のByRef参照渡しの方法について説明する。 ただし、本記事で紹介する方法には不明瞭な点があるため、あくまで覚えとして書き残しておく。 ※対象読者:一般的なプロシージャで使うByRefの仕組みを分かっているものと…
今回はVBAで重複しないファイル名を作成する方法について考えてみました。