アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルで質問します。
シートの保護を掛けると、グループ化が無効になってしまうため、
下記の質問サイトでやり方を見つけ、マクロを設定しみました。

https://detail.chiebukuro.yahoo.co.jp/qa/questio …

Private Sub Workbook_Open()
Sheets("進捗管理表①").EnableOutlining = True
Sheets("進捗管理表①").Protect Password:="12080508", DrawingObjects:=True, _
contents:=True, UserInterfaceonly:=True
End Sub

シートの保護をかける際、許可する設定に、書式の設定や列・行の設定を許可にして
保護をかけたのですが、一度エクセルを閉じて再び開くと、シート保護で設定した
セル・列・行の書式設定が外されてしまいます。再度保護時に設定しても、開く度に元に戻ってしまうのですが、どうすればシート保護・グループ化を有効にしたまま、ロックされていないセルの書式を許可する事ができますか?

A 回答 (2件)

「表示」「ユーザー設定のビュー」で確認(「ビュー」内にユーザー名がある場合は、シート保護を解除する前に削除)

    • good
    • 0
この回答へのお礼

ありがとうございます
ユーザー設定のビューを開いて、ビューを確認してみましたが、ユーザー名は何も入っていませんでした。
他に何か確認・設定することがありましたら、またご教授いただけると幸いです。

お礼日時:2019/06/26 17:54

やってみると、こういうのは頭で考えても出来ないのですね。

気が付かない不具合が出てきたので、試行錯誤してしまいました。今回は、マクロ側で指定してあげないと、デフォルト値になってしまうのが原因だと思います。

それと、パスワードの書き方は、わたし流ですが、問題は、セル・列・行の書式設定の書式の内容にもよるのでしょうけれども、2つないし3つを許可してあげないと、思ったように書式の設定の変更ができません。それでも、書式の変更自体は、UserInterfaceOnlyがあるので、マクロで行ってもよいわけです。

'//ThisWorkbook モジュール
Private Const PSW As String = "12080508"
Private Sub Workbook_Open()
With Worksheets("進捗管理表①")
 '//必要なセルのみロックを予め外しておいた
 .Protect Password:=PSW, _
  DrawingObjects:=True, Contents:=True, UserInterfaceOnly:=True, Scenarios:= _
  True, AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowFormattingRows:=True
  .EnableOutlining = True 'UserInterfaceOnly があるので後先は関係がありません。
  .EnableSelection = xlNoRestrictions 'デフォルトでNoRestrictionなので、ふつうはいらないです。
End With
End Sub
    • good
    • 0
この回答へのお礼

ご回答いただきありがとうございます。
こちらで実行したところ、エクセルを閉じて再度開いても書式変更が可能になりました。
迅速なご回答いただき大変助かりました。ありがとうございました。

お礼日時:2019/06/27 09:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!