Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Elenco a tendina

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Elenco a tendina

Postdi Tequi » 17/01/20 12:05

Buongiorno a tutti,
sono qui perche' vorrei creare un elenco a tendina in Excel,nel quale devo avere la possibilita' di,
selezionare la voce che mi occorre e automaticamente spostarmi sulla pagina che contiene i dati della voce selezionata.

Es.
nella prima pagina devo creare 3 elenchi a tendina
1- Trattamenti viso ( tabella con i vari trattamenti)
2- Trattamenti corpo
3- Apparecchi

di ognuno di queste tre apriro' per ognuno 4 pagine dedicate a loro,per registrare il trattamento che è stato fatto data e valore.

Spero sia chiaro quanto scritto
ringrazio in anticipo
Allego Link file http://www.filedropper.com/provacontabilitanuova
Tequi
Avatar utente
Tequi
Utente Junior
 
Post: 31
Iscritto il: 21/08/12 15:32

Sponsor
 

Re: Elenco a tendina

Postdi Dylan666 » 17/01/20 17:46

Avatar utente
Dylan666
Moderatore
 
Post: 38509
Iscritto il: 18/11/03 16:46

Re: Elenco a tendina

Postdi Anthony47 » 17/01/20 18:18

La "Convalida" vedo che l'hai impostata in C2 per una sola classe di servizi; supponiamo che le altre due vengano impostate in C3-C4.
Userai poi una macro sull'evento WorksheetChange per attivare il foglio target. Il codice potrebbe essere:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myArea As String
'
myArea = "C2:C4"        '<<< Le celle con la convalida
'
If Not Application.Intersect(Target, Range(myArea)) Is Nothing Then
    If Target.Count = 1 Then
        On Error Resume Next: Application.EnableEvents = False
            Sheets(Target.Value).Select
        On Error GoTo 0: Application.EnableEvents = True
    End If
End If
End Sub

Va messo nel "Modulo di Classe del foglio HOME"; vedi viewtopic.php?f=26&t=103893&p=647675#p647675

Richiede che i valori inseriti nelle celle con Convalida siano esattamente uguali ai nomi dei fogli.

Una alternativa piu' flessibile potrebbe seguire invece questo schema:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myArea As String
'
myArea = "C2:C4"        '<<< Le celle con la convalida
'
If Not Application.Intersect(Target, Range(myArea)) Is Nothing Then
    If Target.Count = 1 Then
        On Error Resume Next: Application.EnableEvents = False
            If Target.Value = "Scelta1" Then                '<<< Il valore in Convalida
                Sheets("PrimoFoglioScelto").Select          '<<< Il foglio da attivare
            ElseIf Target.Value = "Scelta2" Then
                Sheets("SecondoFoglioScelto").Select
            ElseIf Target.Value = "Scelta3" Then
                Sheets("TerzoFoglioScelto").Select
'   altre ElseIf per ognuna delle altre scelte
           
            End If
            Sheets(Target.Value).Select
        On Error GoTo 0: Application.EnableEvents = True
    End If
End If
End Sub

Il vantaggio e' che c'e' piu' flessibilita' nella scelta dei fogli da attivare, ma la macro andra' aggiornata man mano che modifichi le convalide. Ved tu...

Se invece preferisci non usare le macro allora vedi il link suggerito da Dylan (messaggio precedente)

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 17167
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Elenco a tendina

Postdi Tequi » 25/01/20 14:24

Ho provato
rivate Sub Worksheet_Change(ByVal Target As Range)
Dim myArea As String

myArea = "C2:C8"

If Not Application.Intersect(Target, Range(myArea)) Is Nothing Then
If Target.Count = 1 Then
On Error Resume Next: Application.EnableEvents = False
If Target.Value = "Scelta1" Then
Sheets("Guinot").Select
ElseIf Target.Value = "Scelta2" Then
Sheets("Hydraderm Cellular Energy").Select
ElseIf Target.Value = "Scelta3" Then
Sheets("Phytomer").Select


End If
Sheets(Target.Value).Select
On Error GoTo 0: Application.EnableEvents = True
End If
End If
End Sub


non succede nulla
Avatar utente
Tequi
Utente Junior
 
Post: 31
Iscritto il: 21/08/12 15:32

Re: Elenco a tendina

Postdi Anthony47 » 27/01/20 01:47

Per prima cosa ti raccomando di verificare che il codice sia stato inserito nel modulo giusto, come descritto nel mio messaggio precedente:
[Il codice] Va messo nel "Modulo di Classe del foglio HOME"; vedi viewtopic.php?f=26&t=103893&p=647675#p647675


Se la posizione e' corretta allora spiega che cosa fai tu, cosa vorresti che succedesse, cosa invece succede (evitando la parola "Niente" e sinonimi!); se puoi aggiungere anche il file aggiornato allora sarebbe anche meglio.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 17167
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Elenco a tendina":


Chi c’è in linea

Visitano il forum: Nessuno e 52 ospiti