ダブルクオーテーションを2重にするため、Replace関数を使う
ダブルクオーテーションが含まれるテキストを、csvファイルとして使うためにダブルクオーテーションを2重にすることがある。
ダブルクオーテーションをReplace関数で2重にするサンプル。
Sub ダブルクオーテーションの置換() Dim TEXT As String TEXT = "<p class=""sample"">文章</p>" Debug.Print TEXT TEXT = Replace(TEXT, """", """""") 'ダブルクオーテーションを2重にする Debug.Print TEXT End Sub
実行結果
<p class="sample">文章</p> <p class=""sample"">文章</p>
ダブルクオーテーションを2つ連続して入力することで「ダブルクオーテーション」を表す。
他の言語だと \" と表記することがある。似たような感じでVBAでは "" と表記する。
Replace関数で引数を指定する場合、最初と最後をダブルクオーテーションで囲う。
実際にcsvとして使う時には、全体をダブルクオーテーションで囲うので、以下のサンプルのようになる。
Sub ダブルクオーテーションの置換2() Dim TEXT As String TEXT = "<p class=""sample"">文章</p>" Debug.Print TEXT TEXT = """" & Replace(TEXT, """", """""") & """" '"を2重にして全体を"で囲う Debug.Print TEXT End Sub
実行結果
<p class="sample">文章</p> "<p class=""sample"">文章</p>"