|
▼bykin さん:
>こんばんわ。
>
>>ワークブックのBeforeSaveイベントで、自力でエクセルの保存処理
>>を行っている
>
>ってのは
>
>>' EXCEL用のファイルダイアログを表示し、EXCEL形式で保存処理
>
>とかの箇所で、GetSaveAsFilenameを使ってるってことなんかな?
>
>ツールバーのボタンのクリックを取得して判断するしかないやろねー
>↓こんなんかな?
>
>(全部ThisWorkbookモジュール)
>
>Private WithEvents Btn1 As CommandBarButton
>Private WithEvents Btn2 As CommandBarButton
>Private SaveFlg As Long
>
>Private Sub Btn1_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
> SaveFlg = 1
>End Sub
>
>Private Sub Btn2_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
> SaveFlg = 2
>End Sub
>
>Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
> Dim FileSpec As Variant
>
> If SaveAsUI Then
> Select Case SaveFlg
> Case 1
> Cancel = True
> FileSpec = Application.GetSaveAsFilename(, "Excel ブック (*.xls), *.xls")
> If FileSpec <> False Then SaveAs FileSpec, xlNormal
> Case 2
> Cancel = True
> FileSpec = Application.GetSaveAsFilename(, "Web ページ (*.htm), *.htm")
> If FileSpec <> False Then SaveAs FileSpec, xlHtml
> End Select
> SaveFlg = 0
> End If
>End Sub
>
>Private Sub Workbook_Open()
> With Application.CommandBars
> Set Btn1 = .FindControl(ID:=748)
> Set Btn2 = .FindControl(ID:=3823)
> End With
>End Sub
>
>一旦保存して、再度開くと有効になります。
>試してみてな。
>ほな。
返事が遅れてすみません。
>>' EXCEL用のファイルダイアログを表示し、EXCEL形式で保存処理
>とかの箇所で、GetSaveAsFilenameを使ってるってことなんかな?
その通りです。
ありがとうございます。byKinさんの方法で検討してみます。
うーん、やっぱ通常のイベント引数では取得できないのですね・・・
ponponさん、byKinさんありがとうございました。
|
|