いつもお世話になっております。
今回、VC6.0でExcelを操作するプログラムを作成したんですが
Excelのワークブックの保存がうまくできません。
▼事前条件
・VC++ 6.0
・プログラムはMFC
・Excelは2003
・ClassWizardを使用してタイプライブラリからExcel
操作用クラスを取り込み操作する方法で作成(インポートしない)
Excelにデータを書き込んだ後に、ワークブックの終了を行うと
「'○○○'への変更を保存しますか?」
と上書き保存の警告メッセージが出ると思うんですけど
このメッセージを表示せず、自動で上書き保存して欲しいため
_Application pXlsApp;
pXlsApp.SetDisplayAlerts(FALSE);
・・・(処理省略)・・・
Workbooks pXlsBooks;
・・・(処理省略)・・・
pXlsBooks.Close();
SetDisplayAlertsを使用してメッセージを消すようにしたんですが
このSetDisplayAlertsで「FALSE」の指定を行うと
保存終了ではなく【キャンセル終了】されてしまいます。
デバックで処理を止めて確認しても、
データを書き込むところまでは正常に行われてているのに
ワークブックのクローズ時、保存が破棄され終了してしまいます。
Workbooksではない(_Workbooks等)手法ですと
ワークブック自体の上書き保存の例が出ているのでわかるのですが
Workbooksを使用した場合の上書き保存の方法がわかりません。
自分がこのプログラムを作成するに当たって参考にしたHPでは
pXlsApp.SetDisplayAlerts(FALSE);すると保存終了するような例題なため
あえて保存の処理が記載されていません。
Excelの保存について、どなたか御指導よろしくお願いいたします。
※プログラムの記載を最小限にしてしまったため
不明の場合はお知らせください。
pXlsBooks.Save()でいきませんか