Note: The other languages of the website are Google-translated. Back to English

Come creare un elenco a discesa con più selezioni o valori in Excel?

Per impostazione predefinita, puoi selezionare solo un elemento in un elenco a discesa di convalida dei dati in Excel. Come puoi effettuare selezioni multiple nell'elenco a discesa come mostrato nella gif di seguito? I metodi in questo articolo possono aiutarti a risolvere il problema.


Crea un elenco a discesa con più selezioni con codice VBA

Questa sezione fornisce due codici VBA per aiutarti a effettuare selezioni multiple negli elenchi a discesa in un foglio di lavoro. I due codici VBA possono ottenere:

Codice VBA 1: consente selezioni multiple in un elenco a discesa senza duplicati
Codice VBA 2: consenti selezioni multiple in un elenco a discesa senza duplicati (elimina gli elementi esistenti selezionandolo di nuovo)

È possibile applicare uno dei seguenti codici VBA per effettuare selezioni multiple in un elenco a discesa in un foglio di lavoro in Excel. Si prega di fare come segue.

1. Aprire il foglio di lavoro contiene gli elenchi a discesa di convalida dei dati da cui si desidera effettuare selezioni multiple. Fare clic con il pulsante destro del mouse sulla scheda del foglio e selezionare Visualizza codice dal menu di scelta rapida.

2. Nel Microsoft Visual Basic, Applications Edition finestra, copia il codice VBA sottostante nella finestra del codice. Vedi screenshot:

Codice VBA 1: consente selezioni multiple in un elenco a discesa senza duplicati

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2019/11/13
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
    If xRng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Not Application.Intersect(Target, xRng) Is Nothing Then
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or _
                   InStr(1, xValue1, ", " & xValue2) Or _
                   InStr(1, xValue1, xValue2 & ",") Then
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & ", " & xValue2
                End If
            End If
        End If
    End If
    Application.EnableEvents = True
End Sub

3. premi il altro + Q i tasti per chiudere il file Microsoft Visual Basic, Applications Edition finestra.

Ora puoi selezionare più elementi dall'elenco a discesa nel foglio di lavoro corrente.

Supponiamo che tu abbia selezionato un elemento accidentalmente e devi rimuoverlo senza cancellare l'intera cella e ricominciare da capo. Il seguente codice VBA 2 può farti un favore.

Codice VBA 2: consenti selezioni multiple in un elenco a discesa senza duplicati (elimina gli elementi esistenti selezionandolo di nuovo)

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2023/01/11
    'Updated by Ken Gardner 2022/07/11
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    Dim semiColonCnt As Integer
    Dim xType As Integer
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    
    xType = 0
    xType = Target.Validation.Type
    If xType = 3 Then
        Application.ScreenUpdating = False
        Application.EnableEvents = False
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or xValue1 = xValue2 & ";" Or xValue1 = xValue2 & "; " Then ' leave the value if only one in list
                    xValue1 = Replace(xValue1, "; ", "")
                    xValue1 = Replace(xValue1, ";", "")
                    Target.Value = xValue1
                ElseIf InStr(1, xValue1, "; " & xValue2) Then
                    xValue1 = Replace(xValue1, xValue2, "") ' removes existing value from the list on repeat selection
                    Target.Value = xValue1
                ElseIf InStr(1, xValue1, xValue2 & ";") Then
                    xValue1 = Replace(xValue1, xValue2, "")
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & "; " & xValue2
                End If
                Target.Value = Replace(Target.Value, ";;", ";")
                Target.Value = Replace(Target.Value, "; ;", ";")
                If Target.Value <> "" Then
                    If Right(Target.Value, 2) = "; " Then
                        Target.Value = Left(Target.Value, Len(Target.Value) - 2)
                    End If
                End If
                If InStr(1, Target.Value, "; ") = 1 Then ' check for ; as first character and remove it
                    Target.Value = Replace(Target.Value, "; ", "", 1, 1)
                End If
                If InStr(1, Target.Value, ";") = 1 Then
                    Target.Value = Replace(Target.Value, ";", "", 1, 1)
                End If
                semiColonCnt = 0
                For i = 1 To Len(Target.Value)
                    If InStr(i, Target.Value, ";") Then
                        semiColonCnt = semiColonCnt + 1
                    End If
                Next i
                If semiColonCnt = 1 Then ' remove ; if last character
                    Target.Value = Replace(Target.Value, "; ", "")
                    Target.Value = Replace(Target.Value, ";", "")
                End If
            End If
        End If
        Application.EnableEvents = True
        Application.ScreenUpdating = True
    End If
End Sub

Note:

1). I valori duplicati non sono consentiti nell'elenco a discesa.
2). Il codice VBA 2 sopra è stato fornito dal nostro entusiasta utente Ken Gardner l'2022/07/11.
3). Si prega di salvare la cartella di lavoro come Cartella di lavoro abilitata per Excel per mantenere il codice funzionante in futuro.
4). Dopo aver aggiunto il codice VBA 2, puoi rimuovere un elemento esistente selezionandolo nuovamente nell'elenco a discesa. Guarda la gif qui sotto:


Crea facilmente un elenco a discesa con più selezioni con uno strumento straordinario

Qui consigliamo vivamente il Elenco a discesa a selezione multipla caratteristica di Kutools for Excel per te. Con questa funzione, puoi selezionare facilmente più elementi dall'elenco a discesa in un intervallo specificato, foglio di lavoro corrente, cartella di lavoro corrente o tutte le cartelle di lavoro aperte di cui hai bisogno.

Prima di applicare Kutools for Excel, Per favore scaricalo e installalo prima.

1. Clic Kutools > Menu `A tendina > Elenco a discesa a selezione multipla > Impostazioni. Visualizza gli screenshot:

2. Nel Impostazioni elenco a discesa a selezione multipla finestra di dialogo, configurare come segue.

  • 2.1) Specificare l'ambito di applicazione nel file Applica a sezione. In questo caso, seleziono Foglio di lavoro corrente dal Ambito specificato menu `A tendina;
  • 2.2) nel Direzione del testo sezione, seleziona una direzione del testo in base alle tue esigenze;
  • 2.3) nel Separatore casella, inserisci un delimitatore che utilizzerai per separare i valori multipli;
  • 2.4) Controllare il file Non aggiungere duplicati casella nella Opzioni sezione se non vuoi creare duplicati nelle celle dell'elenco a discesa;
  • 2.5) Fare clic su OK pulsante. Vedi screenshot:

3. Fare clic su Kutools > Menu `A tendina > Elenco a discesa a selezione multipla per abilitare la funzione.

Ora puoi selezionare più elementi dall'elenco a discesa nel foglio di lavoro corrente o da qualsiasi ambito specificato nel passaggio 2.

  Se vuoi avere una prova gratuita (30-day) di questa utilità, fare clic per scaricarlo, quindi andare ad applicare l'operazione secondo i passaggi precedenti.


Articoli correlati:

Completamento automatico durante la digitazione nell'elenco a discesa di Excel
Se si dispone di un elenco a discesa di convalida dei dati con valori di grandi dimensioni, è necessario scorrere l'elenco solo per trovare quello corretto o digitare direttamente l'intera parola nella casella di riepilogo. Se esiste un metodo per consentire il completamento automatico quando si digita la prima lettera nell'elenco a discesa, tutto diventerà più semplice. Questo tutorial fornisce il metodo per risolvere il problema.

Crea un elenco a discesa da un'altra cartella di lavoro in Excel
È abbastanza facile creare un elenco a discesa di convalida dei dati tra i fogli di lavoro all'interno di una cartella di lavoro. Ma se i dati dell'elenco necessari per la convalida dei dati si trovano in un'altra cartella di lavoro, cosa faresti? In questo tutorial imparerai come creare un elenco a discesa da un'altra cartella di lavoro in Excel in dettaglio.

Crea un elenco a discesa ricercabile in Excel
Per un elenco a discesa con numerosi valori, trovarne uno corretto non è un lavoro facile. In precedenza abbiamo introdotto un metodo di completamento automatico dell'elenco a discesa quando si immette la prima lettera nella casella a discesa. Oltre alla funzione di completamento automatico, è anche possibile rendere ricercabile l'elenco a discesa per migliorare l'efficienza lavorativa nel trovare i valori corretti nell'elenco a discesa. Per rendere ricercabile l'elenco a discesa, prova il metodo in questo tutorial.

Compilare automaticamente altre celle quando si selezionano i valori nell'elenco a discesa di Excel
Supponiamo che tu abbia creato un elenco a discesa basato sui valori nell'intervallo di celle B8: B14. Quando si seleziona un valore nell'elenco a discesa, si desidera che i valori corrispondenti nell'intervallo di celle C8: C14 vengano inseriti automaticamente in una cella selezionata. Per risolvere il problema, i metodi in questo tutorial ti faranno un favore.

Più tutorial per l'elenco a discesa ...


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
fondo officetab
Commenti (67)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ciao, grazie per la soluzione e il codice. Ma il passaggio successivo è come assicurarsi che l'utente non selezioni i valori "duplicati" dall'elenco a discesa. Ad esempio, se nell'elenco sono presenti 4 elementi: arancia, mela, banana, pesca e se l'utente ha già selezionato "arancione", excel non dovrebbe consentire all'utente di selezionare "arancione" OPPURE tale opzione dovrebbe essere rimossa dal resto di la lista. Puoi per favore pubblicare il codice per realizzare questa funzione. Grazie. Yezdi
Questo commento è stato fatto dal moderatore sul sito
Ciao Yezdi, grazie per il tuo commento. Il codice è stato aggiornato e ora non sono consentiti valori duplicati nell'elenco a discesa. Grazie. Luce del sole
Questo commento è stato fatto dal moderatore sul sito
È fantastico che ciò consenta selezioni multiple ma, come ha commentato @Yezdi, sto scoprendo che aggiungerà uno o più duplicati anche se non li scelgo. Quindi, al momento, questa è una soluzione all'80%... a un passo dalla perfezione. Non sono un programmatore VB o offrirei la soluzione.
Questo commento è stato fatto dal moderatore sul sito
È possibile modificare il codice nelle righe seguenti per evitare duplicati: If xValue2 "" Then Target.Value = xValue1 & ", " & xValue2 End If To: If xValue2 "" Then If CheckIfAlreadyAdded(xValue1, xValue2) = False Then Target .Value = xValue1 & ", " & xValue2 Else Target.Value = xValue1 End If End If And quindi aggiungere la seguente funzione: Private Function CheckIfAlreadyAdded(ByVal sText As String, sNewValue As String) As Boolean CheckIfAlreadyAdded = False Dim WrdArray() As String WrdArray() = Split(sText, ",") For i = LBound(WrdArray) To UBound(WrdArray) If Trim(WrdArray(i)) = Trim(sNewValue) Then CheckIfAlreadyAdded = True Next i End Function -- Probabilmente c'è modi migliori per codificarlo ma per ora funziona.
Questo commento è stato fatto dal moderatore sul sito
Mi sono appena reso conto di non essere uscito dal ciclo nella nuova funzione se la condizione è stata impostata in modo da non dover controllare altre voci.
Questo commento è stato fatto dal moderatore sul sito
Ciao. Grazie per il codice e l'aggiunta per limitare i duplicati. Un'altra richiesta: quale aggiunta/modifica dovrebbe essere effettuata per consentire la selezione multipla solo in una o due colonne specifiche? Questo codice aggiunge nuovamente righe di testo a quelle che dovrebbero essere celle "semplici" se vado a correggere un errore di battitura o a apportare una modifica o un'aggiunta al testo nella cella, invece di comportarmi semplicemente "normalmente" e accettare la modifica (senza aggiungere nuovamente l'intero testo). Ad esempio, la colonna A è una colonna "semplice". Scrivo una frase "Quali sono i tre temi che desideri di più?" La colonna B è una colonna "elenco" in cui voglio solo essere in grado di selezionare un singolo valore (in questo caso, diciamo il nome di un bambino). La colonna C è un'altra colonna "elenco" in cui l'utente deve essere in grado di selezionare più elementi (cosa che questo codice mi consente di fare perfettamente). Mentre procedo, mi rendo conto di aver commesso un errore di battitura nella colonna A e voglio correggerlo. Allo stato attuale del codice, se entro (doppio clic, F2) e apporto la correzione alla parola "elementi", finisco con questo risultato nella mia cella: "Quali sono i tre elementi che desideri di più? Quali sono i tre gli oggetti che desideri di più?" grazie in anticipo per qualsiasi aiuto (da un utente a cui piace DAVVERO VBA, ma è ancora nelle primissime fasi di apprendimento!)
Questo commento è stato fatto dal moderatore sul sito
Sono stato in grado di far funzionare il codice, ma poi quando ho salvato il documento (con macro abilitate), l'ho chiuso e restituito, il codice non funzionava più (sebbene fosse ancora lì). Non riesco a capire cosa ho fatto di sbagliato. Qualche idea?
Questo commento è stato fatto dal moderatore sul sito
Ciao Cynthia, se l'autore originale non risponde, ti darò una risposta ma sarò di nuovo davanti a un computer solo il 29 dicembre. Inoltre non sono un programmatore VBA. Quello che puoi fare nel frattempo è cercare su Google come identificare il numero di colonna e lasciare che il codice venga eseguito solo se i dati vengono modificati in quella o nelle colonne specifiche. L'ho fatto ma il codice è sul mio PC di lavoro e non riesco a richiamarlo al momento, forse prova a mettere un debug.print su target.column o qualcosa del genere per vedere se ti dà il numero di colonna in fase di modifica . Scusa Jennifer, non sono sicuro del problema che stai riscontrando :(
Questo commento è stato fatto dal moderatore sul sito
@Cynthia, se ancora necessario, dovresti essere in grado di fare qualcosa del genere per assicurarti che il codice venga eseguito solo su colonne specifiche, nel mio caso, colonna 34 e 35: If (Target.Column 34 And Target.Column 35) Then Exit Sub 'Metti questo codice all'inizio dopo le tue dichiarazioni deboli
Questo commento è stato fatto dal moderatore sul sito
[quote]@Cynthia, Se ancora necessario, dovresti essere in grado di fare qualcosa del genere per assicurarti che il codice venga eseguito solo su colonne specifiche, nel mio caso, le colonne 34 e 35: If (Target.Column 34 And Target.Column 35) Quindi Exit Sub 'Inserisci questo codice all'inizio dopo le tue dichiarazioni dimDi Mervyn[/quote] Ciao @Mervyn, ho perso completamente la traccia del thread, ma grazie mille per le tue risposte. Ho provato ad applicare If (Target.Column 34 e Target.Column 35) Then Exit Sub (la mia versione legge If (Target.Column4 e Target.Column5) Quindi Exit Sub come hai fornito, ma ricevo un "Run-time errore '438': l'oggetto non supporta questa proprietà o metodo"" errore su questa nuova riga. Ecco le prime righe del mio codice: Private Sub Worksheet_Change (ByVal Target As Range) Dim xRng As Range Dim xValue1 As String Dim xValue2 As String If (Target.Column4 e Target.Column5) Quindi esci da Sub If Target.Count > 1 Quindi esci da Sub in caso di errore Riprendi Avanti Il mio foglio di lavoro ha solo 6 colonne: Domanda | Risposta | Categoria | Sottocategoria | Tag | Collegamento foto Ho solo bisogno di più menu a discesa di valori in Sottocategoria e Tag (colonne 4 e 5). Continuerò a cercare informazioni come hai suggerito il 12/23 e guarderò il collegamento fornito da Charity.
Questo commento è stato fatto dal moderatore sul sito
Se Target.Column <> 34 Quindi Esci da Sub

'Metti questo codice all'inizio dopo le tue dichiarazioni deboli
Questo commento è stato fatto dal moderatore sul sito
Ciao, attualmente sto usando questa formula e tutte le colonne con convalida dei dati hanno ora l'opzione di selezione multipla, tuttavia voglio limitare la selezione multipla solo a una colonna. Qualcuno può modificare questa formula per me in modo che la selezione multipla possa essere applicata solo a Column4? Grazie :) Private Sub Worksheet_Change (ByVal Target As Range) 'Aggiornato: 2016/4/12 Dim xRng As Range Dim xValue1 As String Dim xValue2 As String Se Target.Count > 1 Quindi esci da Sub in caso di errore Riprendi successivo Imposta xRng = Celle. SpecialCells(xlCellTypeAllValidation) Se xRng non è nulla, allora esci da Sub Application.EnableEvents = False Se non Application.Intersect(Target, xRng) non è nulla Allora xValue2 = Target.Value Application.Undo xValue1 = Target.Value Target.Value = xValue2 Se xValue1 " " Allora se xValore2 "" Allora se xValore1 = xValore2 oppure _ InStr(1, xValore1, ", " & xValore2) oppure _ InStr(1, xValore1, xValore2 & ",") Allora Target.Value = xValue1 Else Target.Value = xValue1 & ", " & xValue2 End If End If End If Application.EnableEvents = True End Sub Qualsiasi assistenza sarà apprezzata!
Questo commento è stato fatto dal moderatore sul sito
Funziona bene, ma non riesco a rimuovere un elemento una volta selezionato. Qualche suggerimento nel caso in cui clicco accidentalmente su qualcosa e debba rimuoverlo senza (si spera) cancellare l'intera cella e ricominciare da capo? Inoltre, per coloro che cercano di definire una o più colonne, Contextures ha un'ottima aggiunta al codice qui fornito che ti consente di farlo. http://www.contextures.com/excel-data-validation-multiple.html#column
Questo commento è stato fatto dal moderatore sul sito
[quote]Funziona bene, ma non riesco a rimuovere un elemento una volta selezionato. Qualche suggerimento nel caso in cui clicco accidentalmente su qualcosa e debba rimuoverlo senza (si spera) cancellare l'intera cella e ricominciare da capo? Inoltre, per coloro che cercano di definire una o più colonne, Contextures ha un'ottima aggiunta al codice qui fornito che ti consente di farlo. http://www.contextures.com/excel-data-validation-multiple.html#columnPer carità[/quote] Il codice funziona bene. Tuttavia, non riesco a deselezionare un elemento. Quando voglio rimuovere un elemento dalla selezione, semplicemente non viene rimosso. Anche qualcun altro ha riscontrato questo problema?[/quote] Ciao a tutti, Sono state trovate soluzioni per questo problema..condividete..
Questo commento è stato fatto dal moderatore sul sito
Salve, il codice funziona bene. Tuttavia, non riesco a deselezionare un elemento. Quando voglio rimuovere un elemento dalla selezione, semplicemente non viene rimosso. Anche qualcun altro ha riscontrato questo problema?
Questo commento è stato fatto dal moderatore sul sito
C'era una risposta a questo problema. È lo stesso problema che ho io. Non sembra esserci un modo per rimuovere un elemento che è stato selezionato.
Questo commento è stato fatto dal moderatore sul sito
eliminare il contenuto nella cella, quindi riselezionare
Questo commento è stato fatto dal moderatore sul sito
Ciao a tutti, ho questo codice su un foglio excel e sta pulendo il contenuto dall'elenco a discesa quando la cella è selezionata - so quale parte del codice lo sta facendo (la parte che dice "fillRng.ClearContents") e io ho provato a utilizzare alcuni dei precedenti per risolverlo senza successo ... Sono nuovo nella programmazione VBA ecc. Qualcuno può offrire aiuto su come cambiarlo in modo che quando la cella è selezionata non si cancellerà e le voci non saranno duplicato per favore?? Opzione Esplicito Dim fillRng As Range Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Qualifiers As MSForms.ListBox Dim LBobj As OLEObject Dim i As Long Set LBobj = Me.OLEObjects("ListBox1") Set Qualifiers = LBobj.Object Se Target.Row > 3 e Target.Column = 3 Quindi imposta fillRng = Target With LBobj .Left = fillRng.Left .Top = fillRng.Top .Width = fillRng.Width .Height = 155 .Visible = True End With Else LBobj.Visible = False If Not fillRng Is Nothing Then fillRng.ClearContents con qualificatori If .ListCount 0 Then For i = 0 To .ListCount - 1 If fillRng.Value = "" Then If .Selected(i) Then fillRng.Value = .List(i) Else If .Selected(i) Then fillRng.Value = _ fillRng.Value & ", " & .List(i) End If Next End If For i = 0 To .ListCount - 1 .Selected(i) = False Next End with Set fillRng = Niente End If End If End Sub
Questo commento è stato fatto dal moderatore sul sito
Ciao a tutti, potrei fare il mio elenco a discesa perfettamente, ma la mia domanda è: quando seleziono tutti gli elementi nedded, si passa uno dopo l'altro in modo orizzontale attraverso la cella, ad esempio: giallo, verde, nero, rosso. Ma come posso farlo sembrare in modo verticale?, più simile ad esempio: Arancio bianco giallo Rosso Perché in orizzontale la cella diventa piuttosto lunga quando si selezionano molti elementi. Potresti per favore dirmi se c'è un modo per farlo?. Grazie, Desiree
Questo commento è stato fatto dal moderatore sul sito
Sono riuscito a utilizzare questo codice e creare con successo caselle a discesa a selezione multipla. Ha funzionato quando ho chiuso e riaperto in giorni diversi. Tuttavia, ora non tutte le celle che ho selezionato originariamente consentono la selezione multipla. Solo quelli eseguiti in precedenza, nonostante utilizzi il codice per l'intero foglio di calcolo. Puoi aiutare?
Questo commento è stato fatto dal moderatore sul sito
Sto avendo lo stesso problema.
Questo commento è stato fatto dal moderatore sul sito
le celle sono molto probabilmente bloccate, fai clic con il pulsante destro del mouse su tutte, vai su formattazione celle, protezione, quindi deseleziona l'opzione cella bloccata
Questo commento è stato fatto dal moderatore sul sito
Ho creato un elenco a discesa in cui è possibile scegliere più selezioni di testo come "nutrizione", "peso" e "lavoro" per il motivo di ogni chiamante per telefonare. Ho una pagina di riepilogo in cui voglio vedere quanti di ciascun motivo sono stati indicati in un determinato mese. Quale formula userei per dire a Excel di estrarre e conteggiare ciascuno di questi separatamente in un determinato mese? Attualmente, il modo in cui l'ho impostato, viene registrato correttamente solo se ho un motivo nella cella per ogni chiamante.
Questo commento è stato fatto dal moderatore sul sito
Buon Giorno,
Siamo spiacenti, non posso aiutarti a risolvere questo problema. Per favore fatemi sapere se trovate la risposta.
Questo commento è stato fatto dal moderatore sul sito
Sto cercando di creare 4 colonne con elenchi a discesa in cui posso selezionare più valori. Come posso modificare il codice VBA "elenco a discesa con selezioni multiple" in modo che quando faccio clic su un valore che è già stato inserito lo rimuove dalla cella? Grazie in anticipo.
Questo commento è stato fatto dal moderatore sul sito
Caro Randy,
Cosa intendi con "quando clicco su un valore che è già stato inserito, lo rimuove dalla cella?"
Questo commento è stato fatto dal moderatore sul sito
Ho la stessa domanda. Il mio elenco a discesa non ricorda i valori selezionati. Se qualcuno fa clic su una cella che è già stata popolata (non da lui, ma da qualcun altro) i valori selezionati vengono cancellati e la cella è di nuovo vuota.
Questo commento è stato fatto dal moderatore sul sito
Sto usando il codice seguente per consentire la selezione multipla su più fogli di lavoro, ma quando vado a un altro foglio di lavoro nella cartella di lavoro la selezione multipla scompare. Quando salvo il file e ci ritorno, funzionerà per una scheda con il codice, ma di nuovo quando faccio clic su un'altra scheda con il codice non funziona più. Qualche idea su come risolverlo, quindi se faccio clic su un foglio di lavoro con il codice VBA consentirà sempre la selezione multipla?
Questo commento è stato fatto dal moderatore sul sito
Ciao, ich bin totaler VBA Laie. Ich versuche den Code so zu modifizieren, dass
a) die Mehrfachauswahl nicht in allen, sondern nur ein zwei Spalten aktiv ist
b) ich Items auch wieder rausnehmen kann, zB in dem ich in der Listenauswahl das Item noch einmal anklicke (Beispiel: ich habe über die Mehrfachauswahl ausgewählt: A, D, X, Y... nun fällt mir auf, dass D nicht dazu gehört. Beim aktuellen Code müsste ich Eingaben entfernen und neu auswählen).
Grazie in anticipo!
Questo commento è stato fatto dal moderatore sul sito
Non posso procedere con la creazione della selezione multipla dell'elenco a discesa. Ho ascoltato tutorial e letto materiale ma non riesco ancora a creare. Gentilmente qualcuno può aiutarmi?
Questo commento è stato fatto dal moderatore sul sito
So che questo potrebbe essere un totale casuale, ma utilizzo una variazione del VBA senza problemi. Tranne che su una pagina, se selezioni le prime tre opzioni, non ti permetterà di selezionare la quarta. Ti consentirà di selezionare la 5a, la 6a e così via, ma non la 4a opzione. Pensieri?
Questo commento è stato fatto dal moderatore sul sito
Ciao Robert,
Ho testato il codice ma non ho trovato il problema come hai menzionato. Puoi dirmi quale versione di Excel stai usando? Grazie per il tuo commento.
Non ci sono ancora commenti pubblicati qui
Carica Altre
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL