Si quelqu'un comprends???

G.David

XLDnaute Impliqué
Bonjour
je pose à votre sagacité un petit probleme
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim marq As Date
marq = TextBox1.Value
marq = Format(marq, 'dd mmm yyyy')
End Sub
ceci au textbox sur l'USF
plus loin le code d'enregistrement
Code:
For t = 1 To 10
If Controls('textbox' & t).Visible = True Then
Cells(fiche, t).Value = Controls('textbox' & t).Value
End If
la date est bien entrée dans la cellule au format date (un nombre sous la forme 01 janv 2006
par contre si le code de depart est :
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TextBox1.Value = Format(textbox1.value, 'dd mmm yyyy')
End Sub
le meme code d'enregistrement me retourne la date au format texte le plus beau (c'est à dire ou j'y comprends rien) c'est que ma variable marq n'est pas employé pour ecrire la valeur de la cellule???
D'accords ça marche mais j'aimerais comprendre
Merci
G.David
 

salim

XLDnaute Occasionnel
Bonjour G.David

Comme ça je dirai que c'est peut être du au fait qu'au moment ou le control TextBox perd le focus dû à l'événement Exit sa valeur est transmise à marq qui est au format Date est que c'est marq qui est transmit dans ta boucle, mais je ne suis vraiment pas sur de ma théorie si tu pouvais nous mettre un fichier exemple ou le code complet.

salim
 

DomLyon

XLDnaute Nouveau
Bonjour,
Si j'ai bien lu:
tu déclares une variable au format Date
puis cette variable est dite s'inscrire dans cells;;; au format texte.

en effet le format date est #.....# et non pas '....'

C'est sans doute ici l'erreur.

Bon courage
D
 

G.David

XLDnaute Impliqué
Salut Staple
le text box 01/05/05
cells(1,5)=cdate(textbox1.value)
la cellule : 05 Janvier 2005
c'est pourquoi je force lre format date
mais je vais essayer le truc De DomLyon(salut aussi et merci)
un petit bonjour a Salim également
G.David
 

G.David

XLDnaute Impliqué
Staple
J'ai tenté le coup et j'ai une incompatibilité de type
format (textbox1.value,#dd mmm yyyy#)
j'ai contouné la difficulte comme suit

dans un module
Code:
Dim marq as date
et dans la procedure d'enregistrement
Code:
For t = 1 To 10
If Controls('textbox' & t).Visible = True Then
    If (t = 1 Or t = 7 Or t = 8 Or t = 10) Then
    marq = Controls('TextBox' & t).Value
    Cells(fiche, t).Value = CLng(marq)
    Else
    Cells(fiche, t).Value = Controls('textbox' & t).Value
    End If
End If
Next
la j'ai des enregistrements corrects
merci (je crois malgrés tout que Staple à raison sur l'incompréhesion d'Excel au format)
G.David
 

G.David

XLDnaute Impliqué
Salut
je croyais avoir terminer ce fil mais apparament
mon dernier message n'est pas passé
finalement j'ai trouvé ce qui clocher
j'initialisais mon USF et caché les textbox si la cellule référente était remplie (non vide) et afficher son contenu dans un label . Et pour simplifiais (surtout par faignantise avouons le) j'avais une boucle qui enregistrait les valeur des labels et comme ceux ci n'avait qu'un format texte :whistle: Voilà!voilà!
comme le dirait Mule d'air :'la vérité est tailleur'
merci de votre aide
G.David
 

Discussions similaires

Réponses
2
Affichages
242

Statistiques des forums

Discussions
312 239
Messages
2 086 508
Membres
103 238
dernier inscrit
ds776001