Microsoft 365 intégration code avec variable a un bouton de commande userform

PETIT YANNICK

XLDnaute Occasionnel
Bonjour a tous

Je souhaiterais intégrer au bouton de commande CommandButton2_Click() le code suivant.



'Renseignement N° ODM
Dim prefixe$
prefixe = "ODM-"
With TextBox1
.MaxLength = 9
If Not .Value Like prefixe & "*" Then .Value = prefixe
If Not IsNumeric(Mid(.Value, Len(prefixe) + 1)) Then .Value = prefixe
End With

Unload Me




en Sub private textbox cela fonctionne bien par conte quand je veux commande CommandButton2_Click() avec d'autre code , le fonctionneement n'est plus correct

Est ce un probleme de déclaration de variable?


Voici le code complet

Private Sub CommandButton2_Click()

'Renseignement Manufacturer

Range("G4").Value = TextBox1
Sheets("Feuil1").Range("G4").Value = UCase(TextBox1.Text)
Unload Me
'Renseignement Reference manufacturer
Range("G5").Value = TextBox2
Sheets("Feuil1").Range("G5").Value = UCase(TextBox2.Text)


'Renseignement Description article

Range("G3").Value = TextBox3
Sheets("Feuil1").Range("G3").Value = UCase(TextBox3.Text)
Unload Me

'Renseignement designation FR

Range("G25").Value = TextBox4
Sheets("Feuil1").Range("G25").Value = UCase(TextBox4.Text)
If Len(TextBox4) = 30 Then MsgBox " Nombre de 30 caractères atteint!"
Unload Me
'Renseignement designation UK

Range("G26").Value = TextBox5
Sheets("Feuil1").Range("G26").Value = UCase(TextBox5.Text)
If Len(TextBox5) = 30 Then MsgBox " Nombre de 30 caractères atteint!"
Unload Me

'Renseignement N° ODM
Dim prefixe$
prefixe = "ODM-"
With TextBox1
.MaxLength = 9
If Not .Value Like prefixe & "*" Then .Value = prefixe
If Not IsNumeric(Mid(.Value, Len(prefixe) + 1)) Then .Value = prefixe
End With


Unload Me

End Sub
 

Pièces jointes

  • Products catalogue.xlsm
    27.3 KB · Affichages: 4

PETIT YANNICK

XLDnaute Occasionnel
Le cellule devrait se renseigner automatiquement avec un préfixe "ODM-" et 5 chiffres
ce n'est pas le cas dans ma macro ou je souhaite renseigner les valeurs dans les cellules excel lorsque clic sur bouton enregistrer

le fonctionnement est correct lorsque j'integre dans un sub private textbox mais pas avec la validation d'un bouton.
voir fichier Products catalogue test.xls

yannick
 

Pièces jointes

  • Products catalogue test.xlsm
    25.5 KB · Affichages: 3

danielco

XLDnaute Accro
Dans le code de ton dernier classeur :
VB:
Private Sub CommandButton2_Click()


'Renseignement Manufacturer


Range("G4").Value = TextBox1
Sheets("Feuil1").Range("G4").Value = UCase(TextBox1.Text)

Unload Me

'Renseignement Reference manufacturer

Range("G5").Value = TextBox2
Sheets("Feuil1").Range("G5").Value = UCase(TextBox2.Text)

Unload Me

End Sub

Il n'y a pas de validation. Les textboxes Textbox1 et TextBox2 se reportent bien dans les cellules ????

Daniel

PS. Les lignes suivantes sont apparemment inutiles, mais c'est un autre problème :

Code:
Range("G4").Value = TextBox1
Range("G5").Value = TextBox2
 

PETIT YANNICK

XLDnaute Occasionnel
Daniel

je me suis mal expliqué.
Je souhaiterais renseigner la case H12 lors du clic sur le bouton enregistrer dans le userform

Dans mon script la cellule se renseigne en même temps que le formulaire




Private Sub CommandButton2_Click()


'Renseignement Manufacturer


Range("G4").Value = TextBox1
Sheets("Feuil1").Range("G4").Value = UCase(TextBox1.Text)

Unload Me

'Renseignement Reference manufacturer

Range("G5").Value = TextBox2
Sheets("Feuil1").Range("G5").Value = UCase(TextBox2.Text)

Unload Me

End Sub



Private Sub TextBox6_Change()
Dim prefixe$
prefixe = "ODM-"
With TextBox6
.MaxLength = 9

If Not .Value Like prefixe & "*" Then .Value = prefixe
If Not IsNumeric(Mid(.Value, Len(prefixe) + 1)) Then .Value = prefixe

Range("H12").Value = TextBox6

End With

End Sub
 

Pièces jointes

  • Products catalogue test.xlsm
    24.9 KB · Affichages: 4

Discussions similaires