2011-09-23 15 views
1

Excel XPを対象としたC#COMアドインを作成しています。通常のExcelダイアログではなく、自分で保存ダイアログを表示する必要があります。Excel XPで[名前を付けて保存]イベントを無効にする方法COMアドイン

applicationObject.WorkbookBeforeSaveイベントとActiveWorkbook.BeforeSaveイベントを処理し、 'ref bool Cancel'パラメータをtrueに設定しようとしましたが、Excelでは[名前を付けて保存]ダイアログが表示されます。これらのイベントハンドラにブックを保存しても差はありません。

保存ボタンでClickイベントを処理すると、ダイアログはポップアップしませんが、ユーザーがCtrl-Sを押して保存するときには表示されません。

アイデア?

ありがとうございました。

+0

ダイアログのどのようなカスタマイズあなたが達成するために探していますか? –

+0

私は自分のダイアログを表示して、文書をレコード管理システムに保存し、ユーザーがローカルに保存しない限り、Excelダイアログを表示しません。 – AndrewS

+0

レコード管理システムを名前空間の拡張子として登録して、Excelがそのダイアログでそれを見つけることができないのはなぜですか? –

答えて

1

私は解決策を見つけました。 Excel XPでC#を使用していくつかのイベントをキャンセルしようとすると問題が発生したようです。私は、このスレッド内のコードを使用すると、私の問題を解決していることが見つかりました:http://www.tech-archive.net/Archive/Excel/microsoft.public.excel.programming/2009-10/msg04732.html

編集:私の問題と回避策を引き起こし、問題はここに詳述されている:http://support.microsoft.com/kb/830519

関連する問題