Problema gestione date
Hai un problema con Excel? 
Problema gestione date
di roberto21 data: 08/03/2015 13:31:00
Allego estratto workbook e macro con le prove di gestione della data. La seconda colonna della tabella è formattata come "data in cifre" corrispondente a gg/mm/aa (i parametri di Regione e linguaggio sono impostati a ITALIA). Come si vede dalla macro di test, se provo a scriverci dentro via VBA una data con dd da 1 a 12 la data viene scritta nella cella a rovescio; se il giorno è > 12, scrive giusto ma allinea a sinistra (come un testo) e si lamenta che l'anno ha solo due cifre. Scrivendo la data direttamente nella cella questo non succede, per cui assumo sia qualche incongruenza legata al VBA. Mi sembra una cosa abbastanza "grossa" per non avere una soluzione scema cui io non arrivo. Che cosa sbaglio o non ho capito?
Ho anche provato a formattare la colonna 3 come gg/mm/aaaa, ma non cambia nulla.
di Vecchio Frac data: 08/03/2015 18:14:31
Stai cercando di inserire in una cella un qualcosa che VBA tenta di interpretare a seconda dell'uso.
In particolare BoxDate non è tipizzato quindi si assume Variant, il che significa che verrà tipizzato alla prima assegnazione: più sotto dichiari BoxDate = "12/03/15", quindi è una stringa di testo. Bene, come tale viene trattata.
Prova a dichiarare BoxDate come Date e la cosa dovrebbe risolversi:
Dim BoxDate As Date
Si intende che poi non devi utilizzare Format perchè hai già formattata la colonna affinchè contenga delle date.
VBA tratta comunque le date in formato americano. E comunque la gestione delle date è sempre critica :)
di roberto21 data: 08/03/2015 19:22:37
BoxDate era definito cone stringa perchè stavo imitando quanto faccio nel codice effettivo, ove quello è una textbox di un form, quindi non posso (credo) dimensionarlo come data. Comunque, grazie al tuo hint, la soluzione sembra quasi banale: dimensiono una variabile d come data, quindi
BoxDate = "12/03/15"
d = cdate(BoxDate) (ma funziona anche con d = BoxDate)
Range ("B4") = d
e funziona... Potevo pensarci anch'io, ma questa è la differenza fra i principianti e quelli bravi. Grazie mille
di Vecchio Frac data: 08/03/2015 20:25:19
Mah non credo che la differenza sia tra "principianti" e "bravi", qualunque cosa voglia dire; a volte si ha solo esperienza di cose già affrontate ;)
Vuoi Approfondire?