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つのセルにカンマや空白で区切られたデータが入っていて、それぞれを別々の列に分けたい……という場面はよくあります。手作業なら「区切り位置」機能を使いますが、毎回同じ形式のデータであれば...
ExcelVBA

【ExcelVBA・マクロ】CommandBarsの使い方|右クリックメニュー(コンテキストメニュー)をカスタマイズする方法【コピペOK】

Excelでセルを右クリックしたときに表示されるメニューに、自分専用の項目を追加できることをご存じでしょうか。VBAのCommandBarsオブジェクトを使えば、右クリックメニュー(コンテキストメニュー)に独自のマクロ実行ボタンを追加したり...
ExcelVBA

【ExcelVBA・マクロ】文字化け対策完全ガイド|CSV読み込み時のUTF-8・Shift-JIS判定と変換方法【コピペOK】

「VBAでCSVファイルを読み込んだら日本語が文字化けした」という経験がある方は多いのではないでしょうか。原因の多くは、ファイルの文字コード(UTF-8・Shift-JISなど)とVBA側の読み込み方法が合っていないことにあります。この記事...