Как использовать автокоррекцию, замену текста или сокращение в Excel VBA - PullRequest
0 голосов
/ 12 октября 2019
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim rngCell As Range

For Each rngCell In Range("A2:A11")

If rngCell.Value = "EC" Then rngCell.Value = "EGG CURRY"
If rngCell.Value = "FC" Then rngCell.Value = "FISH CURRY"

Next

End Sub

Это хороший пример, который я нашел в Интернете. Но мне нужна ссылка на ячейку с другого листа, где в одном столбце я хочу написать «EC», «FC» и т. Д., А в другой столбец - «EGG CURRY», FISH CURRY »и т. Д.

Пожалуйста, помогите

1 Ответ

0 голосов
/ 13 октября 2019

Вы можете использовать VLOOKUP из VBA:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Dim rngCell As Range, m, v

    For Each rngCell In Range("A2:A11")
        v = rngCell.Value 
        If Len(v) > 0 Then

            'See if the value is in your lookup table
            m = Application.Vlookup(v, _
                 ThisWorkbook.Sheets("List").Range("A1:B100"), 2, FALSE)  

            'If found a match then replace with the vlookup result
            If Not IsError(m) Then rngCell.Value = m 

        End If    
    Next

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...