人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセル2003のマクロについて教えて下さい。

ファイルを閉じるというマクロを作りたいです。
その時に、

1)シートの保護を設定 + 上書きしてもいいですか?はい、いいえ
のコメントを表示したいのですが、
どのようにすればよいのでしょうか?

2)マクロ → 編集が表示されないようにしたい。
これをするとシート保護のパスワードが表示されてしまい、結局意味がないので。

Sub Auto_Close()
ActiveSheet.Protect Password:="1234", DrawingObjects:=True, _
contents:=True, UserInterfaceOnly:=True
ThisWorkbook.Close False
End Sub

はダメでした。
なにぶん、素人なので分かるように詳しく教えて下さい。
お願いします。

●質問者: msvista
●カテゴリ:コンピュータ
✍キーワード:password sub エクセル コメント ダメ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Mook
●60ポイント ベストアンサー

ThisWorkbook の下に、下記のコードでどうでしょうか。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
 If MsgBox("シートの保護+上書きをしてもいいですか", vbYesNo) = vbNo Then
 Cancel = True
 Exit Sub
 End If
 
 ActiveSheet.Protect Password:="1234", DrawingObjects:=True, contents:=True, UserInterfaceOnly:=True
 ThisWorkbook.Save
 Cancel = False
End Sub

VB のコード自体の保護は、

ツール⇒VBAプロジェクトのProperty⇒「保護」タブ

でパスワードを設定すれば、コードを見れない状態にできます。

http://www.happy2-island.com/excelsmile/smile01/capter00600-01.s...

◎質問者からの返答

先頭の

Sub Auto_Close()

ThisWorkbook.Close False

は削除してください。

繰り返しですが、コードは標準モジュールやシートモジュールではなく、ThisWorkbook モジュールの下に置いてください。

とやったのですが、

マクロが使用できないか、無効になっています。と表示されます。

マクロのセキュリティも最低にしているのですが。。。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ