私が作業しているプロジェクトでは、CSVファイルを読み込み、解析して目的の列を見つけ、別のワークシートに必要な列を印刷する必要があります。私の問題の一部は、道に沿ってVBAを学んでいるので、私は行方不明の単純なものになるはずです。 私は印刷するためにさまざまな方法を試しましたが、どれも私が望むような列には印刷されません。すでにこの質問に回答しているスレッドがある場合は、申し訳ありませんが見つかりません。 これまでのところ、私はCSVファイルを読み込み、すべての情報を2D配列に格納することができました。ここにコードがあります:VBAの列別Excelセルへの印刷
i = 0 'This is the x value of the 2d array
'Populate the 2d array with the CSV File Data
Do Until csvFile.AtEndOfStream
sLine = csvFile.ReadLine
sArray() = Split(sLine, ";")
For j = 0 To UBound(sArray)
stArray(i, j) = sArray(j)
Next j
i = i + 1
Loop
今、私は配列に目的の列を印刷したい部分にあります。私はチェックを始める前にこれを行うことができることを確認するためにテストプリントを試みているので、2D配列の代わりにテスト用に単一次元配列を使用しています。 印刷方法を理解したら、目的の列を探すif文を使って2次元配列を実行します。
ここは私のテストコードです:。
Dim o As Object
Set o = CreateObject("excel.application")
o.Visible = True
o.Workbooks.Add
For r = 0 To UBound(sArray)
o.Sheets("test").Range(o.Cells(3, 1).Address, o.Cells(3, r).Value = sArray(r)
Next r
は、代わりに私は今、ループ内の行の実行時エラー「1004」「アプリケーション定義またはオブジェクト定義のエラー」で迎えされてる 私はこの問題を解決する方法を知るには、VBAに関する十分な経験や知識がありません。私の経験はJavaとPythonです。
同時に、セルの列に配列を印刷する方法は?右ですか?
これについての助けがあれば助かります。あなた。
はご回答いただきありがとうございます。私はあなたの声明の論理を研究していますので、これは無知な質問のように思えます。 セル(i、j)= array(i、j)を印刷する方法はありませんか? – Soolkiki
答えを更新しました。あなたはそれをすることができますが、はるかに遅いです。 –
素晴らしいです、ありがとうございます! – Soolkiki