このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】ダブルクォーテーションを文字列にするならChr(34)

2023年2月6日

文字列の中にダブルクォーテーションを入れるためには""と2つ並べる必要があります。

つまり、ダブルクォーテーションだけを表示するにはこのように書きます

MsgBox """"                              'ダブルクォーテーションだけを表示
MsgBox "ダブルクォーテーションは""の事です" '文字列の間に挟む

読みにくっ!

ダブルクォーテーションが""の上に、文字列は""で囲む必要があるので、""""とダブルクォーテーションを4つ並べる必要があるのです。

さらに変数を間に挟んで、"""" & str & “""" みたいな使い方をすると絶望的に可読性が悪くなります。

そんな困りもののダブルクォーテーションですが、Chr関数を使えば一発で解決します。

“"""みたいに書いている人はChr関数を覚えて帰ってください。

VBAが難しいと感じたら
ココナラにてVBAの作成依頼を受け付けています。
ご依頼・ご相談はこちらから

ダブルクォーテーションの文字列はChr(34)

Chr関数は、ASCII【アスキー】コードに対応した文字列を返してくれる関数です。

この関数を使えばダブルクォーテーションをChr(34)に置き換えることができます。
例えば、冒頭のコードは次のように書き換えできます。

MsgBox Chr(34)                                        'ダブルクォーテーションだけを表示
MsgBox "ダブルクォーテーションは" & Chr(34) & "の事です" '文字列の間に挟む

ダブルクォーテーションを連打したコードに比べて、だいぶスッキリしました。

変数を間に挟む場合も"""" & str & “""" が Chr(34) & str & Chr(34)となります。

ダブルクォーテーションを並べると見返すのがしんどいコードになるので、Chr関数に置き換えて可読性の良いコードに変換してみてください。

Chr関数の他の文字列は?

通常ASCII【アスキー】コードは0~255の256種類があり、0~31印刷できないコードです。

0 から 31 の数値は、標準の印刷できない ASCII コードと同じです。 たとえば、Chr(10) は改行文字を返します。 charcode の通常の範囲は 0 から 255 です。

https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/chr-function

他にはどんな文字列があるのか気になる人もいるかと思い、一覧表にしてみました。
気になる方はご覧あれ。
(一度Excelシートに書きだしてからHTMLに変換しているので文字化けしている可能性があります)

064@128€192
165A129193
266B130194
367C131195
468D132196
569E133197
670F134198
771G135199
872H136200
973I137201
1074J138202
1175K139203
1276L140204
1377M141205
1478N142206
1579O143207
1680P144208
1781Q145209
1882R146210
1983S147211
2084T148212
2185U149213
2286V150214
2387W151215
2488X152216
2589Y153217
2690Z154218
2791[155219
2892¥156220
2993]157221
3094^158222
3195_159223
3296`160224
33!97a161225
3498b162226
35#99c163227
36$100d164228
37%101e165229
38&102f166230
39103g167231
40(104h168232
41)105i169233
42*106j170234
43+107k171235
44,108l172236
45109m173237
46.110n174238
47/111o175239
480112p176240
491113q177241
502114r178242
513115s179243
524116t180244
535117u181245
546118v182246
557119w183247
568120x184248
579121y185249
58:122z186250
59;123{187251
60<124|188252
61=125}189253
62>126~190254
63?127191ソ255

《VBA上級者になりたい人へ》
VBA上級者を目指したい人にはパーフェクトExcel VBA一択です。
この本を読み切れば間違いなくVBA上級者になれます。

created by Rinker
技術評論社
¥3,608 (2024/11/21 14:41:17時点 Amazon調べ-詳細)
VBAが難しいと感じたら
ココナラにてVBAの作成依頼を受け付けています。
ご依頼・ご相談はこちらから

VBA

Posted by やろまい