掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DBGridのデータをExcelに書き出す際の,画面表示について (ID:19870)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんにちわ。いつも書き込みの方を参考にさせていただいてます。 少し悩んでおりますので,相談にのってもらえると嬉しいです。 TQury → TDataSetProvider → TClientDataSet → TDataSource → TDBGrid とデータを表示しています。 TDBGridに表示しているデータを,Excelに書き出す処理はできているのですが, その際に,DBGridのカレントレコードを表すカーソルも同時に動いてしまいます。 Excelにデータ書き出し中は,最前面に処理中を促すメッセージを表示させ, DGBrid1のEnabledをFalseにして,TDBGridの表示には変化がないようにしようとしています。 DBGridのカーソルを動かさずにExcelへのデータを抽出するには, どのようにすればいいのでしょうか?ご存じの方がいれば手法を教えていただくと幸いです。 ※現在は,Excelへのデータ書き出し中は,TDBGridを非表示にしてTPanelで蓋みたいにして隠しています(汗) ===================================================================== var Excel: Variant; xlsWkb: Variant; xlsWks: Variant; i, j: Integer; try ・ ・【Excel起動処理】 ・ {Excelの行タイトル設定} for i := 0 to DBGrid1.Columns.Count - 1 do begin xlsWks.Cells[1, i + 1].Value := DBGrid1.Columns[i].Title.Caption; end; {Excelにデータを書き込み} ClientDataSet1.First; for j := 0 to ClientDataSet1.RecordCount - 1 do begin for i := 0 to DBGrid1.FieldCount - 1 do begin xlsWks.Cells[j + 2, i + 1].Value := DBGrid1.Columns[i].Field.Text; end; ClientDataSet1.Next; end; ・ ・【ファイル保存】 ・ finally ・ ・【Excel解放処理】 ・ end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.