2010-02-09 4 views
1

Ниже макрос вытягивает значение из ячейки, которая ссылается на диапазон, а затем действует соответственно. Как я могу изменить это, чтобы только запустить регистр для соответствующей записи в ячейке?Вызов отдельной ячейки вместо диапазона

Private Sub Worksheet_Change(ByVal Target As Excel.Range) 
    If Target.Address = "$C$5" Then 
     Select Case Target.Value 
     Case Phones4U, P4U 
     Case MBNA, MBNA1 
     'Case Is = O2, The_Problem_Network 
     'Case Is = TMobile, TMobile 
     'Case Is = 3, Run_3 
     'Case Is = Orange, Orange 
     'Case Is = Carphone_Warehouse, CPW 
     'Case Is = Virgin_Media, VirginMedia 
     'Case Is = Virgin_Mobile, VirginMobile 
     'Case Is = Lifestyle_Group, LSG 
     'Case Is = BT, BT 
     'Case Is = Barclays, Barclays 
     'Case Is = Nat_West, NatWest 
     'Case Is = RBS, RBS 
     'Case Is = Unipart, Unipart 
     'Case Is = Vodafone_Group, Vodafone 
    End Select 
    End If 
End Sub 

Благодарим за помощь.

+0

ли вы имеете в виду вы хотите, чтобы проверить, содержит ли целевая ячейка C5 текст «Мбна», «Phones4u» и т.д.? ... которые ваш код в настоящее время не делает. – hawbsl

+0

Когда конечный пользователь выбирает название компании из выпадающего списка, например. MBNA Мне нужен код выше, чтобы запустить соответствующий макрос, связанный с этим названием компании. Позади ячейки C5 - выпадающий список всех названий компаний. Поэтому, когда конечный пользователь выбирает MBNA, все макросы запускаются вместо одного, связанного с MBNA. Как заставить макросы запускать только выбранное название компании в C5, а не все названия компаний из выпадающего списка (диапазон)? –

+0

Как вы выбрали раскрывающийся список (существуют различные способы создания выпадающего списка в Excel) – hawbsl

ответ

3

Я думаю, что синтаксис, как это должно работать без проблем

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.Address = "$C$5" Then 
     Select Case Target.Value 
     Case "Phones4U" 
       P4U 
     Case "MBNA" 
       MBNA1 
     Case "O2" 
       The_Problem_Network 
     ' etc 
    End Select 
    End If 

End Sub 
+0

Спасибо gd047! Он отлично работает! –

Смежные вопросы