[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/06/29(Wed) 11:15
投稿者名:ももたろう
Eメール:
URL :
タイトル:
EXCELに高速で貼り付ける方法
こんにちは
EXCELにデータを貼り付けていますが、データ量が多く、時間がかかってしまうので、
高速に処理する方法がありましたら、教えて頂けないでしょうか?

貼り付けるデータは配列に格納しています。
そして、下記のように貼り付けており、データ量は60列×100〜1000行です。
xlBook.Sheets(Sheets.Count).Range("B" & a).value = sNewmake(iNew1).Name
貼りつけている最中はEXCELを非表示にしています。

どなたか分かる方お願いします。

投稿時間:2005/06/29(Wed) 11:29
投稿者名:るしぇ
Eメール:
URL :
タイトル:
Re: EXCELに高速で貼り付ける方法
配列って言ってもユーザ定義型なら無理。
Variant 型の2次元配列に入れなおして1ステップで可能です。
1秒かからないでしょう。
[VB6.0]
    Dim Datax() As Variant
    'Datax の中身を適当な2次元配列に設定
    Set xlSheet = xlBook.Sheets(Sheets.Count)
    xlSheet.Range("$B$1").Resize(UBound(Datax, 1), UBound(Datax, 2)).Value = Datax

投稿時間:2005/06/29(Wed) 18:17
投稿者名:ももたろう
Eメール:
URL :
タイトル:
Re^2: EXCELに高速で貼り付ける方法
るしぇ様

返信ありがとうございます。
いままで数分かかっていた処理が1秒で出来るようになりました。
ありがとうございます。

> 配列って言ってもユーザ定義型なら無理。
> Variant 型の2次元配列に入れなおして1ステップで可能です。
> 1秒かからないでしょう。
> [VB6.0]
>     Dim Datax() As Variant
>     'Datax の中身を適当な2次元配列に設定
>     Set xlSheet = xlBook.Sheets(Sheets.Count)
>     xlSheet.Range("$B$1").Resize(UBound(Datax, 1), UBound(Datax, 2)).Value = Datax