Macro problème avec:Private Sub UserForm_Initialize()

Christian0258

XLDnaute Accro
ReBonjour,

J'aurais besoin de vos lumière

J'ai 2 "UserForm" avec la même ligne de commande, et ça plante sur cette ligne de cde


Private Sub UserForm_Initialize()
Var_Concatene = ""
With UserForm11
****
Private Sub UserForm_Initialize() ' initialisation formulaire
ComboBox1.Clear ' mise en place du combox des plats

Que dois-je modifier sur ces ligne?

à+
Christian
 

Kotov

XLDnaute Impliqué
Re : Macro problème avec:private Sub UserForm_Initialize()

Bonjour Christian,

Ton code étant incomplet, je ne comprends pas ta demande :

"Private Sub UserForm_Initialize()
Var_Concatene = ""
With UserForm11
****
Private Sub UserForm_Initialize() ' initialisation formulaire
ComboBox1.Clear ' mise en place du combox des plats
"

- Au vu de ton code, je me demande si tu n'as pas imbriqué la 2ème Private Sub UserForm_Initialize(), dans la 1ère d'où un évident bug
- Combien as-tu de UserForm ? (il t'en faut au minimum 2 vu que tu as 2 Private Sub UserForm_Initialize()

Précises ta demande STP

Bonne journée
Kotov
 

Christian0258

XLDnaute Accro
Re : Macro problème avec:private Sub UserForm_Initialize()

Re le forum, Kotov,

Merci pour ton aide,

J'ai 2 UserForm, je ne peux pas mettre le fichier, trop gros...

à+
Christian
 

Kotov

XLDnaute Impliqué
Re : Macro problème avec:private Sub UserForm_Initialize()

Re Christian,

Désolé, ces infos sont trop incomplètes pour établir un diagnostic fiable.
Essaies de fournir au moins les 2 codes, même si c'est sur un fichier .txt

A +
Kotov
 

Christian0258

XLDnaute Accro
Re : Macro problème avec:private Sub UserForm_Initialize()

Re, le forum, Kotov,

Comme tu me l'as suggéré, ci-dessous les macros.

Private Sub UserForm_Initialize() ' initialisation formulaire
ComboBox1.Clear ' mise en place du combox des plats
ic = 0
For l = Range("baseplat").Row + 1 To Sheets("CartePlats").Cells(65536, Range("baseplat").Column).End(xlUp).Row
If Not Sheets("CartePlats").Cells(l, 2).Value = "" Then
ComboBox1.AddItem Sheets("CartePlats").Cells(l, 2).Value
If l = pos Then spl = ic ' est-ce le plat de départ ?
ic = ic + 1
End If
Next l
ComboBox1.ListIndex = spl ' position index
For k = 2 To 16 ' initialisation des denrées
Me.Controls("ComboBox" & k).Clear
Next k
c = Range("baseprod").Column ' traitement des denrées
For l = Range("baseprod").Row To Sheets("CartePlats").Cells(65536, c).End(xlUp).Row
If Not Sheets("CartePlats").Cells(l, c).Value = "" Then
For k = 2 To 16
Me.Controls("ComboBox" & k).AddItem Sheets("CartePlats").Cells(l, c).Value
Next k ' mise en place des denrées dans les 12 combobox
End If

La deuxième :
Private Sub UserForm_Initialize()
Var_Concatene = ""
With UserForm11

With ListBox1
.ColumnCount = 8
.ColumnWidths = "00;80;90;105;49;90;00;45"
End With
With .CmbB_Date
.ColumnCount = 2
.ColumnWidths = "0;1"
End With
.CmdB_Archiver.Visible = False

TestRecup

.Caption = Var_Concatene
End With
End Sub


Merci pour votre aide,
à+
Christian
Next l
Call modif ' position des valeurs
End Sub
Private Sub bouton_valider_Click() ' validation
Dim cx As String ' valeur caractère
Dim vn As Double ' valeur numérique textbox
Dim vx As String ' valeur textbox saisie
For t = 1 To 60 ' traitement des zones saisies
vx = Me.Controls("textBox" & t).Value ' zone récupérée pour traitement
If vx <> "" Then
For i = 1 To Len(vx) ' vérification numéricité
cx = Mid(vx, i, 1)
Select Case cx
Case 0 To 9, ".", ","
Case Else ' arrêt sur erreur avec message
MsgBox ("caractère non numèrique : " & vx & Chr(10) & "corrigez pour pouvoir valider")
Me.Controls("textBox" & t).SelStart = 0
Me.Controls("textBox" & t).SelLength = Len(vx)
Me.Controls("textBox" & t).SetFocus
Exit Sub ' il faut corriger l'erreur
End Select
Next i
End If
Next t
c = Range("basedenrée").Column ' colonne des denrée sur feuille
l = ComboBox1.ListIndex + Range("baseplat").Row + 1 ' ligne saisie
d = 0: t = 1
For k = 2 To 16 ' traitement des 12 denrées
ic = Me.Controls("ComboBox" & k).ListIndex ' indice combobox denrée
If ic < 0 Then
t = t + 4 ' traitement du combobox non positionné : effacement cellules
Sheets("CartePlats").Cells(l, c).Offset(0, d).ClearContents
Sheets("CartePlats").Cells(l, c + 3).Offset(0, d).Resize(1, 4).ClearContents
Else ' traitement du combobox positionné : documentation cellules
Sheets("CartePlats").Cells(l, c).Offset(0, d).Value = _
Me.Controls("ComboBox" & k).List(ic) ' denrée
For i = 3 To 6 ' valeurs associées
Sheets("CartePlats").Cells(l, c).Offset(0, d + i).NumberFormat = "0.000"
vx = Me.Controls("textBox" & t).Value
p = InStr(1, vx, ".")
If p = 0 Then p = InStr(1, vx, ",")
If p = 0 Then ' mise en numérique de la saisie
vn = Val(vx)
Else
vn = CDbl(Left(vx, p - 1) & "," & Right(vx, Len(vx) - p))
End If
Sheets("CartePlats").Cells(l, c).Offset(0, d + i).Value = vn
t = t + 1
Next i
End If
d = d + 7
Next k
End Sub
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas