ecrire 010107=01/01/2007 dans un textbox

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

la croisée des pains

XLDnaute Occasionnel
bonjour à tous

comment ecrire dans un usf dans un txtbox la date sous se format 010107 et lors du transfert vers une feuille , elle s'écrit comme ceci 01/01/2007

merci de votre aide

voici un bout de mon code:

Private Sub CmdValider_Click()
Dim nbligne, MsgErreur
Dim Remise As Double
Dim Remise2 As Double


If TxtN°Facture.Value = "" Then
MsgErreur = MsgBox(vbTab & "Saisissez un numéro de facture !", vbOKOnly + vbExclamation, "AJOUT IMPOSSIBLE, DONNEE OBLIGATOIRE")
TxtN°Facture.SetFocus
Exit Sub
End If
If CbxClient.Value = "" Then
MsgErreur = MsgBox(vbTab & "Choisissez un client !", vbOKOnly + vbExclamation, "AJOUT IMPOSSIBLE, DONNEE OBLIGATOIRE")
CbxClient.SetFocus
Exit Sub
End If

With Sheets("récap")
nbligne = .Range("A65536").End(xlUp).Row + 1


If OptBoulangerie = True Then
.Unprotect
.Range("A" & nbligne) = TxtN°Facture
.Range("B" & nbligne) = CDate(Me.TxtDate.Value)
.Range("C" & nbligne) = CbxArticle_Boul.Value
.Range("D" & nbligne) = CDbl(TxtQuantite_Boul.Value)
.Range("E" & nbligne).NumberFormat = "#,##0.00€"
.Range("E" & nbligne) = CDbl(TxtPrix_Boul.Value) 'format(cdbl(txtprix_boul.value),"#,##0.00€")
.Range("L" & nbligne) = CDbl(CbxTva_Boul.Value)
.Range("O" & nbligne) = CbxClient.Value


et ainsi de suite.... le code est trop long à mettre .


merci de votre aide

laurent
 
Re : ecrire 010107=01/01/2007 dans un textbox

Salut Pierrot, salut La Croisée

Est-ce que tu pourrais nous mettre un bout de ton fichier, que l'on puisse vérifier si le code est au bon endroit, si le code est correcte, etc ...

A+
 
Re : ecrire 010107=01/01/2007 dans un textbox

re,

tu mets le code ou?

With Sheets("récap")
nbligne = .Range("A65536").End(xlUp).Row + 1


If OptBoulangerie = True Then
.Unprotect
.Range("A" & nbligne) = TxtN°Facture
.Range("B" & nbligne) = CDate(Me.TxtDate.Value)
.Range("B2").Value = DateSerial(Mid(TxtDate, 5, 2), Mid(TxtDate, 3, 2), Mid(TxtDate, 1, 2))
.Range("C" & nbligne) = CbxArticle_Boul.Value
.Range("D" & nbligne) = CDbl(TxtQuantite_Boul.Value)
.Range("E" & nbligne).NumberFormat = "#,##0.00€"
.Range("E" & nbligne) = CDbl(TxtPrix_Boul.Value) 'format(cdbl(txtprix_boul.value),"#,##0.00€")
.Range("L" & nbligne) = CDbl(CbxTva_Boul.Value)
.Range("O" & nbligne) = CbxClient.Value


a moins que je le mets ailleurs
 
Dernière édition:
Re : ecrire 010107=01/01/2007 dans un textbox

Bonjour le Forum, le Fil,

Dans " .Range("B").Value = DateSerial", je ne vois pas la référence de la ligne comme pour les autres lignes.

Amicalement, Hervé.

Ah collision, le temps que je relise tout le fil :lol:
 
Re : ecrire 010107=01/01/2007 dans un textbox

Re

non pas de "Dim mid" ce n'est pas une variable mais une fonction vba (ou une instruction d'ailleurs), comprends pas, par contre tu es en 2007, mets peut être ton fichier en pièce jointe, par contre tu es en 2007, je ne sais pas si je pourrais le lire. Tu bloques bien sur la ligne en rouge ?

@+
 
Re : ecrire 010107=01/01/2007 dans un textbox

re,
oui je suis en 2007, et cela bloques sur la ligne rouge.
par contre j'ai essayé de mettre le fichier en piece jointe et même supprimer les divers choses ,il fait 95ko....
je peux l'enregistrer en 2003

je vais essyer de le reduire encore
 
Re : ecrire 010107=01/01/2007 dans un textbox

re,

bonjour Jean-Marie, comment vas? cela fais longtemps.

ton code marches bien sur excel 2003 mais pas sur 2007.

il bloque sur trim, il connait pas dans le projet ou biblioteque.....

quel bazard sur 2007

Private Sub CmdValider_Click()
Dim nbligne, MsgErreur
Dim Remise As Double
Dim Remise2 As Double
Dim DateString As String
Dim Derlgn As Integer
If Me.TxtDate = "" Then Me.TxtDate.SetFocus: Exit Sub
DateString = Trim(TxtDate.Text)
Derlgn = Range("B500").End(xlUp).Row + 1
Range("B" & Derlgn) = DateSerial(mid(DateString, 5, 2), mid(DateString, 3, 2), mid(DateString, 1, 2))
Me.TxtDate = ""

If TxtN°Facture.Value = "" Then
MsgErreur = MsgBox(vbTab & "Saisissez un numéro de facture !", vbOKOnly + vbExclamation, "AJOUT IMPOSSIBLE, DONNEE OBLIGATOIRE")
TxtN°Facture.SetFocus
Exit Sub
End If
If CbxClient.Value = "" Then
MsgErreur = MsgBox(vbTab & "Choisissez un client !", vbOKOnly + vbExclamation, "AJOUT IMPOSSIBLE, DONNEE OBLIGATOIRE")
CbxClient.SetFocus
Exit Sub
End If

With Sheets("récap")
nbligne = .Range("A65536").End(xlUp).Row + 1


If OptBoulangerie = True Then
.Unprotect
.Range("A" & nbligne) = TxtN°Facture
' .Range("B" & nbligne) = CDate(Me.TxtDate.Value)

.Range("C" & nbligne) = CbxArticle_Boul.Value
.Range("D" & nbligne) = CDbl(TxtQuantite_Boul.Value)
.Range("E" & nbligne).NumberFormat = "#,##0.00€"
.Range("E" & nbligne) = CDbl(TxtPrix_Boul.Value) 'format(cdbl(txtprix_boul.value),"#,##0.00€")
.Range("L" & nbligne) = CDbl(CbxTva_Boul.Value)
.Range("O" & nbligne) = CbxClient.Value
 
Dernière édition:
Re : ecrire 010107=01/01/2007 dans un textbox

re
content de te croiser

oui ben le Trim tu le supprimes cela sert à supprimer d'éventuelles espaces vides (aux extremités) inhérants à la frappe Lol
pour ce qui est de la limite je me suis dit puisque l'on entre 050907 alors pourquoi ne pas limiter à 6 caractères lol pas bête Hein !!!!

Bonne fin de Journée 😀
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour