No.1ベストアンサー
- 回答日時:
こんばんは、
>マクロを教えてください
どこまでをどのように伝えれば良いのかわかりませんが、
コードを書いておきます。
何かで、なので UserFormを使用した例です。
呼び出しSampleは標準モジュールで
UserFormは添付図のような形です。
すべてのシートが同じ状態である事(保護又は非保護)
標準モジュール
Option Explicit
Sub Sample()
Dim cnt As Integer
Dim ws As Worksheet
Dim Ufm_caption As String, Btn_caption As String
For Each ws In Worksheets
If ws.ProtectContents = True Then
cnt = cnt + 1
Ufm_caption = "Unlock with Password"
Btn_caption = "UnProtect"
Else
Ufm_caption = "Lock with Password"
Btn_caption = "Protect"
End If
Next
If cnt > 0 And cnt < Worksheets.Count Then
MsgBox ("Is some sheet protected?")
Exit Sub
Else
UserForm1.Caption = Ufm_caption
UserForm1.CommandButton1.Caption = Btn_caption
UserForm1.Show
End If
End Sub
Formモジュール
Option Explicit
Private Sub UserForm_Initialize()
TextBox1.PasswordChar = "*"
End Sub
Private Sub CommandButton1_Click()
Dim flag As Boolean
Dim ws As Worksheet
Dim msg As String
If CommandButton1.Caption = "Protect" Then
flag = True
msg = "Set the sheet protection"
Else
msg = "Released the sheet protection"
End If
For Each ws In Worksheets
On Error GoTo myErr
If flag = True Then
ws.Protect Password:=TextBox1.Value
Else
ws.Unprotect Password:=TextBox1.Value
End If
Next
MsgBox msg
Unload Me
Exit Sub
myErr:
MsgBox ("The password is incorrect !")
End Sub
以前作ったモノを改造しました。
一応、検証済み
この回答へのお礼
お礼日時:2021/03/18 20:45
すいません。マクロの基本の基本が分かっていません。標準モジュールにすべて貼りつける程度しか分かりません。Formモジュールとはどのように扱うのでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/06/01 14:45
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/11 12:55
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Excel(エクセル) VBA ふたつの同じ様式シートのセルをコピーしたい 2 2023/03/08 15:28
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/10/03 09:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロを複数シートに実行する...
-
VBAでユーザーに別ファイルのシ...
-
エクセルでシートの並び替えで...
-
コマンドボタンがデザインモー...
-
Excelで,特定のシートを開いた...
-
マクロを特定の複数シートで実...
-
Excel2007シート移動のショート...
-
EXCELでマクロを使わずに図形の...
-
複数シートにある列を削除
-
エクセルで、マクロボタンの表...
-
エクセルのチェックボックス
-
左隣のシートをコピーして挿入
-
エクセルVBA/シートのチェ...
-
複数シートの保護・解除
-
VBAマクロが動きません
-
ExcelのSheetに作られたMacro1...
-
曜日によりそれに関する複数のE...
-
マクロ 各シートの決められた位...
-
Excelファイルのすべてのシート...
-
シートを保護した時でも並べ替...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロを複数シートに実行する...
-
コマンドボタンがデザインモー...
-
【 Excel】シートの見出しに自...
-
エクセルを開いたとき常に同じ...
-
EXCELでワークシートを開いたら...
-
エクセルでシートの並び替えで...
-
VBAで条件によってシート見出し...
-
EXCELでマクロを使わずに図形の...
-
マクロを特定の複数シートで実...
-
エクセルの複数のワークシート...
-
複数シートの保護・解除
-
シートを保護した時でも並べ替...
-
EXCELのエラー
-
エクセルで複数のSheetを一括フ...
-
エクセルで回数をカウントする...
-
EXCELの起動時に常に同じ...
-
VBA シート名を先月の名前に...
-
エクセル2013でマクロのボタン...
-
Excelのマクロの呼び出し元を知...
-
Excelで,特定のシートを開いた...
おすすめ情報