Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[EXCEL] attivare disattivare menù a discesa

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

[EXCEL] attivare disattivare menù a discesa

Postdi marte1503 » 26/04/11 21:01

Ciao a tutti.
Dal momento che non so se sia possibile realizzare quello che sto per chiedere e per evitare di far perdere tempo a chi legge la mia domanda, la scrivo in maniera volutamente sommaria. Se è una cosa fattibile darò maggiori informazioni.

In A1 ho inserito una convalida da elenco, il menù a discesa mi propone le opzioni A, B, C
B1 invece è una cella che utilizzo per inserire manualmente del testo.
Vorrei che selezionando in A1 l’opzione A oppure B la cella B1 rimanesse una normale cella di testo dove poter scrivere a mio piacimento, se invece selezionassi l’opzione C B1 dovrebbe offrirmi anch’essa un menù a discesa con altre opzioni.
Può una cella trasformarsi da cella libera a cella condizionata??
Grazie
marte1503
Utente Senior
 
Post: 174
Iscritto il: 08/01/10 20:43
Località: Como

Sponsor
 

Re: [EXCEL] attivare disattivare menù a discesa

Postdi ricky53 » 26/04/11 22:33

Ciao,
prova con questo esempio (da adattate alle tue celle e da utilizzare come spunto di partenza).
Copia il codice nel "Foglio" ove vuoi avere la convalida

Quanto scritto è utilizzabile con Office 2003.

Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$1" And Target = "C" Then
        With Range("B1").Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                xlBetween, Formula1:="=Elenco_Dati"
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
        End With
    Else
        Range("B1").Validation.Delete
    End If
End Sub


"Elenco_Dati", che vedi applicato in "Formula1", è un "Nome Elenco" che dovrai definire al fine di utilizzarlo nella convalida, dovrà contenere le varie scelte della convalida.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: [EXCEL] attivare disattivare menù a discesa

Postdi marte1503 » 27/04/11 21:12

Ciao Ricky, e anche questa volta grazie per il supporto!
Visto che la cosa si può fare dò maggiori dettagli per poterti far capire la situazione dei miei fogli.
Per cominciare
I fogli interessati per questa operazione sono 2: (per comodità mia non li ho rinominati)
foglio8 (che nel mio programma corrisponde a gennaio) è quello dove ho un menù a discesa e vorrei il secondo come dicevo nel post di ieri,
foglio4 (che corrisponde alle Uscite Previste) sarebbe quello in cui dovrei ricavare l’intervallo nominato.
In foglio8, l’intervallo in questione è B17:F17. Il primo menù a discesa è in C17(che è un intervallo nominato e ho chiamato “Categoria”), accanto, la cella D17 sarebbe quella che deve mutare da cella libera a menù a discesa,(questo alla condizione che in C17 abbia selezionato la voce -Uscite Previste-. A questo punto mi trovo in difficoltà, perché non sono capace di creare l’intervallo nominato in quanto non posso prevedere l’intervallo……. Ti spiego:
Le voci che vorrei vedere col menù a discesa, sono elencate in una TABELLA di foglio4 (si chiama Tabella1),
questa Tabella inizialmente ha un intervallo A8:D8 (in A7:D7 ho i titoli e in A9:D9 ho la riga del totale) comunque questo intervallo viene incrementato da una macro che ho creato col registratore, la quale aggiunge una riga di dati a ogni attivazione(dati che imposto in una riga sovrastante la Tabella). In questa Tabella, archivio tutte le spese che prevedo nell’arco dell’anno.
La 1° delle 4 colonne è quella dedicata ai mesi
La 2° è quella dove identifico la categoria della spesa (es. Auto, Casa, Palestra ecc.)
La 3° è quella per la descrizione (es. Tagliando, Manutenzione caldaia, Abbonamento per tre mesi)
La 4° è quella degli importi.
Secondo me dovrebbe funzionare in questo modo:
seleziono “uscite previste” in foglio8 C17,
essendo foglio8 gennaio, bisognerebbe filtrare la tabella 1 per ottenere solo i dati di gennaio,
a questo punto, fatta la scrematura la cella D17 deve mostrarmi solo i dati filtrati
quando poi seleziono la voce che mi interessa dovrebbe inserire l’importo corrispondente in foglio8 F17,(anche quest’ultima cella citata F17, dovrebbe essere di libera immissione di dati nel caso in cui in C17 fosse presente una condizione <>da -Uscite Previste-)

Ps. Nella risposta di ieri ho notato che non hai menzionato nessuna macro da inserire nel modulo, è sufficiente inserirla nel foglio?
Grazie Ricky!
marte1503
Utente Senior
 
Post: 174
Iscritto il: 08/01/10 20:43
Località: Como


Torna a Applicazioni Office Windows


Topic correlati a "[EXCEL] attivare disattivare menù a discesa":


Chi c’è in linea

Visitano il forum: Nessuno e 14 ospiti