Как я могу сопоставить имя вкладки листа с определенным значением ячейки автоматически. Другими словами, если я изменю значение этой ячейки, имя вкладки листа автоматически изменится на это значение.

Пожалуйста, сделайте ответ шаг за шагом.

Спасибо вам, мои друзья.

1 ответ1

1

Смотрите комментарии в коде. Этот код должен быть прикреплен к листу, в котором записи в ячейке A1 изменят название листа. Для этого щелкните правой кнопкой мыши на вкладке имени листа и выберите « View Code . Скопируйте код и вставьте его в область кода (большая панель в правой верхней части редактора кода).

Чтобы изменить ячейку для записей об изменении имени с "A1", просто измените адрес ячейки в строке If Target.Address = "$A$1" Then . Не забудьте включить знаки доллара.

Sub Worksheet_Change(ByVal Target As Range)
    'Worksheet change event occurs when a change is made
    'to a cell's value in this sheet

    'Target is the cell (or cells) in which values have been changed

    'Trigger worksheet name change only when a new name is 
    'entered in cell A1
    If Target.Address = "$A$1" Then

        'Don't change name if a formula is entered into cell A1
        'since worksheet change event does not trigger when
        'a formula is recalculated (in other words, name will not
        'change when the value of the formula changes
        If Not Target.HasFormula Then

            'Don't change name if no value in cell A1
            If Not Target.Value = vbNullString Then

                 'Do custom error handling in order to
                 'gracefully catch entry of invalid sheet names
                 'and other (less likely) errors
                 On Error GoTo ErrHandler

                 'The event will trigger only for the sheet to
                 'which the code for the change event is attached,
                 'so okay to refer to ActiveSheet
                 ActiveSheet.Name = Target.Value

            End If

        End If

    End If

    Exit Sub

ErrHandler:
    Warn user of error 
    MsgBox "Error " & Err & ":" & Error(Err)

    'Turn default error checking back on
    On Error GoTo 0

    'And end the sub
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .