掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Excelプレビュー表示時のメニューボタンを無効にするには? (ID:20489)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんにちは。データをExcelに書き出して,まいと〜くFAXを用いてデータを送信しています。 送信前にExcel機能のプレビューを用いて印刷イメージを表示させようとしています。 ただこの時に【次ページ】,【前ページ】,【閉じる】ボタン以外を無効にしようと 考えているのですが,どうもうまくいかないのです。 いろいろ調べて下記のソースは組んでみたのですが知識不足の為,動かない原因が特定できていません。 API関数部分(SetTimer)の制御がうまくできてないのかなとは思っているんですが・・・ 実際にpEnablePreviewTimer関数部分が走っていない現状です。 どなたか解決方法ご存じの方がいれば教えてもらえると幸いです。(長文申し訳ありません) //=========================================================== procedure TForm1.Button1Click(Sender: TObject); var Excel: Variant; //Excelアプリケーション xlsWkb: Variant; //Excelワークブック xlsWks: Variant; //Excelワークシート begin ・ Excel接続 ・ EnablePreview(xlsWks); ・ Excel解放 ・ end; procedure TForm1.EnablePreview(xlsWks: Variant); var TimerID: WORD; procedure pEnablePreviewTimer(hWnd: WORD; uMsg: WORD; idEvent: WORD; dwTime: WORD);stdcall; var i: Integer; begin hWnd := FindWindowExA(0, 0, 'XLMAIN', nil); hWnd := FindWindowExA(hWnd, 0, 'EXCELC', nil); for i := 1 to 9 do begin case i of 2,3,4,5,6,8:EnableWindow(GetDlgItem(hWnd, i), False); else EnableWindow(GetDlgItem(hWnd, i), True); end; end; end; begin TimerID := SetTimer(0, 0, 0, @pEnablePreviewTimer); try xlsWks.PrintPreview; finally KillTimer(0, TimerID); end; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.