0
Public Function Import_CSV (SheetName) As String
Dim ws As Worksheet, strFile As String
Set ws = ActiveWorkbook.Sheets(SheetName) 'set to current worksheet name
strFile = Application.GetOpenFilename("CSV Files (*.csv),*.csv", , "Please selec .csv file...")
Dim wbkS As Workbook
Dim wshS As Worksheet
Dim wshT As Worksheet
Set wbkS = Workbooks.Open(Filename:=strFile)
Set wshS = wbkS.Worksheets(1)
LastRow = wshS.UsedRange.Rows.Count
LastCol = wshS.UsedRange.Columns.Count
With ws
For i = 1 To LastRow Step 1
For j = 1 To LastCol Step 1
.Cells(i, j).Value = wshS.Cells(i, j)
Next
Next
End With
wbkS.Close
ActiveWorkbook.Save
End Function
私は上記のコードを.csvファイルからExcelシートにコピーすることを試みました。私のCSVファイルは大きくなっています(2000行と2000列)。その時間がかかる。多くの時間をかけずにデータをExcelにコピーできる他の方法はありますか?大きなデータをcsvからExcelにコピー
この問題について私を助けてください。
ループを と置き換えます。ws.Range(ws.Cells(1,1)、ws.Cells(LastRow、LastCol))。値= wshS.Range(wshS.Cells(1,1)、wshS)。 Cell(LastRow、LastCol))。値が と十分速ければ試してください。 –
こんにちはアクセル、それは完璧に働いた。コピーは数秒で実行されます。ありがとう.... – surendra