2025-12

ExcelVBA

〖ExcelVBA〗最終列・最終セルを正しく取得する基本コードまとめ|列ズレ・空白に強い方法

ExcelVBAでマクロを作っていると、最終列や最終セルを取得したい場面がよくあります。表の横幅を自動で取得したいデータ範囲を自動で指定したい列数が増減する表に対応したい最終行は正しく取れているのに、最終列がズレて処理がおかしくなるのは初心...
ExcelVBA

〖ExcelVBA〗処理速度を上げる3点セット|画面更新・計算・イベントを止めて爆速化する基本コード

VBAで作ったマクロが、動きが遅い画面がチカチカして見づらい大量データだと終わらない…ということはよくあります。こういうときに最初に試してほしいのが、処理速度を上げる3点セットです。これは、Excelの「余計な動き」を一時的に止めることで、...
ExcelVBA

〖ExcelVBA〗フォルダ選択ダイアログの出し方|保存先・読込先をユーザーに選ばせる基本コード

VBAでよくある要望がこれです。CSVを読み込むフォルダをユーザーに選ばせたいバックアップ保存先フォルダを選びたい指定フォルダ内のファイルを一括処理したいこういうとき、パスをコードに直書きすると、別PCや別環境で動かしにくくなります。そこで...
ExcelVBA

〖ExcelVBA〗On Errorの基本|エラーで止まらない“安全な処理”の書き方(初心者向け)

VBAでマクロを作っていると、ある日いきなりこうなります。実行したら「実行時エラー」で止まる人によって動いたり動かなかったりするデータが無いときだけ落ちるそんなときに登場するのが On Error です。On Error を使うと、エラーが...
ExcelVBA

〖ExcelVBA〗指定したシートが存在するかチェックする基本コード|エラーを防ぐ定番マクロ

ExcelVBAでよくあるエラーの1つが、存在しないシート名を指定してしまうパターンです。たとえば、次のようなコードを書いたときに…Worksheets("集計").Range("A1").Value = "OK"もし「集計」というシートが...
ExcelVBA

〖ExcelVBA〗最終行を正しく取得する基本コードまとめ|空白があっても対応できる定番3パターン

ExcelVBAでマクロを作るとき、ほぼ必ず出てくるのが「最終行の取得」です。たとえば、次のような処理をしたいときに必要になります。データのある行までループしたい新しい行に追記したい範囲を自動で選択したいコピーや抽出の対象範囲を決めたいただ...
ExcelVBA

〖ExcelVBA〗Excelを閉じる前に自動バックアップするマクロ|保存忘れ・上書き事故を防ぐ

Excel作業で意外と多いのが、次のようなミスです。上書き保存してから「やっぱり前の状態に戻したい…」壊れた・数式が消えた・データを消した保存せずに閉じてしまった同じファイルを複数人で触っていて、いつの版が正しいか分からないこういう事故を防...
ExcelVBA

〖ExcelVBA〗ピボットテーブルを自動作成・更新するマクロ|集計表をワンクリックで作る

Excelで集計作業をするとき、ピボットテーブルは非常に便利ですが、毎回ピボットを作り直すのが面倒元データを更新するたびに手動で更新している同じ形式の集計を何度も作っているといった悩みを感じたことはありませんか?そこで今回は、ExcelVB...
ExcelVBA

〖ExcelVBA〗特定文字列を含む行だけ色付けするマクロ|エラー・注意行を自動で強調表示

Excelで一覧表を見ていると、 特定のキーワードを含む行だけを目立たせたい と思うことはありませんか?たとえば、次のようなケースです。「未対応」「エラー」「要確認」と書かれた行を目立たせたいクレーム・注意事項を含むデータだけ色付けしたい重...
ExcelVBA

〖ExcelVBA〗セル内の改行(Alt+Enter)を一括で削除・置換するマクロ

Excelを使っていて、セルの中で勝手に改行されてしまって困った経験はありませんか?特に次のような場面でよく発生します。CSVやテキストデータを貼り付けたときアンケートや問い合わせ内容を一覧にしたとき他システムから出力されたデータを加工する...