すべての行の最後に段落記号付きのCSVファイルがあります.VBAを使用してCSVファイルをループしてExcelシートにコピーする必要があります。私が使用しています以下のコード、段落記号付きのVBAでCSVファイルをループする
Dim filePath As String
Dim row_number As Integer
Dim col_number As Integer
Dim lineFromFile As String
Dim lineItems As Variant
fileName = "D:\test.csv"
Open filePath For Input As #1
row_number = 1
Do Until EOF(1)
Line Input #1, lineFromFile
lineItems = Split(lineFromFile, ",")
col_number = 1
For i = 0 To 15
Sheets("Sheet1").Rows(row_number).Columns(col_number + i).value = lineItems(i)
row_number = row_number + 1
Loop
Close #1
Image for CSV file showing paragraph marker
問題は、コントローラが最後に段落マーカーに達したときにEOFが真取得され、それが最初の行のみを読んで何がさを見つけてください。これに関するいくつかの情報を入力してください。
まず、最後のEOF値が何であるかを確定してから、その値に達するまで実行して、今度は1で停止してください。 – Luuklag
EOF(1)が値または行番号でない場合、Doの1はファイルの識別です。 2番目のファイルを使用している場合、EOF(2)まで実行されます。 –
"Dim"ステートメント、ファイルオープンなどのコードをもっと表示するかもしれないので、完全に理解しています。 – FreeMan