A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
パスワードが「xyz」で、すべてのシートの保護を解除するなら、以下のようなマクロを実行してください。
Sub SAMPLE()
Dim WS As Worksheet
For Each WS In Worksheets
WS.Unprotect Password:="xyz"
Next
End Sub
編集後、まとめて保護したい場合は、上記のUnprotectをProtectにしたマクロを実行することになります。
No.2
- 回答日時:
多数のBookがあるとして
他のBookの各シートについてUnprotectしてBookをSave
BK=・・・はBookのあるだけBook名を指定して下さい。
UnprotectするBookと同じディリクトリにPW解除マクロを
記したBookを保存して実行です。
Sub PW解除()
BK = "book1.xls": GoSub PW
BK = "book2.xls": GoSub PW
BK = "book3.xls": GoSub PW
Exit Sub
PW:
FL = ThisWorkbook.Path & "\" & BK
Dim sr
Set sr = CreateObject("Excel.Application")
sr.Workbooks.Open FL, ReadOnly:=False
For i = 1 To sr.Sheets.Count
sr.Sheets(i).Select
sr.ActiveSheet.Unprotect Password:="XXXXXXX"
Next
sr.DisplayAlerts = False
sr.Save
Set sr = Nothing
Return
End Sub
No.1
- 回答日時:
今晩は。
VBAでやるのはありでしょうか?
自分はいつも下のようなコードを書いて実行しています。
Sub 全シートUnProtect()
'パスワード解除の場合
For Each MyWorksheet In Worksheets
MyWorksheet.Activate
If ActiveSheet.Name = "Data" Then
ActiveSheet.Unprotect Password:="9999"
Else
ActiveSheet.Unprotect Password:="9999"
End If
Next
End Sub
Sub 全シートProtect()
'パスワード設定の場合
For Each MyWorksheet In Worksheets
MyWorksheet.Activate
If ActiveSheet.Name = "Data" Then
ActiveSheet.Protect Password:="9999", DrawingObjects:=True, _
contents:=True, UserInterfaceOnly:=True
Else
ActiveSheet.Protect Password:="9999", DrawingObjects:=True, _
contents:=True, UserInterfaceOnly:=True
End If
Next
End Sub
VBAの実行方法については、
エクセルの画面でAltを押しながらF11を押す
→出てきた画面の左側のツリーの中にある、「ThisWorkbook」(緑色のアイコン)をダブルクリック
→右の画面に上のコードをそのままコピペ
→上記の「'パスワード解除の場合 」の所を1回クリック
→画面の上のツールバーにある再生ボタン(三角形)をクリック
でできます。上記の「9999」を好きなパスワードに書き換えて実行してください。
少しでもお役に立てれば。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/03/01 15:44
- Visual Basic(VBA) VBA Userform転記のみ編集可 1 2023/06/29 11:03
- Excel(エクセル) エクセルVBA Workbooks.Addで作成されたブックのシート保護の解除について 1 2023/02/23 08:02
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) excel vba でユーザーフォーム入力ができない 2 2022/12/12 14:42
- その他(Microsoft Office) エクセル VBAについて 2 2022/09/21 22:21
- Excel(エクセル) エクセルでファイル保存時に複数シートのオートフィルタを全て解除したい 1 2023/05/10 13:23
- Excel(エクセル) エクセルで別ファイルから一つのシートだけをコピーする方法(ファイル間でシートだけをコピー) 1 2022/12/01 19:28
- Excel(エクセル) セルの値と同じ名前のシートのセルの結合を解除する方法を教えてください 3 2022/10/03 10:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【VBA】PDF出力に任意のファイ...
-
複数のEXCELシートの印刷順の指定
-
エクセルで設定していないのに...
-
エクセルでページごとにヘッダ...
-
社内SEです。機種、ライセンス...
-
excel串刺し計算で合計値が表示...
-
Excelマクロ パスワードを入力...
-
エクセルのシートごとに連番を...
-
エクセルで、ハイパーリンクの...
-
PowerPointの表内のカンマ
-
EXCELでタイトル行と一番下の行...
-
エクセルの計算式でコンマを付...
-
EXCELで縦の行全てに一括して文...
-
Wordの差し込み印刷で空白行が...
-
名簿の漢字名を関数で半角カナ...
-
エクセル 数式の無効化
-
セル上に表示された見かけ上の...
-
エクセル 印刷範囲外を非表示...
-
エクセルで「-3E+06」と...
-
エクセルでハイパーリンクのコピー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VBA】PDF出力に任意のファイ...
-
エクセルのシートごとに連番を...
-
エクセルでページごとにヘッダ...
-
excel串刺し計算で合計値が表示...
-
エクセルで設定していないのに...
-
エクセルで、ハイパーリンクの...
-
複数のEXCELシートの印刷順の指定
-
Excelマクロ パスワードを入力...
-
Access2010 Excelのエクスポー...
-
既存ワークシートにピボットテ...
-
EXCELでシート名を一括変更したい
-
[EXCEL] あるフィールドをキー...
-
【VBA】#N/Aを無視して串刺し...
-
エクセル VBAでシートのコピー...
-
excelのシート番号を取得したい...
-
Excel 一覧表から特定の数値を...
-
エクセルで シート保護のパス...
-
VBA エクセル RANDBETWEEN関数...
-
この記号、手短(テミジカ)に日本語...
-
エクセルで個人成績グラフをつ...
おすすめ情報