VBAでcsvファイルを開く
QueryTableで開くと速いという記事を見つけたので試してみた。別に早くない。区切り文字が決まっているならline inputで1行づつ読んでsplitして配列に入れて貼り付けるほうが早い。
sub open_csv()
Dim msh, fname
fname ="C:\local\test.csv"
msh ="test"
Sheets.Add(After:=Sheets(Sheets.Count)).Name = msh
Set ws = Sheets(msh)
Set qt = ws.QueryTables.Add(Connection:="TEXT;" & fname, Destination:=ws.Range("A1"))
With qt
.TextFilePlatform = 932 ' 文字コードを指定
.TextFileParseType = xlDelimited ' 区切り文字の形式
.TextFileCommaDelimiter = True ' カンマ区切り
.RefreshStyle = xlOverwriteCells ' セルに上書き
.Refresh ' データを表示
.Delete ' CSV との接続を解除
End With
End Sub
0 件のコメント:
コメントを投稿