How to add double quotes in a string literal

前端 未结 7 1982
孤街浪徒
孤街浪徒 2021-01-17 15:09

Example code:

Dim a As String
a = 1234,5678,9123

I want to add literal double quotes to the variable a

Expected Output

相关标签:
7条回答
  • 2021-01-17 15:33

    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"
    
    0 讨论(0)
  • 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.

    0 讨论(0)
  • 2021-01-17 15:48

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

    a = Chr$(34) & "1234,5678,9123" & Chr$(34)
    
    0 讨论(0)
  • 2021-01-17 15:52
    a = """1234,5678,9123"""
    

    or

    a= """" & a & """"
    
    0 讨论(0)
  • 2021-01-17 15:58

    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"""
    
    0 讨论(0)
  • 2021-01-17 15:58

    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.

    0 讨论(0)
提交回复
热议问题