Questo tutorial dimostrerà come utilizzare la funzione CDec VBA.
Funzione CDec
VBA CDec Converti espressione in decimale
La funzione VBA CDec converte un'espressione in un tipo di dati decimale. Il tipo di dati decimal è in realtà un sottotipo del tipo di dati variant.
12345678910 | Sotto CDecEsempio_1()MsgBox CDec(12.34000001)'Il risultato è: 12.34000001MsgBox CDec(10000000000012.3)"Il risultato è: 100000000000012.3"MsgBox CDec(-0.00000000000001)'Il risultato è: -0.00000000000001MsgBox CDec(-12.34)'Il risultato è: -12.34Fine sottotitolo |
VBA CDec Conversione di stringhe in decimali
La funzione VBA CDec può essere utilizzata per convertire stringhe in decimali se i caratteri nella stringa hanno un significato come numeri.
12345678910111213141516171819 | Sub CDecEsempio_2()Dim StrEx As StringStrEx = "112.112112"MsgBox CDec(StrEx)"Il risultato è: 112.112112"StrEx = "112.3"MsgBox CDec(StrEx)"Il risultato è: 112,3"StrEx = "11,2"MsgBox CDec(StrEx)'Il risultato è: 112 , viene ignoratoStrEx = "$ 112,07"MsgBox CDec(StrEx)'Il risultato è: 112,07 $ viene ignoratoFine sottotitolo |
Programmazione VBA | Il generatore di codice funziona per te!
Errore di runtime di VBA CDec 13 Tipo non corrispondente
L'utilizzo della funzione VBA CDec con stringhe che contengono caratteri non numerici o caratteri che non hanno significato nel contesto numerico si tradurrà in un errore di runtime '13': tipo mancata corrispondenza.
1234567 | Sub CDecExample_3()'Il codice seguente risulterà in un messaggio di ERRORE'CDec non può gestire caratteri non numericiDim StrEx As StringStrEx = "Ab13"MsgBox CDec(StrEx)Fine sottotitolo |
Overflow dell'errore di runtime di VBA CDec 6
L'utilizzo della funzione VBA CDec con stringhe che generano un valore più piccolo o più grande del decimale previsto si tradurrà in un errore di runtime "6": Overflow. Un numero decimale deve essere compreso tra -7,9 E28 e +7,9 E28.
1234567 | Sub CDecExample_4()'Il codice seguente risulterà in un messaggio di ERRORE'CDec può gestire numeri tra -7,9 E28 e +7,9 E28Dim StrEx come varianteStrEx = 8E+30MsgBox CDec(StrEx)Fine sottotitolo |
Impostazioni regionali di VBA CDec
La funzione VBA CDec ha un comportamento diverso convertendo le stringhe con virgola o punto. Utilizza le Impostazioni internazionali del sistema operativo per il separatore decimale e il separatore di cifre.
12345678910111213141516 | Sub CDecExample_5()Dim StrEx As StringStrEx = "1.000009"MsgBox CDec(StrEx)'Se le impostazioni internazionali hanno , come separatore di raggruppamento allora'Il risultato è: 19'Se le impostazioni internazionali hanno , come separatore decimale allora'Il risultato è: 1.0000009StrEx = "1.0000009"MsgBox CDec(StrEx)'Se le impostazioni internazionali hanno . come separatore di raggruppamento quindi'Il risultato è: 19'Se le impostazioni internazionali hanno . come separatore decimale allora'Il risultato è: 1.0000009Fine sottotitolo |