Выпадающий список и затем MSG Prompt - PullRequest
0 голосов
/ 18 марта 2020

:

У меня есть 5 значений в раскрывающемся окне, которое охватывает ячейки C7:AD18, идея заключается в том, что когда пользователь выбирает одного из пользователей, выбирают, например, Value1, всплывающее окно Msgbox "Thanks for Selecting Value1"

Проблема, с которой я столкнулся, заключается в том, что единственный способ, которым я могу это сделать, это настроить программирование для КАЖДОЙ ячейки:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C7")) Is Nothing Then
   Select Case Range("C7")
      Case "Value1": Macro1
      Case "Value2": Macro2
      Case "Value3": Macro3
      Case "Value4": Macro4
      Case "Value5": Macro5
   End Select
End IF
End Sub

Затем мне пришлось добавить запись для C8, C9, C10 Et c, я пытался использовать диапазон "C7:AD18", но я не могу заставить его работать вообще, он продолжает возвращаться к отладке.

1 Ответ

2 голосов
/ 18 марта 2020

Возможно следующее, которое проверяет, попадает ли Target в этот диапазон, используя Intersect.

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.CountLarge <> 1 Then Exit Sub

    If Not Intersect(Target, Me.Range("C7:AD18")) Is Nothing Then
        Select Case Target.Value
            Case "Value1": Macro1
            Case "Value2": Macro2
            Case "Value3": Macro3
            Case "Value4": Macro4
            Case "Value5": Macro5
       End Select
    End If
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...