ダブルクォーテーションを簡単に入力したい
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
コメント