2009-09-01 5 views
0

私はExcelシート(Microsoft Accessから来ている)でレポートを生成しています。
100レコードの場合、2〜3秒でExcelシートを生成できます。しかし、2000以上のレコードでは10分かかります。Excelレポート生成に長時間を要する

Excelシートでレポートを生成する方法はありますか?

答えて

0

Tonyの回答がうまくいかない場合は、アプリケーションのプロファイルを作成する必要があります。私はあなたのためにそれを行うツール(例えば、あなたがネットで持っているもの)を知らないが、ボトルネックがどこにあるかを見るために、あなたはいつも "debug.print now()&"であなたの出力コードを振りかけることができる。

セス

+0

私はコードを自分で見てきました。ボトルネックはタイトループ内でセルを1つずつ更新しています。どんなデータ量でも痛いほど遅くなります。 CopyFromRecordsetは非常に高速ですが。 –

-2

this pageに顧客のコメントによって示されるように、VB.NETからExcelを使用するよりもはるかに高速です。

ライブサンプルhereが表示され、無料トライアルをダウンロードできます。

免責事項:私はあなたの問題を理解していた場合、私はスプレッドシートギアLLC

+0

VB.Net製品がAccessでどのように動作するのかよく分かりません。 –

+0

私の悪い - 私は質問を読んだとき、私はそれがアクセスデータベースに接続してExcelブックを生成するVB.NETアプリケーションだったという明らかに間違った印象を得ました... –

1

を所有し、これはコーディングを必要としない非常に簡単な修正です。

  1. データをエクセル
  2. Go]を開き - > "外部データの取り込み" - > "データのインポート"
  3. あなたのAccessファイルと選択のテーブル/クエリを選択してください。
  4. データを更新するときはいつでも、インポート領域を右クリックし、更新をクリックします。

後で、いくつかのVBAを自動更新し、XLを保存するようにコードすることができます。

1

このクエリをAccessに書き込みます。

SELECT * INTO [Excel 8.0;Database=FilePath\123.xls].[Sheet1] FROM TABLE_NAME 
+0

なぜ "Excel 9.0"ではないのですか? –

関連する問題