0

ユーザーがすべてのフィールドに情報を入力できるように保護されていないシートがありますが、シートがソートされないように保護する必要があります。並べ替えは、シート内にある数式とリンクを台無しにするようです。シートを保護しながら並べ替えを許可する方法について多くの助けを見てきましたが、それとは反対の私の問題ではありません。

それはかなり簡単なはずです。これが私が今持っているものです:

Sub ProtectRevHistory()

Worksheets("Revision History").Protect Contents:=False, AllowSorting:=False, UserInterfaceOnly:=True

End Sub

これでエラーは発生しませんが、並べ替えは保護されません。それは可能ですか?

最終的に、それを機能させることができれば、Workbook_Open()イベントから実行したいと思いますが、このコードを ThisWorkbook オブジェクトに配置すると、Password パラメーターをオフのままにしたにもかかわらず、開くときにパスワードを要求されます。パスワードの入力を押すだけでエラーが発生し、並べ替えも保護されません。

4

1 に答える 1

0

それで、私は故障して、マクロ エディターを使用して、それがこれを理解するのに役立つかどうかを確認し、それを機能させました。その後、Workbook Open イベントに入れることで、open で実行できるようになりました。外観は次のとおりです。

Private Sub Workbook_Open()


Sheets("Revision History").Protect Password:="StrongPasswordHere", DrawingObjects:=False, Contents:=True, Scenarios:= _
    False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
    AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
    :=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
    AllowDeletingRows:=True, AllowFiltering:=True, AllowUsingPivotTables:= _
    True


End Sub

おそらく、すべてのパラメーターがリストされているときに機能する、私が完全には理解していないパラメーターについて何かがあるのでしょう。わからない。しかし、少なくともこれは、それを必要とする他の人のために今そこにあります! これの良いところは、[データ] タブのすべての並べ替え機能がグレー表示されていることです。フィルターで並べ替えようとしても、うまくいきません。成功!!

于 2013-05-21T19:08:45.857 に答える