0
小さなマクロを作成して、MS Excel 2010(「MS Office Professional Plus 2010」の違いがある場合に備えて)で[名前を付けて保存]ダイアログを使用するようにしました。同じ名前。xlDialogSaveAsでExcelがクラッシュする
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Not SaveAsUI Then
msg = "Use the 'Save As' dialog to save a new version of the file"
Style = vbOKCancel
Query = MsgBox(msg, Style)
If Query = vbOK Then
Application.Dialogs(xlDialogSaveAs).Show
ElseIf Query = vbCancel Then
Cancel = True
End If
End If
End Sub
私は "Ctrl-S"を押してプロンプトを表示します。私は "OK"をクリックしてSaveAsダイアログを使ってファイルを別の名前で保存します。しかし、ダイアログの「保存」ボタンを押すとExcelがクラッシュします。
おそらくxlDialogSaveAsコマンドを間違った方法で使用していますが、なぜこれが機能しないのかわかりません。デバッガにエラーメッセージはありません。ワークブックのどこにも他のVBAコードはありません。ブックを.xlsmファイルとして保存しようとしています(SaveAsダイアログが正しくデフォルト設定されています)。
誰かが私を助けることができる人がいますか?
私はちょうどそれを試してみました(2013エクセル)と、それ私のために働く。どのバージョンのExcelをお持ちですか?どのファイルタイプを保存していますか?別のファイル名を試しましたか?このワークブックに他のコードがありますか? –
こんにちはマイケル、私のアプローチが完全に間違っていなかったことを知ってよかった...!私はExcel 2010を使用しています。それは可能かもしれませんが、私はいくつかの古いフォーラムエントリでそのコマンドを見つけたのでそれは驚くべきことです。 SaveAsダイアログのデフォルトは ".xlsm"で、そのまま保存します。私がしているのは名前を変えることだけです。私は別の名前を試みたが役に立たなかった。ブックにはどこにも他のコードはありません。 –
SaveAsを使用するだけでExcelがクラッシュするのはなぜですか?どこにしようとしてもそれを保存しても、名前をつけてもクラッシュしますか?それは実際に保存される前に、ファイルを保存してクラッシュまたはクラッシュしますか? –