ダブルクォーテーションを簡単に入力したい
VBAコード上で文字列を囲む場合はダブルクォーテーションを使用します。
Public Sub sample()
Dim s As String
s = "これは文字列です" '→これは文字列です
'ダブルクォーテーションを文字列上に入れると
'下記のような表現になる
s = "これは" &"""" & "文字列" & """" & "です" '→これは"文字列"です
End Sub
文字列上にダブルクォーテーションを入れる方法を忘れがち
単純に囲むだけで使用するダブルクォーテーションは難しくありませんが、
文字列上にダブルクォーテーションを入れようと思うと、方法を忘れがちです。
“””で3つ使えばよいのか?””””で4つなのか?とエスケープする方法を忘れてしまい、
都度入力→エラーの対応せずとも簡単に入力する方法があります。
Chr関数を使用して簡単に挿入しましょう。
Chr(34)は「”」と同じ効力
下記サンプルのように、Chr(34)を使用する事で簡単に「”」を挿入可能です。
忘れがちであれば、Chr(34)を上手く利用すべきです。
Public Sub sample()
Dim s As String
'■どちらも結果はダブルクォーテーションのみの文字列
s = """" '→ 「"」
s = Chr(34) '→ 「"」
'■文字列上に入れる場合はアンドで挟む。
s = "これは" & Chr(34) & "文字列" & Chr(34) & "です"
MsgBox s '→これは"文字列"です
End Sub
Chr(34)を利用する事で簡単に記載は可能ですが、
文字列で挟む場合は、記載が手間なので一長一短でもあります。
その他のChr関数
その他Chr関数もうまく使用し、特殊文字を簡単に使用しましょう。
| Chr関数 | 意味 |
| Chr(39) | シングルクォーテーション(‘) |
| Chr(34) | ダブルクォーテーション(“) |
| Chr(9) | タブ |
| Chr(32) | 半角スペース |
改行コードも表すケースがあります。
| Chr関数 | 意味 |
| Chr(10) | vbLf |
| Chr(13) | vbCr |
| Chr(10)+Chr(13) | vbCrLf |
改行コードの違いはこちらの記事を参照。
改行コードの違い「CR」と「LF」と「CRLF」
Public Sub sample()
Dim s As String
s = "これは" & Chr(10) + Chr(13) & "文字列です"
MsgBox s '→これは
' 文字列です
End Sub



コメント