• 締切済み

VBAで“ダブルクォート”の表示

メッセージボックスに、 “ダブルクォート” と表示させる方法がわかりません。 MsgBox("“ダブルクォート”") ←エラー MsgBox("““ダブルクォート””") ←半角の「"」に置き換わる などで上手くいかず、手詰まりになっています。 ・VBA中で記述できないので、ファイルから取得する。 ・CHR()の文字コードで指定 など、試してみる項目はありますが、もっと簡単には出来ないものでしょうか? Word2003, VBA6.0? の環境です。

みんなの回答

回答No.4

「ダブルクォート」は変数に代入するとか、メッセージボックスの詳細は省いていますが MsgBox Chr$(34) + "ダブルクォート" + Chr$(34) なんかどうでしょうか?

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

Sub test01() s = " ’ABC’ " MsgBox Mid(s, 2, 5) MsgBox """" & "ABC" & """" End Sub をやって見てください。 前後に全角スペースを入れてます。’も全角。 半角クオート+全角スペース+全角ダブルクオート+全角ABC+全角ダブルクオート+全角スペース+半角クオートです。

すると、全ての回答が全文表示されます。
noname#118114
noname#118114
回答No.2

VBでは自動変換というプログラム上迷惑な機能があるため、 CHR()関数を使うしかないです。

すると、全ての回答が全文表示されます。
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

ホント余計なことですね。 直接は書けないので msg = StrConv("""ダブルクオート""", vbWide) MsgBox (msg) みたいな感じではだめでしょうか? ダブルクォートが逆さまにならないですけど。 どうしてもと言う場合にはやはり、 msg = ChrW(&H201C) & "ダブルクオート" & ChrW(&H201D) のようにしないとしょうがないような気がします

neKo_deux
質問者

お礼

> msg = ChrW(&H201C) & "ダブルクオート" & ChrW(&H201D) ChrW関数は知りませんでした。 Chr(&H20) & Chr(&H1C) のようにしなきゃならない?と思っていましたので、文字コードもわかりましたし、これだけでもかなり助かります。

すると、全ての回答が全文表示されます。

関連するQ&A