和風スパゲティのレシピ

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

○○と△△の違い

Worksheet.Selectと.Activateの違い

Worksheetオブジェクトから呼び出す場合の、SelectメソッドとActivateメソッドの違いを説明します。どちらもアクティブシートを設定/変更できるメソッドですが、単独のシート選択はActivate、複数のシート選択はSelectがそれぞれ得意です。

個人用マクロブックと普通のブックの違い

汎用関数・マクロを保存する方法として「個人用マクロブック」があります。このブックは一度作ると以降はExcelの起動時に裏で開かれるのですが、実はこれを普通のブックでやることもできます。その時の細かい違いを解説します。

Replace関数とReplaceメソッドの違い

ExcelVBAにおいて文字列を置換する処理に使う、Replace関数とReplaceメソッドの違いを解説します。Replace関数には、「シート関数のREPLACE」と、「VBA関数のReplace」の2つがありますので、ここでは3つのReplaceについて解説します。

ByVal(値渡し)とByRef(参照渡し)の違い

関数に引数を渡す際の渡し方である、ByVal(値渡し)とByRef(参照渡し)の違いを説明します。ざっくり説明すると、関数に値(引数)を渡すときに、「変数に書いてある情報だけを渡すのが値渡し(ByVal)」、変数をそのまま渡すのが参照渡し(ByRef)です。

キャメル記法とハンガリアン記法の違い

変数・関数などの名づけ方のルールである、キャメル記法とハンガリアン記法の違いを説明します。単語の区切りを分かりやすくするためのルールがキャメル記法で、どんな変数かを分かりやすくする」ためのルールがハンガリアン記法です。

システムハンガリアンとアプリケーションハンガリアンの違い

変数の名づけ方のルールである、システムハンガリアンとアプリケーションハンガリアンの違いを説明します。どちらも変数に接頭詞をつける命名で、lngApplePriceと変数の型を接頭するのが前者、yenApplePriceと変数の意味を接頭するのが後者です。

キャメルケースとスネークケースの違い

変数・関数などの名づけ方の種類(ルール)である、キャメルケースとスネークケースの違いを説明します。CamelCaseと、各単語の頭文字を大文字にするのがキャメルケース、snake_caseと、単語間にアンダーバーを入れるのがスネークケースです。

キャメルケースとパスカルケースの違い

変数・関数などの名づけ方のルールである、キャメルケースとパスカルケースの違いを説明します。camelCaseと、先頭の単語は小文字で始めるのがキャメルケースで、PascalCaseと、先頭の単語は大文字で始めるのがパスカルケースです。

Do While~Loop と Do~Loop While の違い

繰り返し処理を行うステートメントである、Do While~Loop文と、Do~Loop While文の違いを解説します。両者とも条件式によってループを続けるか判定しますが、While条件式 を書く位置が違います。ほぼ同じ動きなので、より有名な方を使いましょう。

Do While と Do Until の違い

繰り返し処理を行うためのステートメント、Do While文と、Do Until文の違いを解説します。「条件を満たす間続ける」のがDo While文「条件を満たしたら終わる」のがDo Until文です。使い分けですが、そもそもどちらも使わなくていい気がします。

RangeとCellsの違い

セルを指定するプロパティ、RangeとCellsの違いを解説します。どちらもセルを取得するために使いますが、Rangeの方ができることが多く「セル範囲や複数のエリア」を取得できます。Cellsは指定が数値なのを利用して、変数や定数を活用するために使います。

RangeオブジェクトとRangeプロパティの違い

Rangeオブジェクトと、Rangeプロパティの違いを解説します。「Rangeオブジェクトを取得する、たくさんあるプロパティの中のひとつがRangeプロパティ」です。これだけで分かるのは難しいと思いますので、より詳しく説明していきます。

Property Let と Property Set の違い

プロシージャの種類である、Property LetとProperty Setの違いを解説します。両者とも、プロパティの取得・設定を対となる2関数で行う仕組みのうちの、「値の設定」を担うプロシージャですが、対象とするプロパティがオブジェクトかどうかが異なります。

Function と Property Get の違い

プロシージャの種類である、FunctionとProperty Getの違いを解説します。どちらも、任意の数の引数を受け取り、1つの値を返します。Propertyの本来の目的である、同じ名前のProperty Let/Setプロシージャを用意できる点が、最も大きな違いです。

変数の型「Long」と「Integer」の違い

VBAの変数の型である「Long型」と「Integer型」の違いを解説します。両者とも整数を扱いますが、箱の大きさが違います。使うのは常にLong型でOKです。Integerの方がメモリを使わなくて地球にやさしそうですが、気にするレベルではありません。

VALUE関数とVal関数(とCDbl関数)の違い

VBAの関数「Val関数」と、ワークシート関数「VALUE関数」の違いを解説します。とその前に、実はVALUEとValはほとんど違う関数です。ワークシートのVALUE関数と対応するVBAの関数は、Val関数ではなくCDbl関数ですので、それを念頭に解説をどうぞ。

IsNumeric関数とISNUMBER関数の違い

VBAの関数「IsNumeric」と、ワークシート関数「ISNUMBER」の違いを解説します。両方とも数値かどうかを判定しますが、IsNumericの方が条件が緩く「数値に見ることができる⇒True」、ISNUMBERの方が条件が厳しく「完璧に数値⇒True」という違いがあります。