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

Cum se creează o listă derulantă cu mai multe selecții sau valori în Excel?

În mod implicit, puteți selecta doar un articol dintr-o listă derulantă de validare a datelor în Excel. Cum puteți face selecții multiple în lista derulantă, așa cum se arată mai jos în gif? Metodele din acest articol vă pot ajuta să rezolvați problema.


Creați o listă derulantă cu mai multe selecții cu cod VBA

Această secțiune oferă două coduri VBA pentru a vă ajuta să faceți selecții multiple în listele derulante dintr-o foaie de lucru. Cele două coduri VBA pot realiza:

Cod VBA 1: permiteți selecții multiple într-o listă derulantă fără duplicate
Cod VBA 2: permiteți selecții multiple într-o listă derulantă fără duplicate (ștergeți elementele existente selectând-o din nou)

Puteți aplica unul dintre următoarele coduri VBA pentru a face selecții multiple într-o listă derulantă într-o foaie de lucru în Excel. Vă rugăm să faceți după cum urmează.

1. Deschideți foaia de lucru care conține listele drop-down de validare a datelor din care doriți să faceți selecții multiple. Faceți clic dreapta pe fila foii și selectați Afișați codul din meniul contextual.

2. În Microsoft Visual Basic pentru aplicații fereastră, copiați codul VBA de mai jos în fereastra codului. Vedeți captura de ecran:

Cod VBA 1: permiteți selecții multiple într-o listă derulantă fără duplicate

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. apasă pe Alt + Q tastele pentru a închide Microsoft Visual Basic pentru aplicații fereastră.

Acum puteți selecta mai multe articole din lista derulantă din foaia de lucru curentă.

Să presupunem că ați selectat accidental un element și trebuie să îl eliminați fără a șterge întreaga celulă și a începe de la capăt. Următorul cod VBA 2 vă poate face o favoare.

Cod VBA 2: permiteți selecții multiple într-o listă derulantă fără duplicate (ștergeți elementele existente selectând-o din nou)

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

notițe:

1). Valorile duplicat nu sunt permise în lista derulantă.
2). Codul VBA 2 de mai sus a fost furnizat de utilizatorul nostru entuziast Ken Gardner pe 2022/07/11.
3). Vă rugăm să salvați registrul de lucru ca un Cartea de lucru Excel Macro-Enabled pentru a menține codul funcțional în viitor.
4). După adăugarea codului VBA 2, puteți elimina un element existent selectându-l din nou în lista derulantă. Vezi gif-ul de mai jos:


Creați cu ușurință o listă derulantă cu mai multe selecții cu un instrument uimitor

Aici vă recomandăm cu căldură Listă derulantă cu selectare multiplă caracteristică a Kutools pentru Excel Pentru dumneavoastră. Cu această caracteristică, puteți selecta cu ușurință mai multe articole din lista derulantă într-un interval specificat, foaia de lucru curentă, registrul de lucru curent sau toate registrele de lucru deschise după cum aveți nevoie.

Înainte de a aplica Kutools pentru Excel, Vă rugăm să descărcați-l și instalați-l mai întâi.

1. clic Kutools > Lista verticală > Listă derulantă cu selectare multiplă > Setări. Vedeți captura de ecran:

2. În Setări listă derulantă cu selectare multiplă casetă de dialog, vă rugăm să configurați după cum urmează.

  • 2.1) Specificați domeniul de aplicare în Aplica pentru secțiune. În acest caz, selectez Foaia de lucru curentă de la Domeniul de aplicare specificat lista verticală;
  • 2.2) În Direcția textului secțiune, selectați o direcție de text în funcție de nevoile dvs.;
  • 2.3) În Separator caseta, introduceți un delimitator pe care îl veți folosi pentru a separa valorile multiple;
  • 2.4) Verificați Nu adăugați duplicate cutie în Opţiuni secțiune dacă nu doriți să faceți duplicate în celulele listei derulante;
  • 2.5) Faceți clic pe OK buton. Vedeți captura de ecran:

3. Vă rugăm să faceți clic pe Kutools > Lista verticală > Listă derulantă cu selectare multiplă pentru a activa caracteristica.

Acum puteți selecta mai multe articole din lista derulantă din foaia de lucru curentă sau orice domeniu pe care l-ați specificat la pasul 2.

  Dacă doriți să aveți o încercare gratuită (30-zi) a acestei utilitati, vă rugăm să faceți clic pentru a-l descărca, și apoi mergeți pentru a aplica operația conform pașilor de mai sus.


Legate de articole:

Completați automat când tastați în lista verticală Excel
Dacă aveți o listă derulantă de validare a datelor cu valori mari, trebuie să derulați în jos în listă doar pentru a o găsi pe cea potrivită sau să tastați întregul cuvânt direct în caseta de listă. Dacă există o metodă pentru a permite completarea automată la introducerea primei litere din lista derulantă, totul va deveni mai ușor. Acest tutorial oferă metoda de rezolvare a problemei.

Creați o listă verticală dintr-un alt registru de lucru în Excel
Este destul de ușor să creați o listă verticală de validare a datelor printre foile de lucru dintr-un registru de lucru. Dar dacă datele listei de care aveți nevoie pentru validarea datelor se află într-un alt registru de lucru, ce ați face? În acest tutorial, veți afla cum să creați o listă de eliminare dintr-un alt registru de lucru în Excel în detalii.

Creați o listă drop-down căutabilă în Excel
Pentru o listă verticală cu numeroase valori, găsirea unuia corect nu este o lucrare ușoară. Anterior, am introdus o metodă de completare automată a listei derulante atunci când introduceți prima literă în caseta derulantă. Pe lângă funcția de completare automată, puteți face ca lista derulantă să poată fi căutată pentru îmbunătățirea eficienței de lucru în găsirea valorilor corespunzătoare în lista derulantă. Pentru ca lista derulantă să poată fi căutată, încercați metoda din acest tutorial.

Completați automat alte celule atunci când selectați valorile din lista verticală Excel
Să presupunem că ați creat o listă derulantă pe baza valorilor din intervalul de celule B8: B14. Când selectați orice valoare din lista derulantă, doriți ca valorile corespunzătoare din intervalul de celule C8: C14 să fie populate automat într-o celulă selectată. Pentru rezolvarea problemei, metodele din acest tutorial vă vor face o favoare.

Mai multe tutoriale pentru lista derulantă ...


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (66)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, mulțumesc pentru soluție și cod. Dar următorul pas este cum să vă asigurați că utilizatorul nu selectează valori „duplicate” din lista verticală. De exemplu, dacă există 4 articole în listă - portocală, măr, banană, piersică și dacă utilizatorul a selectat deja „portocaliu”, atunci excel nu ar trebui să permită utilizatorului să selecteze „portocaliu” SAU acea opțiune ar trebui eliminată din restul lista. Vă rugăm să publicați codul pentru a realiza această funcție. Mulțumiri. Yezdi
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Yezdi, mulțumesc pentru comentariu. Codul a fost actualizat și nu sunt permise valori duplicate în lista derulantă acum. Mulțumiri. Raza de soare
Acest comentariu a fost redus la minimum de moderatorul de pe site
Este grozav că acest lucru permite selecții multiple, dar așa cum a comentat @Yezdi, constat că va adăuga unul sau mai multe duplicate chiar dacă nu le aleg. Deci, în prezent, aceasta este o soluție de 80%... la o modificare de perfectă. Nu sunt un codificator VB sau aș oferi soluția.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Puteți modifica codul în următoarele rânduri pentru a preveni duplicarea: Dacă 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 Și apoi adăugați următoarea funcție: Private Function CheckIfAlreadyAdded(ByVal sText As String, sNewValue As String) As Boolean CheckIfAlready As Wrd = Array False( Dim Wrd) String WrdArray() = Split(sText, ",") For i = LBound(WrdArray) To UBound(WrdArray) If Trim(WrdArray(i)) = Trim(sNewValue) Then CheckIfAlreadyAdded = True Next i End Function -- Probabil că există modalități mai bune de a-l codifica, dar funcționează pentru moment.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Tocmai mi-am dat seama că nu am părăsit bucla în noua funcție dacă condiția a fost setată, astfel încât să nu fie nevoie să verificăm alte intrări.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Salut. Vă mulțumim pentru cod și pentru adăugarea de a limita duplicatele. Încă o cerere - ce adăugare/modificare ar trebui făcută pentru a permite selecția multiplă în doar una sau două coloane specifice? Acest cod adaugă din nou linii de text la ceea ce ar trebui să fie celule „plate” dacă merg să corectez o greșeală de scriere sau să fac o modificare sau o adăugare la textul din celulă, spre deosebire de a mă comporta „normal” și de a accepta modificarea. (fără a adăuga din nou întregul text din nou). De exemplu, coloana A este o coloană „plată”. Scriu o propoziție „Care sunt cele trei articole pe care le dorești cel mai mult?” Coloana B este o coloană „listă” în care vreau să pot alege doar o singură valoare (în acest caz, să spunem numele unui copil). Coloana C este o altă coloană „listă” în care utilizatorul trebuie să poată selecta mai multe articole (ceea ce acest cod îmi permite să fac perfect). Pe măsură ce merg mai departe, îmi dau seama că am făcut o greșeală de scriere în coloana A și vreau să o corectez. Așa cum este acest cod, dacă intru (dublu clic, F2) și fac corectarea cuvântului „articole”, ajung cu acest rezultat în celula mea: „Care sunt cele trei articole pe care le doriți cel mai mult? Care sunt cele trei articolele pe care le doriți cel mai mult?" vă mulțumesc anticipat pentru orice ajutor (de la un utilizator căruia îi place cu adevărat VBA, dar se află încă la primele etape de învățare!)
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am reușit să fac codul să funcționeze, dar atunci când am salvat documentul (cu macrocomenzi activate), l-am închis și am revenit, codul nu a mai funcționat (deși era încă acolo). Nu pot să-mi dau seama ce am greșit. Vreo idee?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Cynthia, Dacă autorul original nu răspunde, îți voi primi un răspuns, dar voi fi din nou în fața unui computer abia pe 29 decembrie. De asemenea, nu sunt programator VBA. Ceea ce puteți face între timp este să căutați pe Google cum să identificați numărul coloanei și să lăsați codul să ruleze numai dacă datele sunt editate în acea(e) coloană(e). Am făcut-o, dar codul este pe computerul meu de lucru și nu-l pot aminti momentan, poate încercați să puneți un debug.print pe target.column sau ceva în acest sens pentru a vedea dacă vă oferă numărul coloanei care este editată . Îmi pare rău Jennifer, nu sunt sigură de problema pe care o întâmpinați :(
Acest comentariu a fost redus la minimum de moderatorul de pe site
@Cynthia, Dacă tot este necesar, ar trebui să puteți face ceva de genul acesta pentru a vă asigura că codul rulează numai pe anumite coloane, în cazul meu, coloana 34 și 35: Dacă (Target.Column 34 And Target.Column 35) Then Exit Sub „Pune acest cod la început după declarațiile tale slabe
Acest comentariu a fost redus la minimum de moderatorul de pe site
[citat]@Cynthia, Dacă tot este necesar, ar trebui să puteți face ceva de genul acesta pentru a vă asigura că codul rulează numai pe anumite coloane, în cazul meu, coloana 34 și 35: Dacă (Target.Column 34 And Target.Column 35) Apoi Exit Sub „Pune acest cod la început după declarațiile tale slabeDe Mervyn[/quote] Bună @Mervyn, Am pierdut firul complet, dar vă mulțumesc foarte mult pentru răspunsuri. Am încercat să aplic If (Target.Column 34 And Target.Column 35) Then Exit Sub (versiunea mea citește If (Target.Column4 And Target.Column5) Then Exit Sub așa cum ați furnizat, dar primesc un „Run-time” eroare „438”: Obiectul nu acceptă această proprietate sau metodă „” eroare pe această nouă linie. Iată primele câteva rânduri ale codului meu: Private Sub Worksheet_Change(ByVal Target As Range) Dim xRng As Range Dim xValue1 As String Dim xValue2 Ca șir dacă (Target.Column4 și Target.Column5) Apoi Ieșire din sub dacă Target.Count > 1 Apoi Ieșire din sub la eroare Reluare Următorul Foaia mea de lucru are doar 6 coloane: Întrebare | Răspuns | Categorie | Subcategorie | Etichete | Link foto Am nevoie doar de meniuri derulante cu mai multe valori în Subcategorie și Etichete (coloanele 4 și 5). Voi continua să caut informații așa cum ați sugerat dvs. pe 12/23 și voi căuta linkul oferit de Caritate.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dacă Target.Column <> 34 Apoi Ieșire din sub

„Pune acest cod la început după declarațiile tale slabe
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, în prezent folosesc această formulă și toate coloanele cu validare a datelor au opțiunea de selecție multiplă acum, cu toate acestea, vreau să restricționez selecția multiplă la o singură coloană. Poate cineva să editeze această formulă pentru mine, astfel încât selecția multiplă să poată fi aplicată numai la Coloana4? Mulțumesc :) Private Sub Worksheet_Change(ByVal Target As Range) 'Actualizat: 2016/4/12 Dim xRng As Range Dim xValue1 As String Dim xValue2 As String Dacă Target.Count > 1 Then Exit Sub On Error Reluare Următorul set xRng = Cells. SpecialCells(xlCellTypeAllValidation) Dacă xRng nu este nimic, apoi ieșiți din subaplicație.EnableEvents = False dacă nu este aplicație.Intersect(Target, xRng) este nimic, atunci xValue2 = Target.Value Application. Undo xValue1 = Target.Value Target.Value2 Dacă xValue. " Atunci Dacă xValoare1 "" Atunci Dacă xValoare2 = xValoare1 Sau _ InStr(2, xValue1, ", " & xValoare1) Sau _ InStr(2, xValue1, xValoare1 & ",") Atunci Target.Value = xValue2 Else Target.Value = xValue1 & ", " & xValue1 End If End If End If End If Application.EnableEvents = True End Sub Orice asistență va fi apreciată!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Funcționează bine, dar nu pot elimina un element odată selectat. Orice sugestii în cazul în care dau clic accidental pe ceva și trebuie să îl elimin fără (sperăm) să șterg întreaga celulă și să o iau de la capăt? De asemenea, pentru cei care doresc să definească o coloană sau coloane, Contextures are un adaos grozav la codul furnizat aici, care vă permite să faceți acest lucru. http://www.contextures.com/excel-data-validation-multiple.html#column
Acest comentariu a fost redus la minimum de moderatorul de pe site
[quote]Acest lucru funcționează bine, dar nu pot elimina un element odată selectat. Orice sugestii în cazul în care dau clic accidental pe ceva și trebuie să îl elimin fără (sperăm) să șterg întreaga celulă și să o iau de la capăt? De asemenea, pentru cei care doresc să definească o coloană sau coloane, Contextures are un adaos grozav la codul furnizat aici, care vă permite să faceți acest lucru. http://www.contextures.com/excel-data-validation-multiple.html#columnPrin Caritate[/quote] Codul funcționează bine. Cu toate acestea, se pare că nu pot deselecta un element. Când vreau să elimin un element din selecție, pur și simplu nu este eliminat. Mai are cineva această problemă?[/quote] Bună tuturor, S-au găsit soluții pentru această problemă... vă rugăm să împărtășiți..
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună ziua, Codul funcționează bine. Cu toate acestea, se pare că nu pot deselecta un element. Când vreau să elimin un element din selecție, pur și simplu nu este eliminat. Mai are cineva aceasta problema?
Acest comentariu a fost redus la minimum de moderatorul de pe site
A existat un răspuns la această problemă. Este aceeasi problema pe care o am si eu. Nu pare să existe o modalitate de a elimina un element care a fost selectat.
Acest comentariu a fost redus la minimum de moderatorul de pe site
ștergeți conținutul din celulă, apoi reselectați
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună tuturor, Am acest cod pe o foaie Excel și curăța conținutul din lista derulantă atunci când celula este selectată - știu ce parte a codului o face (partea care spune „fillRng.ClearContents”) și eu am încercat să folosesc unele dintre cele de mai sus pentru a o remedia fără succes... Sunt nou în programarea VBA etc. Poate cineva să ofere ajutor cu privire la modul de schimbare, astfel încât atunci când celula este selectată să nu se ștergă și intrările să nu fie duplicat va rog?? Opțiune Explicit Dim fillRng As Range Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Califiers As MSForms.ListBox Dim LBobj As OLEObject Dim i As Long Set LBobj = Me.OLEObjects("ListBox1") Set Qualifiers = LBobj.Object If > 3 Și Target.Column = 3 Then Set 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 este nimic Atunci fillRng.ClearContents cu calificative 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 Cu Set fillRng = Nimic End If End If End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună tuturor, aș putea să-mi fac lista derulantă perfect, dar întrebarea mea este: atunci când selectez toate elementele necesare, trece unul după altul pe orizontală prin celulă, de exemplu: galben, verde, negru, roșu. Dar cum îl pot face să arate într-un mod vertical?, mai degrabă ca de exemplu: Portocaliu alb galben Roșu Deoarece în orizontală celula devine destul de lungă atunci când selectezi o mulțime de articole. Îmi puteți spune, vă rog, dacă există vreo modalitate de a face asta? Mulțumesc, Desiree
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am reușit să folosesc acest cod și să creez cu succes mai multe casete derulante de selecție. A funcționat când am închis și am redeschis în zile diferite. Cu toate acestea, acum nu toate celulele pe care le-am selectat inițial permit selecție multiplă. Numai cele făcute anterior, în ciuda utilizării codului pentru întreaga foaie de calcul. Poți să ajuți?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am aceeasi problema.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Cel mai probabil celulele sunt blocate, faceți clic dreapta pe toate, accesați formatarea celulelor, protecție, apoi debifați opțiunea pentru celule blocate
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am creat o listă derulantă în care pot fi alese mai multe selecții de text, cum ar fi „nutriție”, „greutate” și „muncă” pentru motivul fiecărui apelant pentru a suna. Am o pagină de rezumat în care vreau să văd câte din fiecare motiv au fost indicate într-o anumită lună. Ce formulă aș folosi pentru a spune Excel să scoată și să calculeze fiecare dintre acestea separat într-o anumită lună? În prezent, așa cum l-am configurat, se calculează corect doar dacă am un motiv în celulă pentru fiecare apelant.
Acest comentariu a fost redus la minimum de moderatorul de pe site
O zi buna,
Îmi pare rău, nu vă pot ajuta să rezolvați această problemă. Vă rog să-mi spuneți dacă găsiți răspunsul.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încerc să creez 4 coloane cu liste drop-down unde pot selecta mai multe valori. Cum modific codul VBA „listă derulantă cu selecții multiple” astfel încât atunci când dau clic pe o valoare care a fost deja introdusă, o elimină din celulă? Vă mulțumesc anticipat.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Draga Randy,
Ce vrei să spui "când dau clic pe o valoare care a fost deja introdusă, o elimină din celulă?"
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am aceeași întrebare. Lista mea drop-down nu își amintește valorile selectate. Dacă cineva face clic pe o celulă care a fost deja populată (nu de către ei, ci de altcineva), valorile selectate sunt șterse și celula este din nou goală.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Folosesc codul de mai jos pentru a permite selectarea multiplă pe mai multe foi de lucru, dar când merg la o altă foaie de lucru din registrul de lucru, selecția multiplă dispare. Când salvez fișierul și revin în el, va funcționa pentru o filă cu codul, dar din nou când dau clic pe o altă filă cu codul nu mai funcționează. Aveți idee cum să o repar, așa că dacă dau clic pe o foaie de lucru cu codul VBA, aceasta va permite întotdeauna selecția multiplă?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, 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).
Multumesc in avans!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Nu pot continua cu crearea selecției multiple a listei derulante. Am ascultat tutorial și am citit materiale, dar încă nu am reușit să creez. Va rog frumos ma poate ajuta cineva?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Știu că aceasta poate fi o întâmplare totală, dar folosesc o variantă a VBA fără nicio problemă. Cu excepția unei pagini, dacă selectați primele trei opțiuni, nu vă va permite să selectați a patra. Vă va permite să selectați a 5-a, a 6-a și așa mai departe, dar nu și a 4-a opțiune. Gânduri?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Robert,
Am testat codul, dar nu am găsit problema așa cum ați menționat. Îmi poți spune ce versiune de Excel folosești? Multumesc pentru comentariu.
Nu există comentarii postate aici încă
Încărcați mai
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL