簡體   English   中英

Private Sub Worksheet_Change 結合兩個代碼

[英]Private Sub Worksheet_Change combine two codes

我正在嘗試將這兩個代碼結合起來,第一個代碼是在更改單元格 m3 的值時更改工作表的名稱,第二個代碼是在修改單元格后阻止單元格。 我是 VBA 的新手,所以我不知道如何組合它們。

代碼 1

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$M$3" Then RenameSheet
End Sub

代碼 2

Private Sub Worksheet_Change(ByVal Target As Range)
Dim xRg As Range

   On Error Resume Next
    Set xRg = Intersect(Range("F6"), Target)
    If xRg Is Nothing Then Exit Sub

     Target.Worksheet.Unprotect Password:="1234"

     xRg.MergeArea.Locked = True

     Target.Worksheet.Protect Password:="1234"

End Sub

子重命名表代碼也是:

Sub RenameSheet()

    Dim rs As Worksheet
    For Each rs In Sheets
    If rs.Name <> "MENU" And rs.Name <> "CAJA_CONTABILIDAD" Then
        rs.Name = "Vale " & rs.Range("M3")
    End If
    Next rs

    If Target.Address = "$M$3" Then RenameSheet
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$M$3" Then
        RenameSheet
        Exit Sub
    End If

    Dim xRg As Range
    Set xRg = Intersect(Range("F6"), Target)
    On Error Resume Next
    If Not xRg Is Nothing Then
        Target.Worksheet.Unprotect Password:="1234"
        xRg.MergeArea.Locked = True
        Target.Worksheet.Protect Password:="1234"
    End If

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM