OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

Excel操作で「コンポ-ネントが利用できません」と表示される。

  • すぐに回答を!
  • 質問No.238492
  • 閲覧数60
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 50% (8/16)

SQL Server から RDO を利用して結果をEXCELファイルに出力するという
プログラムを作成しています。
しかし、データが大量にあると途中でフリーズ(?)してしまいます。
画面をクリックしたり、キーボードのキーを押下すると以下のようなメッセージ
が表示されてしまいEXCEを強制終了するしか方法がなくなってしまいます。
メッセージ:「コンポ-ネントが利用できません」
データ件数が3000件ぐらいまでなら問題なく動作するのですが
4000件以上になると発生します。
環境の問題なのでしょうか? それともソース上になにか問題があるのでしょうか?
どなたか教えてください。 よろしくお願いします。

環境:
  OS Win98
  VB 6.0 SP3
  EXCEL 2000
以下 ソースの抜粋
****************************************************************  
  Dim lApp As Excel.Application
Dim lBook As Excel.Workbook
Dim lSheet As Excel.Worksheet
Dim lRow As Long
Dim lCol As Long
Dim lValue As String

Set lApp = CreateObject("EXCEL.APPLICATION")
Set lBook = lApp.Workbooks.Add
Set lSheet = lBook.Sheets(1)

lRow = 0

'*-----------------------------*
''データをシートにセット
'*-----------------------------*
Do Until lRst.EOF

lRow = lRow + 1

For lCol = 1 To lRst.rdoColumns.Count
lValue = GFNC_ChgStr(lRst.rdoColumns(lCol - 1).Value)
lSheet.Cells(lRow, lCol).Value = lValue
Next lCol

lRst.MoveNext
Loop
Set lSheet = Nothing

lBook.SaveAs FileName:='C:\AAA.XLS'
lBook.Close: Set lBook = Nothing
lApp.Quit
Set lApp = Nothing
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル13

ベストアンサー率 59% (729/1235)

セルに一つずつ代入するのではなく、VBの2次元配列からRangeに一括して代入しましょう。
お礼コメント
tomotomo0906

お礼率 50% (8/16)

ありがとうございました!
おかげさまで解決しました。
投稿日時 - 2002-03-20 17:57:19
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ