1. ホーム
  2. excel

[解決済み] vbaで文字列の中に二重引用符を入れるにはどうしたらいいですか?

2022-05-16 18:24:19

質問

ダブルクォートを含むセル内にvbaでif文を挿入したい。

以下は私のコードです。

Worksheets("Sheet1").Range("A1").Value = "=IF(Sheet1!B1=0,"",Sheet1!B1)"

二重引用符のため、文字列の挿入に問題があります。二重引用符をどのように扱えばよいのでしょうか?

どのように解決するのですか?

引用符を二重にして処理するのが一番簡単な方法だと思います。

Worksheets("Sheet1").Range("A1").Formula = "IF(Sheet1!A1=0,"""",Sheet1!A1)" 

CHR(34)*を使いたがる人もいます。

Worksheets("Sheet1").Range("A1").Formula = "IF(Sheet1!A1=0," & CHR(34) & CHR(34) & ",Sheet1!A1)" 

*注:CHAR()はExcelのセル式として、例えばセルに"=CHAR(34)"と記述して使用しますが、VBAコードにはCHR()関数を使用します。