SQL 查询的带引号的分隔列表
Delimited List with Quotation Marks for SQL query
我有一个作弊 sheet 我用它来转换逗号分隔列表中的订单列表。我被要求复制它,但不是简单地从列表中返回值,我被要求将它们放在引号中以便 SQL 查询同事。所以像这样的列表:
一种
乙
C
应返回为 "A"、"B"、"C"。下面是我创建 CSV 列表的代码。
Function csvRange(myRange As Range)
Dim csvRangeOutput
Dim entry As Variant
For Each entry In myRange
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & entry.Value & ","
End If
Next
csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function
我是 VBA 的新手,但我尝试使用代码自己弄明白了。添加更多引号,使用波浪符号不起作用。这基本上耗尽了我的工具包。感谢您的帮助。
您可以使用 chr(34) 作为双引号。或者你可以做一个双引号(“”),当在 VBA 字符串中完成时,它被解释为一个双引号:
csvRangeOutput = csvRangeOutput & chr(34) & entry.Value & chr(34) & ","
或
csvRangeOutput = csvRangeOutput & """" & entry.Value & """" & ","
尝试...
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & """" & entry.Value & """" & ","
End If
我有一个作弊 sheet 我用它来转换逗号分隔列表中的订单列表。我被要求复制它,但不是简单地从列表中返回值,我被要求将它们放在引号中以便 SQL 查询同事。所以像这样的列表: 一种 乙 C 应返回为 "A"、"B"、"C"。下面是我创建 CSV 列表的代码。
Function csvRange(myRange As Range)
Dim csvRangeOutput
Dim entry As Variant
For Each entry In myRange
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & entry.Value & ","
End If
Next
csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function
我是 VBA 的新手,但我尝试使用代码自己弄明白了。添加更多引号,使用波浪符号不起作用。这基本上耗尽了我的工具包。感谢您的帮助。
您可以使用 chr(34) 作为双引号。或者你可以做一个双引号(“”),当在 VBA 字符串中完成时,它被解释为一个双引号:
csvRangeOutput = csvRangeOutput & chr(34) & entry.Value & chr(34) & ","
或
csvRangeOutput = csvRangeOutput & """" & entry.Value & """" & ","
尝试...
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & """" & entry.Value & """" & ","
End If