和風スパゲティのレシピ

日本語でコーディングするExcelVBA

基本構文

シート名を取得・変更する - Nameプロパティの使い方

ワークシートの名前を取得したり、変更する場合は、WorksheetオブジェクトのNameプロパティを使用します。シート名 = Worksheet(1).Nameというコードで名称を取得でき、Worksheet(1).Name = "変更シート名"というコードで名称を変更できます。

シートを削除する - Deleteメソッドの使い方

ワークシートを削除するDeleteメソッドの使い方を解説します。シートを削除する場合は、[削除するシート].Deleteを実行します。削除時の警告メッセージを表示せずにシートを削除する場合はApplication.DisplayAlerts = False/Trueでこのコードを挟みます。

ワークシートを指定する方法7選

「ワークシートの指定方法」はいろいろなやり方があり、どれがいいというわけではなく一長一短があります。このいろいろなワークシートの指定方法を、「基本的だけど効果の高い方法」に厳選して解説していきますので、是非習得していってください。

シートを移動する - Moveメソッドの使い方

ワークシートを移動する「Moveメソッド」の使い方を解説します。[移動するシート].Move Before:=[ここで指定したシートの1つ前に挿入]、または[移動するシート].Move After:=[ここで指定したシートの1つ後ろに挿入]というコードを実行します。

シートをコピーする - Copyメソッドの使い方

ワークシートをコピーする「Copyメソッド」の使い方を解説します。[コピーするシート].Copy Before:=[ここで指定したシートの1つ前に挿入]、または[コピーするシート].Copy After:=[ここで指定したシートの1つ後ろに挿入]というコードを実行します。

引数を好きな個数渡せる関数を作る-ParamArrayキーワード-

Sub、Functionなどを作成するとき、任意の数の引数を渡す方法を解説します。ParamArray 引数名() という引数を作ると、呼び出す側では複数の引数として渡すことができ、プロシージャ内で実際に使うときは、配列として扱うことができます。

関数の引数を省略可能にする - Optionalキーワード

Sub、Functionなどの引数を省略可能にするOptionalの使い方を解説します。「引数名 As データ型」という普段の宣言部分に、先頭にOptionalをつけると、その引数は省略可能になり、後ろに「= ○○」をつけると省略時の値を設定することができます

一覧表データから帳票を出力するマクロ

処理ごとの解説ではなく、完成品の全体が見たい!という方のための、完成品マクロのサンプルコードです。今回のテーマは「データシート⇒帳票を出力」です。初級者の方にも扱えるよう、この処理を動かすための最低限の書き方をしております。

最終行を取得する方法7選 - 基本構文とサンプルコード

Excelのデータ処理をマクロで自動化しようと思ったら、必ずついて回るのが「最終行の自動取得」です。データの処理がどんなものであれ、まずはデータがどこまで入っているかを確認して、処理を実行する範囲を決めないといけません。

セルの数式をVBAで入力する - Formulaプロパティの使い方

セルの数式をVBAで入力するための「Formulaプロパティ」の使い方を解説します。Range("D10").Formula = "=SUM(D4:D9)"のように、数式をRangeオブジェクトのFormulaプロパティに代入することで、数式をVBAから入力することができます。

シート関数をVBA上で計算する - WorksheetFunctionオブジェクトの使い方

ワークシート関数をVBA上で計算するWorksheetFunctionオブジェクトの使い方を解説します。自分でコードを書くと大変だけど、関数だと1発で書けるというメリットに加え、シート関数は自分で書くより圧倒的に高速です。積極的に使っていきましょう。

セル範囲(Range)を指定する方法10選

セル範囲の指定は、簡単に書こうと思えば書けるので、普段はあまり考えない部分かもしれません。ですが読みやすさや書きやすさを追求しようと思えば、とても考えがいのある処理ですので、自分の知識の確認の意味でも、ちょっと確認してみましょう。

セル範囲にシート関数をコピーする - 基本構文とサンプルコード

セルに入力されたシート関数を、VBAを使って別のセル範囲へコピーする方法を紹介します。D2=B2*C2と入力し、これをD列全体にコピーするには、そもそもコピーする必要もなく一気に「Range("D2:D7").Formula = "=B2*C2"」でOKです。

セル範囲の値だけをコピーする - 基本構文とサンプルコード

セルの値だけを、範囲から範囲へコピーする方法を紹介します。A1:C3の正方形を、D4:F6にコピーするコードは、実は「Range("D4:F6").Value = Range("A1:C3").Value」で済みます。「値貼り付け」より速くて読みやすいので、こちらを使いましょう。

IIf関数の使い方 - 基本構文とサンプルコード

便利なのに知名度のイマイチな関数「IIf関数」を紹介します。IIf([条件式], [Trueのときの値], [Falseのときの値])と書きます。IIf関数は初めて見る方でも、()の中身はよく見たことがあると思います。早い話、「シート関数のIF」が、IIf関数です。

固定のセル(Range)を定数(Const)で定義する

「固定セルを定数で扱いたい!」という場面は結構多いです。データシートの上部に固定された、「対象月」や「更新日」のセルとかですね。常に同じRangeオブジェクトをくれる定数がほしいのですが、Constではできませんので、別の方法を使います。

列挙型変数(Enum)の使い方 - 基本構文とサンプルコード

列挙型変数(Enum)の基本構文の書き方と、主な使い方について解説します。列挙型変数は数値(Long)の定数をまとめて定義するしくみです。根本的な使用目的は定数と同じです。直打ちの数字を無くすことで、読みやすくて、変更に強いコードを書くために使います。

定数の使い方 - 基本構文とサンプルコード

定数(Const)の基本構文の書き方と、主な使い方について解説します。例えば「消費税」が変更になったとき、プログラム中のすべての「0.08」を「0.1」にするのはとても大変です。これを定数にすることで、最初の宣言部だけ変更すればよくなります。