› Sviluppare funzionalita su Microsoft Office con VBA › associare macro a scelta lista drop down
-
AutoreArticoli
-
Allego una versione semplificata di un workbook su cui sto lavorando. In Sheet1 c'è una cella (B4) da cui scegliere un item da una lista drop down. In base al valore scelto, dovrebbe attivarsi una macro, macro3, per fare certe cose. In rete sembra esserci un sostanziale consenso sull'uso del codice qui riportato (inserito in sheet1, non in un modulo):
`Option Explicit Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Week As String If Not Intersect(Target, Range("B4")) Is Nothing Then Week = Range("B4").Value Call Macro3(Week) End If End Sub`Solo che non funziona. Il problema è che la macro scatta PRIMA che si riesca a selezionare la voce nella lista: appena clicco sulla cella per aprire la lista drop down, la macro parte, come se cliccare equivalesse a cambiare il contenuto di B4. Mi aspetterei che la macro scattasse dopo che ho aperto la lista e ho cliccato sulla voce che mi interessa. Siccome pare che la cosa funzioni per tutti, mi chiedo: dove sbaglio? Grazie. PS Uso Excel 2016.
Me ne ero accorto, ma ho avuto qualche problema ad aggiornare il post.
Ciao
il problema è il tipo di Evento utilizzato. Se usi
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
è logico che appena cambi "selezione" la macro scatti.Prova ad usare questo evento:
Private Sub Worksheet_Change(ByVal Target As Range)
Fai sapere. Ciao,
Mario
-
AutoreArticoli