いがぴ

ExcelVBA

【ExcelVBA・マクロ】NumberFormatプロパティの使い方|日付・通貨・パーセントの表示形式を自在に設定する方法【コピペOK】

VBAでセルに値を入力しても、表示形式が整っていないと「日付のはずが数値のまま」「金額にカンマが付かない」といった見た目の崩れが起きてしまいます。この記事では、セルの表示形式をVBAから自在に設定できるNumberFormatプロパティの使...
ExcelVBA

【ExcelVBA・マクロ】重複しない乱数を生成する方法|抽選・くじ引きシステムに使えるVBAコード【コピペOK】

くじ引きや抽選ツールをVBAで作ろうとすると、単純にRnd関数で乱数を生成するだけでは同じ番号が複数回出てしまい、当選者が重複するといった問題が起こります。この記事では、重複のない乱数を生成する2つの方法(Dictionaryによる重複チェ...
ExcelVBA

【ExcelVBA・マクロ】PtrSafeキーワードの使い方|32bit/64bit対応のAPI宣言とLongPtr型を完全解説【コピペOK】

ExcelVBAでWindows APIを使ったマクロを他のパソコンで実行したら、「コンパイルエラー:ステートメントが正しくありません」と表示されて動かなかった経験はありませんか。多くの場合、原因はOfficeのビット数(32bit版か64...
ExcelVBA

【ExcelVBA・マクロ】ChatGPT(OpenAI API)をVBAから呼び出す方法|WinHTTPでAI回答をセルに自動出力する【コピペOK】

Excelでの集計結果を要約させたり、セルに入力した質問に自動で回答させたりできたら便利だと思ったことはありませんか。実は、ExcelVBAからWinHTTPを使ってOpenAIのChatGPT API(Chat Completions A...
ExcelVBA

【ExcelVBA・マクロ】ToggleButtonコントロールの使い方|ユーザーフォームでON/OFF切り替えボタンを作る方法【コピペOK】

ユーザーフォームでON/OFFの状態を切り替えるボタンを作りたいとき、多くの方はチェックボックスを使います。しかし、押した状態が見た目でもはっきり分かる「押しボタン風」のスイッチを作りたい場合は、ToggleButton(トグルボタン)コン...
ExcelVBA

【ExcelVBA・マクロ】QRコードを自動生成する方法|Google Chart APIでセルの値からQRコード画像を作成【コピペOK】

在庫管理表の商品コードや、名刺のURLなどをQRコード化して印刷したい場面は少なくありません。専用ソフトを使わなくても、VBAから無料のQRコード生成APIを呼び出せば、セルの値をもとにQRコード画像を自動作成し、シート上に貼り付けることが...
ExcelVBA

【ExcelVBA・マクロ】Microsoft Teamsへ自動通知する方法|Incoming WebhookでVBAからメッセージを送信する【コピペOK】

Excelでの集計処理や日次バッチが終わったタイミングで、担当者のTeamsチャンネルへ自動で通知が飛んだら便利だと思いませんか。ExcelVBAからWebhook URLへHTTPリクエストを送るだけで、Outlookを開かずにTeams...
ExcelVBA

【ExcelVBA・マクロ】スライサーをVBAで操作する方法|ピボットテーブルの絞り込みを自動化する【コピペOK】

ピボットテーブルの絞り込みに便利な「スライサー」ですが、月次レポートなどで毎回同じ項目を選び直すのは手間がかかります。実はスライサーの選択状態はVBAから直接操作できるため、「今月の支店だけを自動で選択する」「ボタン1つで全スライサーをリセ...
ExcelVBA

【ExcelVBA・マクロ】Application.Volatileの使い方|ユーザー定義関数(UDF)を自動再計算させる方法【コピペOK】

セルに入力した数式は、参照しているセルの値が変わると自動的に再計算されます。しかし、ユーザー定義関数(UDF)の中には「引数として渡していないセル」や「関数の外側の状態」を参照するものがあり、その場合は値が変わっても再計算されず、古い結果が...
ExcelVBA

【ExcelVBA・マクロ】TextToColumnsメソッドの使い方|1列のデータを区切り文字で複数列に分割する方法【コピペOK】

「山田太郎,営業部,03-1234-5678」のように、1つのセルにカンマや空白で区切られたデータが入っていて、それぞれを別々の列に分けたい……という場面はよくあります。手作業なら「区切り位置」機能を使いますが、毎回同じ形式のデータであれば...