Si comincia a vedere terra all'orizzonte...
14/01/2026 - BLUES ha scritto:
funzionano bene se inserisco il valore nel primo ComboBox vengono inseriti automaticamente tutti gli altri, fin qui tutto ok ma se volessi cancellare il valore dalla seconda ComboBox ciò non mi fa proprio cancellare ed è perché fa il suo ciclo sempre dalla prima ComboBox
Se da codice imponi che la combo 2 che popoli in funzione dalla combo1 e ne prendi il primo valore che senso ha andarlo a cambiare?
Un tipico esempio di combo dipendenti è:
Combo1: regioni
In base alla regione selezionata popoli la combo2 con le provincie di quella regione selezionata.
La combo3 elenca i comuni di quella provincia di quella regione...
Cancelli la provincia ok ma cosa vuoi che mostri la combo comuni?
Soprattutto, visto che hai selezionato Abruzzo (prendi il primo della lista da codice) e la prima provincia dell'Abruzzo, nonché il primo comune della prima provincia dell'Abruzzo (tutto suppongo in ordine alfabetico).
Poi cancelli la prima provincia mantenendo il comune ma stai prendendo i valori da codice .
Sorvolo sulla ratio di quello che stai facendo, sarà sicuramente giusto anche se non riesci a spiegarti, magari perché la mia mente considera la combo come un range di valori da inserire a margine di errore pari a zero.
La combo nasce per essere usata dall'utente non dal programmatore da codice.
Chiusa parentesi.
Fai un controllo per uscire dal loop e azzerare i successivi.
Se combo.text="" stop, fermati.
Setti una variabile "spia" dove la inizializzi prima del ciclo a false e la setti a true se devi fermare il ciclo.
Quindi:
A inizio funzione
Spia=false
Prima di attribuire il valore verifica che combo.text<>""
Se combo.testo='' allora spia=true
Poi alla fine che assega l'item aggiungi
And not (spia)
esegue finché spia=false se spia=true
i successivi cicli vengono saltati