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

Cum se șterge celula de listă verticală dependentă după selectarea modificată în Excel?

Pentru o listă verticală dependentă, când valoarea listei derulante părinte este modificată, valoarea selectată în a doua va fi invalidă. Trebuie să eliminați manual valoarea nevalidă din a doua listă derulantă după ce ați selectat modificată în prima. În acest articol, vă voi arăta o metodă pentru a șterge automat celula listă verticală dependentă după selectarea modificată în Excel.

Ștergeți celula listă verticală dependentă după selectarea modificată cu codul VBA


Ștergeți celula listă verticală dependentă după selectarea modificată cu codul VBA

Următorul cod VBA vă ajută să ștergeți lista verticală dependentă după selectarea modificată în Excel.

1. Faceți clic dreapta pe fila foaie conține lista verticală dependentă pe care o veți șterge automat, apoi selectați Afișați codul din meniul contextual.

2. În deschidere Microsoft Visual Basic pentru aplicații fereastră, copiați sub fereastră codul VBA.

Cod VBA: ștergeți celula listă verticală dependentă după selectarea modificată

Private Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 2018/06/04
    Application.EnableEvents = False
    If Target.Column = 5 And Target.Validation.Type = 3 Then
        Target.Offset(0, 1).Value = ""
    End If
    Application.EnableEvents = True
End Sub

notițe: În cod, numărul 5 este numărul coloanei care conține lista derulantă părinte. În acest caz, lista derulantă a părinților mei se află în coloana E.

3. apasă pe Alt + Q tastele pentru a închide Microsoft Visual Basic pentru aplicații fereastră.

De acum înainte, când modificările aduse listei derulante părinte, conținutul celei de-a doua listă derulantă va fi șters automat. Vedeți captura de ecran:


Legate de articole:


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 (9)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
سلام وقت شما بخیر
ما فایل اکسلی داریم که خروجیش از طریق نرم افزار همکاران سیستم هست یعنی فایل اکسل ما آنلاین به data base نرم افزار همکاران متصله(این مهم نیست برای اطلاع عرض کردم) توی این فایل فیلترهایی وجود داره که هر فیلتر یک لیست کشویی داره مشکل ما اینه که وقتی میخواهیم هر کدوم از فیلتر ها یکی از موارد لیست کشویی رو انتخاب کنیم با انتخاب لیست،لیست کشویی زود می پره یعنی بسته میشه زود و نمیشه چیزی رو انتخاب کرد،اینم بگم خدمتتون که آفیس رو حذف و نصب هم کردم بازم جواب نداد یعنی یه مدت خیلی کوتاهی جواب میده بعد به حالت قبل بر میگرده با پشتیبانی ه uri
(آفیسمون 2016 هست)یعنی عملا اونها هم نتونستن مشکل رو پیدا کنن.
لطفا اگه راهی هست ممنون میشم راهنماییم کنید.
با تشکر
Acest comentariu a fost redus la minimum de moderatorul de pe site
Pentru a posta ca invitat, comentariul tău este nepublicat.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Functioneaza Perfect
Acest comentariu a fost redus la minimum de moderatorul de pe site
Aceasta nu funcționează.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Marlborek,
Ce versiune de Excel folosești?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încerc să se aplice acest lucru pentru două meniuri derulante dependente și nu par să înțeleg codul corect. Am încercat să copiez codul și să actualizez offset-ul și să folosesc funcția și și am primit o eroare de fiecare dată. Vreun sfat? Vreau ca cele două coloane de lângă meniul drop-down să șteargă dacă este schimbată în loc de doar una.
H     em
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, așa l-am făcut să funcționeze pentru mai multe drop-down-uri, nici funcția „Și” nu a funcționat pentru mine, dar asta pare. În esență, aveți nevoie de o declarație „Dacă” diferită pentru fiecare meniu derulant pe care doriți să îl lăsați necompletat atunci când modificați valoarea aleasă în primul meniu vertical. Poate exista o modalitate mai eficientă de a face acest lucru, dar asta a funcționat pentru mine!


Subsol de lucrări private_Change (țintă ByVal ca rază de acțiune)
'Actualizare până la Extendoffice 2018/06/04
Application.EnableEvents = Fals
Dacă Target.Column = 2 Și Target.Validation.Type = 3 Atunci
Target.Offset(0, 1).Value = ""
Final, dacă
Dacă Target.Column = 2 Și Target.Validation.Type = 3 Atunci
Target.Offset(0, 2).Value = ""
Final, dacă
Dacă Target.Column = 2 Și Target.Validation.Type = 3 Atunci
Target.Offset(0, 3).Value = ""
Final, dacă
Dacă Target.Column = 2 Și Target.Validation.Type = 3 Atunci
Target.Offset(0, 4).Value = ""
Final, dacă
Application.EnableEvents = Adevărat
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Ștergerea mai multor rânduri dă eroare. Orice sugestii ?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Primeam erori la ștergerea mai multor rânduri, precum și la ștergerea rândurilor care nu ar fi trebuit să fie șters. Mai jos este soluția care a funcționat pentru mine.

Subsol de lucrări private_Change (țintă ByVal ca rază de acțiune)
'Actualizare până la D 2022/08/23
La data de eroare CV următoare
Application.EnableEvents = Fals
Dacă Target.Column = 9 Atunci
Dacă Target.Validation.Type = 3 Atunci
Application.EnableEvents = Fals
Target.Offset(0, 4).Value = ""
Final, dacă
Final, dacă

Application.EnableEvents = Fals
Dacă Target.Column = 9 Atunci
Dacă Target.Validation.Type = 3 Atunci
Application.EnableEvents = Fals
Target.Offset(0, 5).Value = ""
Final, dacă
Final, dacă

Application.EnableEvents = Fals
Dacă Target.Column = 13 Atunci
Dacă Target.Validation.Type = 3 Atunci
Application.EnableEvents = Fals
Target.Offset(0, 1).Value = ""
Final, dacă
Final, dacă

exitHandler:
Application.EnableEvents = Adevărat
Ieșiți din Sub

End Sub
Nu există comentarii postate aici încă
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