VBAで関数を記述する際のダブルクォーテーション「"」とシングルクォーテーション[']の記述の仕方に関して、関数を使用する際の「"」「'」これらの記号の使い方等
案外わからない方も多いのではないでしょうか?
- 記述したけど、関数がうまく動かない!
- どこまで「("")」で区切るのか難しい!
そんな悩みを持たれる方も多いかと思います。そこで、そんなVBAで関数を利用する際に「""」の記載する時のポイントについてわかりやすく解説しましょう。
「.fomular」プロパティで関数がセットできる
おさらにですが、関数をVBAで記述する際には、「.formular」関数を使用します。
.formular= "=関数"
です。
これにならって、作っていきましょう!
ダブルクォーテーション「"」とシングルクォーテーション「'」の使い分け
まずこれらの使い分けをどのようにするのかを解説しておきましょう。
シングルクォーテーションを使う場合
シングルクォーテーションを使う場合には、下記の場合に記述します。
ポイント
シート名を表示する時:「'シート名'!」
シート名を記載する時には、シングルクォーテーションでシート名をくくりましょう。
ダブルクォーテーションを利用する場合
これに対して、ダブルクォーテーションを利用する時は、下記3つの点に注目しましょう!
<ダブルクォーテーションを利用する時の3つのポイント>
- 2つの文字列を繋げるとき
- その文字列をくくる
- 空白の場合「""""」
但し、その文字列が変数の場合には、くくる必要性はありません。
また、普通のプログラミングのコーディングをする際には、空白値は、「""」で記述します。
関数の中に空白を指定する場合には、「""""」で記述
しかし、関数の中に空白を指定する場合には、「""""」で記述します。
ダブルクォーテーションとシングルクォーテーションの使用事例
それでは、実際に事例を見ながら解説していきましょう。
- 空白文字入れる場合の事例
- シート名をくくる場合の事例
「’」でシート名をくくる場合の事例
それでは、下記の「'」でシート名をくくった事例をご確認下さい。
■「’」でシート名をくくる事例
1 2 | Range(InsertCol & "11").Formula = "=VLOOKUP(B11,'" & wsnewname & "'!$B$11:$AW$" & LastRowOldList & ",38,FALSE)" |
「' & wsnewname & '!」がシート名を表しています。また変数「wsnewname」を繋げる時は、&を使用して「’」でくくっています。
これで、シート名を表示させます。
空白文字入れる場合の事例
続いて、下記の「"」で空白文字をくくった事例をご確認下さい。
■「"」で空白文字を指定する事例
1 2 | Range(InsertCol & "11").Formula = "=IF(VLOOKUP(B11,'" & wsnewname & "'!$B$11:$AW$" & LastRowOldList & ",35,FALSE)="""","""",VLOOKUP(B11,'" & wsnewname & "'!$B$11:$AW$" & LastRowOldList & ",35,FALSE))" |
ダブルクォーテーションが4つある部分をご確認下さい。⇒「""""」。
これで、関数内の空白文字が指定できます。
関数でない場合の空白は「""」でしたね。
これは知っているかいないかだけの違いですので、しっかり覚えておいてくださいね。
おすすめExcelVBA参考書のご案内
このように、ExcelVBAについても色々な学ぶには、参考書などなしで習熟するとかなり時間を要します。上記のようなExcelVBAに関してもっと調べる環境があったらと感じる方も少なくありません。
初心者向けVBA教材
そこで、おすすめなのが私自身もVBAやエクセル関数を利用する際に今でもよく利用している下記参考書がかなり有益な情報が入っています。しかもサンプル動画や電話環サポート付きという優れもの。
7500万部売れていて、かなり実用性のある内容が盛り込まれているので、よくExcelVBAなどを利用される際には、こちらの教本が一冊あるだけで色々な構文や基本的なVBAの記述方法に対しても汎用性が効くようになるので、ぜひ上手に活用してみて下さい。
中上級者向けVBA教材
そして、こちらがVBAの基礎をある程度理解された方であれば、実践ベースでかなり作り込める内容が盛り込まれているので、逆引きに使ったり、かなり発展的なVBAコーディングを記述できるようになります。
ちなみに私はどちらとも持っており、今でもちょくちょく活用しています。
まとめ
このように、「シングルクォーテーションを使う場合」と「ダブルクォーテーションを利用する場合」には、どのように囲えばよいのか、非常に見えにくくなるため、わかりづらいです。
なので、この2つの使い方をしっかり理解してから、実際に利用してみましょう。