2016-07-26 79 views
0

我有一張備忘單,用於轉換逗號分隔列表中的訂單列表。我被要求複製它,但我並沒有簡單地從列表中返回值,而是被要求將它們放在SQL查詢同事的引號中。所以列表如: A B C 應返回爲「A」,「B」,「C」。以下是我創建CSV列表的代碼。帶查詢標記的SQL查詢分隔列表

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的新手,但我試着玩弄自己的代碼。添加更多引號,使用代字符符號不起作用。這基本上耗盡了我的工具包。謝謝你的幫助。

+0

你應該更清楚地知道它出錯的地方。我們需要更多的努力,而不是「沒有工作」。 –

回答

0

嘗試...

If Not IsEmpty(entry.Value) Then 
    csvRangeOutput = csvRangeOutput & """" & entry.Value & """" & "," 
End If 
+0

謝謝xelvis!這完全返回了值。我最終陷入了詭計,並在谷歌搜索的基礎上製作了一個宏,以便如何將值放入引號中,然後將其鏈接到我的同事的按鈕上。我希望我早些時候查閱了在每一邊使用4個引號的規則。 – bryann

0

您可以將chr(34)用作雙引號。或者你可以做一個雙,雙引號(「」)在VBA串完成時被解釋爲一個雙引號:

csvRangeOutput = csvRangeOutput & chr(34) & entry.Value & chr(34) & "," 

csvRangeOutput = csvRangeOutput & """" & entry.Value & """" & ","