石鹸箱 IV

VBA研究所に集まる方々の憩いの場です。みなさん自由にお使いください。
ここでは VBA の質問は厳禁。

4765 / 5126 ツリー ←次へ | 前へ→

【2387】なんか作りたーい つん 09/4/27(月) 18:05

【2645】なんか悔しい。 Jaka 10/3/18(木) 9:59

【2645】なんか悔しい。
 Jaka  - 10/3/18(木) 9:59 -

引用なし
パスワード
   ここの
【64823】Re:CSVの取込について
no=64823

超初心者さんのコードをまねて、CSVファイルを読み見込むコードを作ってみた。
郵政省の郵便番号?CSVファイルを削って、65536行にしたやつ。
1分28秒で終わった。
現在のPCの性能がかなり上がっている元も考慮しても、なんか速すぎるような気が...。
でも、メモリに依存しそうな気もするので、昨年暮れまでのPCで試したら、止まるような気がしないでもない。

しかし、1分28秒で終わってしまうとは思わなかったので、今までの苦労は何なの!って、感じでした。


Sub CSV読み込み()
Dim DDB As DAO.Database
Dim OpnF As Variant
Dim DBPth As String, CSV_F As String
  
OpnF = Application.GetOpenFilename("Excelファイル (*.csv;*.txt), *.csv;*.txt")
If VarType(OpnF) = vbBoolean Then
  Exit Sub
End If
'GetOpenで、カレントディレクトリが移動しているので、そのまま使う。
DBPth = CreateObject("WScript.Shell").CurrentDirectory
CSV_F = Dir(OpnF)

Stt = Now()
Set DDB = DBEngine.Workspaces(0).OpenDatabase(DBPth, False, False, "Text;HDR=NO;")
SQLSt = "SELECT * FROM " & CSV_F

Set DbRs = DDB.OpenRecordset(SQLSt, dbOpenSnapshot)
Range("A1").CopyFromRecordset DbRs

Set DDB = Nothing
Set DbRs = Nothing
MsgBox Format(Now() - Stt, "Hh:mm:ss")
End Sub


なんか知んないけど、URL記載が ht tp・・・とかしてもはねられる。
これもエロエロのせいでこうなったのか。
こいつら、他にやることないのかね。(こういう書き込みに対して)

4765 / 5126 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
219927
(SS)C-BOARD v3.8 is Free