Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


32023 / 76734 ←次へ | 前へ→

【49950】Re:書き出し処理速度について
発言  Hirofumi  - 07/6/30(土) 9:53 -

引用なし
パスワード
   何を持って遅いのか?、速いのか?善く解りませんが?
書き出す部分が遅いのでは無く、全体を見直した方が善いような気がします

>数値データに変換した配列はDATA(256,120000)としており、

大きな配列変数を確保していると、リソース不足に成りスワップ等が発生して
処理全体が遅く成ると思いますので

>  バイナリデータを読み込み、数値データに変換、

の部分を一括して配列に格納するのでは無く、
どうやって、変換しているのかコードが解ら無いので何とも言えませんが?
出来れば行単位の処理にした方が、幾らか速く成ると思います

また、

>Open "c:\test.txt" For Output As #2
>For i = 1 To 120000
> For j = 1 To 256
>  Print #2, Data(j, i); Chr(9);
> Next j
> Print #2, Chr(10);
>Next i
>Close #2

ですが、書き込み処理と、文字列の連結とでは(どちらも時間が掛る?)、
文字列の連結の方が、まだましな様な気がしますので、以下の様にして見ては?

  Dim strBuff As String
  
  Open "c:\test.txt" For Output As #2
  
  For i = 1 To 120000
    strBuff = Data(1, i)
    For j = 2 To 256
      strBuff = strBuff & vbTab & Data(j, i)
    Next j
    strBuff = strBuff & vbLf
    Print #2, strBuff
  Next i
  
  Close #2

4 hits

【49945】書き出し処理速度について じょじょ 07/6/29(金) 23:11 質問
【49948】Re:書き出し処理速度について neptune 07/6/30(土) 9:34 発言
【49950】Re:書き出し処理速度について Hirofumi 07/6/30(土) 9:53 発言
【49952】Re:書き出し処理速度について Hirofumi 07/6/30(土) 10:04 発言
【49953】Re:書き出し処理速度について neptune 07/6/30(土) 11:17 発言
【49972】Re:書き出し処理速度について じょじょ 07/7/1(日) 15:41 お礼
【49975】Re:書き出し処理速度について neptune 07/7/1(日) 16:51 発言
【49976】Re:書き出し処理速度について Hirofumi 07/7/1(日) 20:06 発言
【49978】Re:書き出し処理速度について neptune 07/7/1(日) 22:51 発言
【49982】Re:書き出し処理速度について ichinose 07/7/1(日) 23:36 発言

32023 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free