Convalida dei dati
Microsoft Excel fornisce alcune buone funzionalità per filtrare automaticamente o convalidare i dati del foglio di lavoro.
Convalida dei dati è la capacità di impostare regole relative ai dati inseriti in un foglio di lavoro. Ad esempio, utilizzare la convalida per garantire che una colonna etichettata DATE contenga solo date o che un’altra colonna contenga solo numeri. Potresti persino assicurarti che una colonna etichettata DATE contenga solo date all’interno di un determinato intervallo. Con la convalida dei dati, puoi controllare cosa viene inserito nelle celle del foglio di lavoro. Aspose.Cells supporta completamente Microsoft la convalida dei dati di Excel e le funzionalità di filtro automatico. Questo articolo spiega come utilizzare le funzionalità in Microsoft Excel e come codificarle utilizzando Aspose.Cells.
Tipi di convalida dei dati ed esecuzione
Microsoft Excel supporta diversi tipi di convalida dei dati. Ogni tipo viene utilizzato per controllare quale tipo di dati viene immesso in una cella o in un intervallo di celle. Di seguito, frammenti di codice illustrano come convalidarlo:
- Numbers sono intericioè che non hanno una parte decimale.
- I numeri decimali seguono la struttura corretta. L’esempio di codice definisce che un intervallo di celle deve avere due spazi decimali.
- I valori sono limitati a un elenco di valori. La convalida dell’elenco definisce un elenco separato di valori che possono essere applicati a una cella o a un intervallo di celle.
- Le date rientrano in un intervallo specifico.
- Il tempo è all’interno di un intervallo specifico.
- Un testo si trova all’interno di una determinata lunghezza di caratteri.
Convalida dati con Microsoft Excel
Per creare convalide utilizzando Microsoft Excel:
-
In un foglio di lavoro selezionare le celle a cui si desidera applicare la convalida.
-
DalDatimenù, selezionareConvalida. Viene visualizzata la finestra di dialogo di convalida.
-
Clicca ilImpostazionischeda e immettere le impostazioni come mostrato di seguito.
Impostazioni di convalida dei dati
Convalida dati con Aspose.Cells
La convalida dei dati è una potente funzionalità per la convalida delle informazioni inserite nei fogli di lavoro. Con la convalida dei dati, gli sviluppatori possono fornire agli utenti un elenco di scelte, limitare l’immissione dei dati a un tipo o dimensione specifica, ecc. In Aspose.Cells, ciascunoFoglio di lavorola classe ha aConvalideoggetto che rappresenta una raccolta diConvalidaoggetti. Per impostare la convalida, imposta alcuni deiConvalidaproprietà della classe:
- Tipo: rappresenta il tipo di convalida, che può essere specificato utilizzando uno dei valori predefiniti inTipo di convalidaenumerazione.
- Operatore: rappresenta l’operatore da utilizzare nella validazione, che può essere specificato utilizzando uno dei valori predefiniti nel fileOperatorTypeenumerazione.
- Formula 1: rappresenta il valore o l’espressione associata alla prima parte della convalida dei dati.
- Formula2: rappresenta il valore o l’espressione associata alla seconda parte della convalida dei dati.
Quando ilConvalidale proprietà dell’oggetto sono state configurate, gli sviluppatori possono utilizzare ilCellAreastruttura per memorizzare le informazioni sull’intervallo di celle che verranno convalidate utilizzando la convalida creata.
Tipi di convalida dei dati
La convalida dei dati consente di creare regole aziendali in ogni cella in modo che le voci errate generino messaggi di errore. Le regole aziendali sono le politiche e le procedure che governano il modo in cui opera un’azienda. Aspose.Cells supporta tutti i tipi importanti di convalida dei dati.
IlTipo di convalidaenumerazione ha i seguenti membri:
Nome del membro | Descrizione |
---|---|
ANY_VALUE | Indica un valore di qualsiasi tipo. |
NUMERO INTERO | Indica il tipo di convalida per i numeri interi. |
DECIMALE | Indica il tipo di convalida per i numeri decimali. |
ELENCO | Indica il tipo di convalida per l’elenco a discesa. |
DATA | Indica il tipo di convalida per le date. |
VOLTA | Denota il tipo di convalida per Time. |
TEXT_LENGTH | Indica il tipo di convalida per la lunghezza del testo. |
COSTUME | Indica il tipo di convalida personalizzato. |
Esempio di programmazione: convalida dei dati con numeri interi
Con questo tipo di convalida, gli utenti possono inserire solo numeri interi all’interno di un intervallo specificato nelle celle convalidate. Gli esempi di codice che seguono mostrano come implementare ilNUMERO INTEROtipo di convalida. L’esempio crea la stessa convalida dei dati utilizzando Aspose.Cells che abbiamo creato utilizzando Microsoft Excel sopra.
Esempio di programmazione: convalida dei dati decimali
Con questo tipo di convalida, l’utente può inserire numeri decimali nelle celle convalidate. Nell’esempio, l’utente può inserire solo valori decimali e l’area di convalida è A1:A10.
Esempio di programmazione: convalida dei dati dell’elenco
Questo tipo di convalida consente all’utente di immettere valori da un elenco a discesa. Fornisce un elenco: una serie di righe che contengono dati. Gli utenti possono solo selezionare i valori dall’elenco. L’area di convalida è l’intervallo di celle A1:A5 nel primo foglio di lavoro.
Qui è importante impostare il fileValidation.setInCellDropDown proprietà aVERO.
Esempio di programmazione: convalida dei dati della data
Con questo tipo di convalida, gli utenti immettono valori di data all’interno di un intervallo specificato o che soddisfano criteri specifici nelle celle convalidate. Nell’esempio, l’utente è limitato a inserire date comprese tra il 1970 e il 1999. Qui, l’area di convalida è la cella B1.
Esempi di programmazione: convalida dei dati temporali
Con questo tipo di convalida, gli utenti possono inserire orari all’interno di un intervallo specificato o che soddisfano alcuni criteri nelle celle convalidate. Nell’esempio, l’utente è limitato a inserire gli orari tra le 09:00 e le 11:30. Qui, l’area di convalida è la cella B1.
Esempi di programmazione: convalida dei dati di lunghezza del testo
Con questo tipo di convalida, gli utenti possono inserire valori di testo di una lunghezza specificata nelle celle convalidate. Nell’esempio, l’utente è limitato a immettere valori di stringa con non più di 5 caratteri. L’area di convalida è la cella B1.
Regole di convalida dei dati
Quando vengono implementate le convalide dei dati, la convalida può essere verificata assegnando valori diversi nelle celle.Cell.GetValidationValue() può essere utilizzato per recuperare il risultato della convalida. L’esempio seguente mostra questa funzionalità con valori diversi. Il file di esempio può essere scaricato dal seguente link per il test:
SampleDataValidationRules.xlsx
Codice d’esempio
Controlla se la convalida in una cella è a discesa
Come abbiamo visto ci sono molti tipi di validazioni che possono essere implementate all’interno di una cella. Se vuoi verificare se la convalida è a discesa o meno,Validation.InCellDropDown proprietà può essere utilizzata per testare questo. Il seguente codice di esempio illustra l’utilizzo di questa proprietà. Il file di esempio per il test può essere scaricato dal seguente link:
sampleDataValidationRules.xlsx
Aggiungi CellArea alla convalida esistente
Potrebbero esserci casi in cui potresti voler aggiungereCellAreaall’esistenteConvalida. Quando aggiungiCellAreautilizzandoValidation.AddArea(CellArea cellArea), Aspose.Cells controlla tutte le aree esistenti per vedere se la nuova area esiste già. Se il file ha un numero elevato di convalide, ciò subisce un calo delle prestazioni. Per ovviare a questo, lo API mette a disposizione ilValidation.AddAreaCellArea cellArea, bool checkIntersection, bool checkEdge) metodo. IlcheckIntersezioneparametro indica se controllare l’intersezione di una determinata area con le aree di validazione esistenti. Impostandolo sufalsodisabiliterà il controllo di altre aree. IlcheckEdgeparametro indica se controllare le aree applicate. Se la nuova area diventa l’area in alto a sinistra, le impostazioni interne vengono ricostruite. Se sei sicuro che la nuova area non sia l’area in alto a sinistra, puoi impostare questo parametro comefalso.
Il seguente frammento di codice illustra l’uso diValidation.AddAreaCellArea cellArea, bool checkIntersection, bool checkEdge) metodo per aggiungere newCellAreaall’esistenteConvalida.
I file excel di origine e di output sono allegati per riferimento.