過去ログ

                                Page     540
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼マクロ記録でのCSVファイルオープンの速度  koji 03/1/13(月) 17:17
   ┗Re:マクロ記録でのCSVファイルオープンの速度  りん 03/1/13(月) 17:52
      ┗Re:マクロ記録でのCSVファイルオープンの速度  koji 03/1/13(月) 21:01
         ┗Re:文字ばっかり  りん 03/1/13(月) 21:57
            ┗Re:文字ばっかり  koji 03/1/14(火) 1:49

 ───────────────────────────────────────
 ■題名 : マクロ記録でのCSVファイルオープンの速度
 ■名前 : koji
 ■日付 : 03/1/13(月) 17:17
 -------------------------------------------------------------------------
   CSVファイルをEXCEL上で開く際、[開く]-*.csvでファイル選択した場合と、
その操作をマクロ記録し、実行した場合とで開く速度が大幅に違う(後者が圧倒的に遅い)のですが、この違いは何故なのでしょう?
手動オープンと同等の早さにする方法はあるのでしょうか?
ご教授のほどお願いします。

コードは以下です。
Sub Macro1()
  ChDir "D:\test"
  Workbooks.Open Filename:= _
    "D:\test\aaa.csv"
End Sub
 ───────────────────────────────────────  ■題名 : Re:マクロ記録でのCSVファイルオープンの速度  ■名前 : りん <rin_doggie@hotmail.com>  ■日付 : 03/1/13(月) 17:52  -------------------------------------------------------------------------
   koji さん、こんばんわ。

>CSVファイルをEXCEL上で開く際、[開く]-*.csvでファイル選択した場合と、
>その操作をマクロ記録し、実行した場合とで開く速度が大幅に違う(後者が圧倒的に遅い)のですが、この違いは何故なのでしょう?
 うちの環境(XL97&WinMe)では大差ないのですが。

Sub TEST()
  With Application
   .Calculation = xlCalculationManual
   .ScreenUpdating = False
  End With
  '
 Workbooks.Open Filename:= "D:\test\aaa.csv"
  '
  With Application
   .Calculate
   .Calculation = xlCalculationAutomatic
   .ScreenUpdating = True
  End With
End Sub

こんな感じです。
全部のセルにみっちり「1」を入れたcsvを作ってマクロで開いたところ、1分17秒かかりました。再計算&画面更新を切ったら1分14秒でした(上記例)。普通に開いてもそれくらいかかりました(こちらは時計を見ながら計ったのでおおまか)。
 ───────────────────────────────────────  ■題名 : Re:マクロ記録でのCSVファイルオープンの速度  ■名前 : koji  ■日付 : 03/1/13(月) 21:01  -------------------------------------------------------------------------
   りん さん、こんばんわ。ご回答ありがとうございます。
確かに全部のセルにみっちり「1」を入れたcsvでは開く速度に大差はありませんでした。
わたしの環境はXL2000&Win2000ですが。
どうやら文字列を含んだ場合に現象が発生するようです。
例えば横10X縦1000に あああ 等と入力した場合、開く速度に差が出ています。
マクロと手動で、メモリの使い方でも違うのでしょうか・・・。
 ───────────────────────────────────────  ■題名 : Re:文字ばっかり  ■名前 : りん <rin_doggie@hotmail.com>  ■日付 : 03/1/13(月) 21:57  -------------------------------------------------------------------------
   koji さん、こんばんわ。

>例えば横10X縦1000に あああ 等と入力した場合、開く速度に差が出ています。
 出ました出ました。
 普通に開くと5秒くらいで、マクロだと25秒くらいでした。OpenTextも試しましたが同じくらいかかりました。ゲージの伸びも悪いし何故でしょうね。

 お役に立てなくてすみません。
 (Line)Inputで取得していく方が早いかもしれませんね。
 ───────────────────────────────────────  ■題名 : Re:文字ばっかり  ■名前 : koji  ■日付 : 03/1/14(火) 1:49  -------------------------------------------------------------------------
   りん さん、ありがとうございました。
Line Inputで取得していく方向で行きます。
ちなみにマクロ実行で遅いのはEXCEL97のバグらしいです。。
EXCEL2000でも遅かったですが・・。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 540