Newsgroup: it.comp.lang.visual-basic
Titolo: convertire formato data su un evento

In una form ho un campo in formato data estesa. Quando voglio modificare il
record, il campo relativo alla data resta in formato data estesa, quindi
quando vado a salvare il record, ottengo un errore:
"Errore di run-time'-
2147217887
(8004e21)':
Multiple-step operation generated errors. Check each status value."
Ho scoperto che il problema è risolvibile portando la data in formato
normale. Al momento del salvataggio del record, visual basic trasforma
automaticamente la data in formato esteso.
Quindi la mia domanda è: E' possibile trasformare la data estesa in formato
normale (precisamente ho testato con questo formato gg/mm/aa e funziona)
all'evento click sul tasto modifica?
Spero di essere stato chiaro e che qualcuno possa aiutarmi.
--
**** Giuseppe Ciccolella ******
-------- Smanetton Web ---------
° 
http://digilander.libero.it/ciccoweb
 °

 normale
Vedi DateSerial, Day, Month, Year

 wrote in message
xz_n9.56047$Eu.13...@twister1.libero.it...


 dalla data...
http://makeashorterlink.com/?F6DB21502
Qui si parla di Empty...

Ho provato cosě:
Private Sub Command1_Click()
txtseriale = DateSerial(Year(txtFirstName), Month(txtFirstName),
Day(txtFirstName))
End Sub
dove: command1 č il pulsante da cliccare per cambiare la data; seriale č una
textbox che assume il valore della data in formato generico all'evento click
di command1
txtFirstName č invece la textbox che contiene la data in formato esteso.
Questo codice funziona in access2000, ma in visualbasic6.0 ottengo questo
errore:
Errore di run-time '13':
Tipo non corrispondente
Come mai? Cosa vuol dire errore di run-time '13'?
Lupo wrote in message xz_n9.56047$Eu.13...@twister1.libero.it...


 End Sub
Perň scommetto che quella "textbox che contiene la data in formato esteso"
non contiene affatto una data in formato esteso secondo il formato previsto
dal pannello di controllo.

 dal pannello di controllo.
No, corrisponde, o almeno credo:
in impostazioni internazionali, come data estesa c'č selezionato:
gggg g MMMM aaaa
mentre il formato della textbox corrisponde alla riga di codice che in
un'altro post mi hai inviato:
txtFirstName.Text = Format(rsRecordSet.Fields("FirstName").Value, "dddddd")
Grazie per la collaborazione.

 dal pannello di controllo.
No, corrisponde, o almeno credo:


 txtFirstName.Text = Format(rsRecordSet.Fields("FirstName").Value,
"dddddd")
Non mi sono spiegato:
Dicci cosa contiene txtFirstName (i caratteri che vedi sul video, uno per
uno), niente altro.

 wrote in message
VK_p9.22695$RO.5...@twister1.libero.it...


Fa in modo che txtFirstName contenga una data nel formato (salvo i
separatori da adeguare):
12/10/2002
12/10/02
12 ott 2002
12 ottobre 2002
Una data del tipo "sabato 12 ottobre 2002" non viene accettata
Vedi Datevalue sulla guida

 ha scritto nel messaggio
news:3da72...@news.dada.it...

Scusate l'intrusione.
Le fuzioni Year, Month e Day  possono essere usate solo con controlli che
contengono valori di tipo Data/ora, e siccome, come scrivi nel tuo messaggio
dell' 11/10/2002 delle ore 23:00, il valore di  txtFirstName lo hai
determinato con la seguente riga di coice VBA:
txtFirstName.Text = Format(rsRecordSet.Fields("FirstName").Value, "dddddd")
č innegabile che txtFirstName contiene un valore di tipo testo, quindi non
puoi usare quelle tre funzioni e di conseguenza la funzione DateSerial.
A mio avviso ottieni quello che ti serve con questa riga di codice VBA:
Me!txtseriale = CDate(Mid(Me!txtFirstName, InStr(Me!txtFirstName, " ")))
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 puoi usare quelle tre funzioni e di conseguenza la funzione DateSerial.
Vero, così dice la guida. Evidentemente (io ho provato passando direttamente
la proprietà Text di un TextBox) entrano in ballo le conversioni
automatiche, a condizione che il textbox contenga qualcosa di paragonabile a
una data.

Ho inserito la riga di codice che mi hai gentilmente fornito, ed ho ottenuto
un nuovo tipo di errore:
Errore di compilazione: Per la funzione o l'interfaccia sono state impostate
delle restrizioni oppure la funzione utilizza un tipo di automazione non
supportato in visual basic.
Il tuo codice funziona forse solo in vb for application?
Oppure è il mio computer impazzito?
Roberto da casa wrote in message Epeq9.25157$RO.6...@twister1.libero.it...



[CUT]
Sarebbe bene, quando rispondi, che tu scrivessi DOPO e non prima dei
messaggi precedenti.
Io uso solo Access, quindi VBA: non ho e non conosco VB 6.0.
Prova a porre il problema in qualche NG su VB.


HO RISOLTOOOO!!!!!!
Ho inserito questa riga di codice:
seriale.Text = Format(rsRecordSet.Fields("FirstName").Value, "ddddd")
In pratica porto il formato data estesa con
txtFirstName.Text = Format(rsRecordSet.Fields("FirstName").Value, "dddddd")
e lo trasformo in data generica con la nuova riga di codice.
La cosa + strana č che č avvenuto tutto in modo molto casuale!! :-)

 La cosa + strana è che è avvenuto tutto in modo molto casuale!! :-)
    Hai notato che caos e' l'anagramma di caso?
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------