土曜日、02 10月2021
  1 返信
  7.4K訪問
誰かがこの問題で私を助けることができますか? このスクリプトについて。
Sub
ProtectSheetCheckSpellCheck()
'Update by Extendoffice 2018/11/2
Dim
xRg 
As
Range
On
Error
Resume
Next
Application.ScreenUpdating = 
False
    
With
ActiveSheet
        
.Unprotect (
"123"
)
        
Set
xRg = .UsedRange
        
xRg.CheckSpelling
        
.Protect (
"123"
)
    
End
With
Application.ScreenUpdating = 
True
End
Sub


これをありがとう。 実行するたびにシート保護設定が変更されることを除けば、うまく機能しています。 シートは保護されていますが、ユーザーがセル、列、および行をフォーマットできるように設定されています。 ただし、このコードを実行すると、保護はデフォルトに戻ります。 設定を保持するにはどうすればよいですか?
それに対する答えは; 必要な基準を許可することにより、.protectコードを変更する必要があります。 Worksheets( "Sheet1")。Protect、:= False、AllowInsertingColumns:= False、AllowInsertingRows:= False、:= False、AllowFiltering:= False、 
したがって、可能であれば正しいコードを手伝ってください。AllowInsertingRows.Protect( "Welkom")で動作させることができず、それから?????? thismyワークシート(タブ)のビットは、たとえばP&AまたはBIOpと呼ばれます

元のスクリプトで正しく取得できますか?

 
こんにちはMic@sha、

ユーザーがセル、列、行をフォーマットできるようにするには、以下のコードを使用してください。

Sub ProtectSheetCheckSpellCheck()
'Update by Extendoffice 2021/12/20
Dim xRg As Range
On Error Resume Next
Application.ScreenUpdating = False
With ActiveSheet
.Unprotect ("123")
Set xRg = .UsedRange
xRg.CheckSpelling
'Password, Allow Formatting Cells, Allow Formatting Columns, Allow Formatting Rows
.Protect Password:="123", AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowFormattingRows:=True
End With
Application.ScreenUpdating = True
End Sub


アマンダ
  • ページ:
  • 1
この投稿に対する返信はまだありません。