-1
にcsvファイルの文字列を置くの最速の方法は、こんにちは、私はVBA - スプレッドシート
request = CreateObject("WinHttp.WinHttpRequest.5.1")
そして、文字列オブジェクトにレスポンスを渡します。文字列を新しい行で分割し、各行をコンマで再分割するだけで、文字列をループさせるよりも良い方法があるのだろうかと思っていました。
にcsvファイルの文字列を置くの最速の方法は、こんにちは、私はVBA - スプレッドシート
request = CreateObject("WinHttp.WinHttpRequest.5.1")
そして、文字列オブジェクトにレスポンスを渡します。文字列を新しい行で分割し、各行をコンマで再分割するだけで、文字列をループさせるよりも良い方法があるのだろうかと思っていました。
は、以下のことを試してみてください。
Dim csv As String
csv = "" 'get the CSV into this variable
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Const ForReading = 1, ForWriting = 2
Dim txt As Object
Set txt = fso.OpenTextFile("c:\output.csv", ForWriting, True)
txt.Write csv
txt.Close
Set txt = Nothing
Dim xlApp As New Excel.Application 'This may not be necessary if this code is running within an existing Excel application
xlApp.Workbooks.OpenText "c:\output.csv"
あなたはOpenText
のパラメータでビットをいじる必要があるかもしれません。
参考文献:
あなたは '.csv'拡張子を持つCSVを保存することができた場合は、VBAを使用してExcelで開くことができるはずです。 YMMV、私はMicrosoftのCSV解析が少し壊れていると聞いてきた。 –
@ZevSpitzありがとうございます。それが文字列を直接解析するよりも速いか遅いかについての考えはありますか?私はディスクの読み書きが潜在的に遅いと思っていますか? –
CSVの大きさ、独自のカスタムコードのデバッグに費やす時間、ExcelでCSVを解析するうえでどれくらい時間がかかるかによって異なります。私は他の何よりも前にこの方法を試してみて、それが十分に良いかどうかを見ていきます。多分5〜6行のコードでしょう。 –