Я хочу заменить символ определенной цифрой. Какую формулу мне нужно ввести, чтобы это сделать?

Я хочу заменить символ определенной цифрой. Какую формулу мне нужно ввести, чтобы это сделать?

Так, например, если я введу букву «W», я хочу, чтобы ячейка автоматически заменила ее на число 4000, а если я введу букву «B», я хочу, чтобы ячейка заменила ее на число 3000. Если я затем изменю букву, я хочу, чтобы ячейка автоматически заменила ее на новое число.

решение1

Вы можете попробовать этот код:


Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub

If Target.Columns.Count = 1 Then   

If Target.Value = "W" Then
Target.Value = 4000

ElseIf Target.Value = "X" Then
Target.Value = 5000

ElseIf Target.Value = "Y" Then
Target.Value = 6000

End If
Endif

End Sub

Как это работает:

  • Либо нажмитеАlt+F11.
  • Илирщелкните на вкладке «Лист», затем во всплывающем меню нажмитеВновый код.

Откроется окно редактора VBA.

  • Скопия &псохраните этот код.

  • НажиматьСtrl+s для сохранения.

  • Теперь нажмитеАlt+Q для возврата к листу.

  • Теперь, как только вы введете W, X или Z в столбец A, этот код заменит его на присвоенный номер.

Примечание.

  • Вы можете добавить больше условий.
  • Алфавиты и соответствующие цифры можно редактировать.
  • Вы можете настроить столбец, используя строку кода.

If Target.Columns.Count = 1 Then

Здесь 1 представляет любой один столбец.

Также должно быть,

If Target.Columns.Count >= 1 And Target.Columns.Count <= 5 Then

Если вы хотите, чтобы работало только в столбце A, то лучше использовать этот код.

Private Sub Worksheet_Change(ByVal Target As Range)


If Not Application.Intersect(Target, Me.Range("A:A")) Is Nothing Then

If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub


If Target.Value = "W" Then
Target.Value = 4000


ElseIf Target.Value = "X" Then
Target.Value = 5000

ElseIf Target.Value = "Y" Then
Target.Value = 6000

End If
End If


End Sub

Примечание.

  • Это Me.Range("A:A"))можно редактировать и следует Me.Range("A:C"))также Me.Range("A1:A100")).
  • Сохранить книгу какМВключить acro ( .xlsm ).

Связанный контент