我有一個產生大量CSV數據,這是我需要導入到Excel 2013年Excel的VBA從POST數據
我已經找到了直接的方式做到這一點Web服務的Web服務導入CSV :
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & URL, Destination:=Cells(1, 1))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebPreFormattedTextToColumns = True
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
.WorkbookConnection.Delete
End With
不過,我也需要與參數發送給Web服務的有效載荷以便過濾它返回的數據。
我發現這樣做的唯一方法是使用.PostText屬性,但這需要連接爲「URL」。而不是「TEXT」;因此不允許對工作表中的輸出至關重要的.TextFileCommaDelimiter屬性。
有沒有一種簡單的方法來解決這個問題 - 即從Web服務中提取數據,使用後期數據,還要確保excel正確地解釋逗號分隔的格式?
你能分享網絡服務鏈接嗎? – Santosh
我不能害怕。它在一個專用網絡上。 – BBaxter
如果您使Web服務GET而不是POST,那麼您可以通過URL傳遞參數。順便說一句,謝謝你的提示。 –