Domanda

Sto popolando un foglio Excel da DTS. Il risultato è formattato come testo poiché DTS vede le celle come varchar (255).

La formattazione della cella è corretta. Il problema è che Excel sta pensando ai dati come testo anziché datetime o numerici.

es. il valore in una cella appare come "2009-01-01 00: 00: 00". Se premo F2 per modificare la cella, quindi premere INVIO, Excel si rende conto che è una data e quindi la formatta in base alla formattazione della cella.

Come posso formattare i valori come numerici o datetime con VBA?

È stato utile?

Soluzione

Sembra che tu possa semplicemente assegnare il valore di una cella o un intervallo a se stesso e ciò consente a Excel di determinare il tipo di dati. Puoi farlo una fila alla volta, ad esempio:

Worksheets("MySheet").Range("A:A").Value 
     = Worksheets("MySheet").Range("A:A").Value
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top