タイトル | : EXCELへの貼り付け処理の高速化 |
記事No | : 3814 |
投稿日 | : 2006/06/09(Fri) 14:19 |
投稿者 | : りょう |
はじめて投稿させて頂きます。 タイトルの件についてになりますが、VB5.0を使用してCSVファイルからExcelシートへ貼り付けを行お うとしてますが、かなり遅くて困っております。 例)ROW=80000 COL=256の場合、1ROWあたり2秒 現状、下記のようにループさせて1セルずつ貼り付けておりますが、他に早くする方法はないでしょう か?お手数ですが宜しくお願いしますm(_ _)m 尚、CSVファイルをShellExecuteを使用してExcelを起動時に読み込ませていましたが、”0001”等のデータは”1”となってしまう為、NGです。(ある列に関しては文字形式にする必要があります。)
<処理の一部を掲載> : : Open fnm For Input As #1 Do Until EOF(1) DoEvents Line Input #1, rec Call PSSeparate(rec, ",", intIdx, strSepData) '読み込んだデータをカンマ区切 りに分解 lngRowCnt = lngRowCnt + 1 'COL<=256 If lngRowCnt > 256 Then Exit Do End If
For lngColCnt = 0 To 255 DoEvents xlApp.Worksheets(1).Cells(lngRowCnt, lngColCnt + 1).Value = strSepData(lngColCnt) Next lngColCnt Loop Close #1 : :
|