How to add double quotes in a string literal

2019-06-16 09:44发布

问题:

Example code:

Dim a As String
a = 1234,5678,9123

I want to add literal double quotes to the variable a

Expected Output:

a = "1234,5678,9123"

How do I format the string so when I print it, it has double quotes around it?

回答1:

If you want to include " in a string, supply "" where you want the quote to appear. So your example should read...

a = """1234,5678,9123"""


回答2:

The current answers are correct and valid but sometimes the following can improve readability:

a = Chr$(34) & "1234,5678,9123" & Chr$(34)


回答3:

To make Chr$(34) more readable:

Dim quote as string
quote = Chr$(34)
a = quote & "1234,5678,9123" & quote

This makes it easier to get the correct number of " symbols everywhere and is readable.



回答4:

a = """1234,5678,9123"""

or

a= """" & a & """"


回答5:


No need to add any kind of complicated functions just use following example to insert double in text box or rich text box.

Dim dquot=""""
TextBox1.AppendText("Hello " &dquot &"How are you ?" &quot)

or

Dim dquot=""""
RichTextBox1.AppendText("Hello " &dquot &"How are you ?" &quot)


回答6:

You just use Chr$(34) to insert a double quotes.

Eg:

Dim i as String

i = Chr$(34) & "Hello World" & Chr$(34) 'Shows "Hello World"


回答7:

I used the Chr$(34) method, like this:

Sub RunPython()
    Dim scriptName As String
    Dim stAppName As String
    scriptName = ActiveWorkbook.Path & "\aprPlotter.py"
    stAppName = "python.exe " & Chr$(34) & scriptName & Chr$(34)
    Debug.Print stAppName
    Call Shell(stAppName, vbHide)
End Sub

I was using the same path for the python script as the Excel Workbook, to keep it easier for the users. I monkeyed with the quotes for 45 minutes before I found this thread. When the paths are sourced from active working locations (especially ones with spaces in Windows), I think this is a preferred method. Hopefully, this will help someone else.