Controllo immissione dati Questa routine consente di verificare se i dati che vengono inseriti in una cella corrispondono a parametri fissi stabiliti in precedenza. Facciamo un esempio: nella zona che comprende tutte le celle da A1 a F100 vogliamo inserire solo lettere che corrispondano ad A, B, C, D, E, e che ci venga segnalato immediatamente se scriviamo qualunque cosa che sia diversa: questa è la routine da inserire nell'evento Change del Foglio su cui lavoriamo: (in verde sono i commenti) Private Sub Worksheet_Change(ByVal Target As Range) Appare evidente che potremo, modificando i parametri assegnati a CL.Value =, eseguire controlli sia su lettere, sia su numeri, sia su frasi. Con questa soluzione avremo un controllo "predefinito" in quanto il valore da controllare nelle celle è inserito direttamente nel codice. Se invece volessimo che il controllo fosse eseguito non su valori fissi perchè "preimpostati", ma assegnati da variabili, potremmo utilizzare delle celle (al di fuori del range su cui si esegue il controllo) nelle quali potremmo inserire dei valori che possiamo variare a nostro piacimento. Per esempio potremo assegnare le celle G1:G4 alla routine, e in queste celle scrivere ciò che vogliamo sia usato come valore di confronto. Un unico appunto: se in G1 scriviamo "pippo" (ed avremo inserito in alcune celle del range A1:F100 la stessa parola), sostituendolo in G1 con "peppo", la routine troverà "pippo" e lo segnalerà come errore. Comunque questa è la routine da usare con valori variabili: Private Sub Worksheet_Change(ByVal Target As Range) In questo modo, ciò che verrà scritto nelle celle G1 ecc, sarà usato come valore di confronto.
|