エクセル2003、2007、2010で使用するエクセルのツールを作成しています。

エクセル2010、エクセル2007においてVBA(マクロ)を記述し「ファイル」ー「上書き」を非表示(使用禁止)にしたいです。
エクセル2003では、以下のようにしています
Application.CommandBars("Worksheet Menu Bar").Reset
With Application.CommandBars("Worksheet Menu Bar").Controls(1)
.Controls(4).Enabled = False
Application.CommandBars("Standard").FindControl(, 3).Enabled = False
End With

尚、おそらく共通化するのは、難しいエクセルのバージョンを識別して、実行するサブルーチンを変える方法でもよいと思いいろいろ調べてみたのですが、VBA(マクロ)初心者であるので行き詰ってしまっております。

アドバイスよろしくお願い申し上げます。

回答の条件
  • 1人10回まで
  • 13歳以上
  • 登録:2012/02/23 11:56:14
  • 終了:2012/03/01 12:00:03

回答(0件)

回答はまだありません

  • id:SALINGER
    バージョンの違いはApplication.Versionで取得できるから分岐はできるけど、
    雑感としてCommandBarsの仕様が2007以降と前とでだいぶん違うような気がする。
  • id:hawk007
    SALINGER様
    おせわになっております。

    苦肉の策で
    以下の様にして上書き機能を無効にしました。

    If SaveAsUI = False Then
    MsgBox "上書きボタンは使用できません。名前を付けて保存を選択して下さい。"
    Cancel = True
    Else



     名前をつけて保存


     end if

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません