Excel 2013 にインポートする必要がある大量の CSV データを生成する Web サービスがあります。
これを行う簡単な方法を見つけました:
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 がコンマ区切り形式を正しく解釈するようにしますか?