ExcelVBA

【ExcelVBA・マクロ】FormulaとFormulaR1C1の使い方|VBAでセルに数式を設定する方法【コピペOK】

はじめにVBAでセルに値を直接入力するだけでなく、「数式そのもの」を設定したい場面があります。たとえば「合計はSUM関数で計算させたいが、その式自体をマクロで一括入力したい」といったケースです。このようなときに使うのがFormulaプロパテ...
ExcelVBA

【ExcelVBA・マクロ】InStrRev関数の使い方|文字列を後ろから検索する方法(拡張子・ファイル名抽出)【コピペOK】

はじめにファイルのフルパスから拡張子だけを取り出したい、あるいはファイル名だけを抽出したいといった場面で、「文字列の後ろ側から特定の文字を検索したい」ことがあります。こうしたときに便利なのがInStrRev関数です。InStr関数が文字列の...
ExcelVBA

【ExcelVBA・マクロ】Workbook.Protectの使い方|ブックの保護・パスワード設定を自動化する方法【コピペOK】

Excelで複数人がファイルを共有していると、「シートの構成を勝手に変更されたくない」「重要なブックを誤って上書き保存されたくない」といった悩みが出てきます。この記事では、Workbook.Protectメソッドを使ってブックの構造(シート...
ExcelVBA

【ExcelVBA・マクロ】PowerPointを自動操作する方法|表・グラフからスライドを自動生成するVBAコード【コピペOK】

売上レポートや進捗報告など、Excelで集計した表やグラフを毎回PowerPointに手作業でコピー&ペーストしていませんか。この記事では、ExcelVBAからPowerPoint.Applicationを操作し、スライドの自動生成・表やグ...
ExcelVBA

【ExcelVBA・マクロ】セルの範囲やシートを画像として保存する方法|CopyPicture・チャートを使ったPNG出力【コピペOK】

Excelの表をブログやマニュアル、チャットに貼り付けたいとき、いちいちスクリーンショットを撮っていませんか。VBAを使えば、指定したセル範囲やシート全体をPNG画像として自動で書き出すことができます。この記事では、Range.CopyPi...
ExcelVBA

【ExcelVBA・マクロ】Outlookメールを自動送信する方法|宛先・本文・添付ファイルを差し込むVBAコード【コピペOK】

請求金額の案内や定型的な業務連絡など、同じ形式のメールを何十件も手作業で送っていませんか。ExcelVBAからOutlook.Applicationを操作すれば、宛先・件名・本文・添付ファイルを自動で設定し、メールをそのまま送信することがで...
ExcelVBA

【ExcelVBA・マクロ】Interior.ColorとRGB関数の使い方|セルの背景色・フォント色を自由に操作する方法【コピペOK】

セルの背景色や文字色を条件によって自動で変える処理は、VBAマクロでとてもよく使われるテクニックです。ステータスに応じて行を色分けしたり、入力漏れのセルを目立たせたりと、応用範囲は多岐にわたります。この色の操作の中心になるのがInterio...
ExcelVBA

【ExcelVBA・マクロ】配列を並び替える方法|バブルソートでRange.Sortを使わずにソートする方法【コピペOK】

セルに書き出さずに配列のままデータを並び替えたい場面は意外と多くあります。例えば、集計結果を配列に格納したまま順位付けしたり、大量データをシートに書き出す前にメモリ上で整えたりするケースです。こうしたとき、Range.Sortはセル範囲が前...
ExcelVBA

【ExcelVBA・マクロ】GetSaveAsFilenameの使い方|保存先とファイル名をユーザーに指定してもらう方法【コピペOK】

マクロで作成したブックやCSVを保存するとき、保存先やファイル名を毎回コード内に固定で書いてしまうと、使う人によって都合が悪かったり、上書きされたくないファイルを誤って上書きしてしまったりすることがあります。そんなときに便利なのがAppli...
ExcelVBA

【ExcelVBA・マクロ】Application.WorksheetFunctionの使い方|VLookup・SumIfs・CountIfsをVBAから呼び出す方法【コピペOK】

Excelのワークシート関数(VLOOKUP、SUMIFS、COUNTIFSなど)は、実はVBAのマクロの中からもそのまま呼び出せることをご存じでしょうか。VBAには同じ機能を持つ命令が用意されていない場合も多く、複雑な集計や検索処理をゼロ...