Correction du code
Bonjour,
Y'a t-il une âme charitable qui voudrait bien jeter un œil à mon code je vous prie.
Mon userform ne s'affiche plus et m'affiche l'erreur suivante :
"Erreur d'exécution 1004 : Erreur définie par l'application ou par l'objet"
Débutant sur Excel VBA, je ne vois pas d'où ça peut provenir.
Mon code :
Private Sub UserForm_Initialize()
Set wb = Application.Workbooks.Open("E:\ProjetZ.xlsx")
Set ws = wb.Worksheets(1)
' Initialisation de la variable
Dim nlign As Integer
nlign = 4
' Liste Puissance
Do While Cells(nblign, 2) <> ""
cboPuissance.AddItem Cells(nblign, 2).Value & " kVA"
nblign = nblign + 1
Loop
nblign = 4
' Liste Nature
Do While Cells(nblign, 3).Value <> ""
cboNature.AddItem Cells(nblign, 3).Value
nblign = nblign + 1
Loop
nblign = 4
' Liste Nb Sources
Do While Cells(nblign, 4).Value <> ""
lboNbSourcesmin.AddItem Cells(nblign, 4).Value & " min"
nblign = nblign + 1
Loop
nblign = 4
Do While Cells(nblign, 4).Value <> ""
lboNbSourcesmax.AddItem Cells(nblign, 4).Value & " min"
nblign = nblign + 1
Loop
nblign = 4
' Ukr
If cboNature.Value = ws.Range("C4") Then
If cboPuissance.Value = ws.Range("B5:B13").Value Then
tboUkr.Value = "4%"
ElseIf cboPuissance.Value = ws.Range("B14:B19") Then
tboUkr.Value = "6%"
Else
End If
End If
' Liste Norme
Do While Cells(nblign, 6).Value <> ""
cboNorme.AddItem Cells(nblign, 6).Value
nblign = nblign + 1
Loop
nblign = 4
' Liste Fréquence
Do While Cells(nblign, 7).Value <> ""
cboFrequence.AddItem Cells(nblign, 7).Value & " Hz"
nblign = nblign + 1
Loop
nblign = 4
' Liste Regime N
Do While Cells(nblign, 8).Value <> ""
cboRegimeN.AddItem Cells(nblign, 8).Value
nblign = nblign + 1
Loop
nblign = 4
' Liste Polarité
Do While Cells(nblign, 9).Value <> ""
cboPolarite.AddItem Cells(nblign, 9).Value
nblign = nblign + 1
Loop
nblign = 4
' Tension BT
Do While Cells(nblign, 10).Value <> ""
cboTensionBT.AddItem Cells(nblign, 10).Value & " V"
nblign = nblign + 1
Loop
nblign = 4
If Not cboTensionBT.Value = "" Then
tboTensionBT.Value = Cells(cboTensionBT.ListIndex, 11) & " V"
End If
' Type Liaison
Do While Cells(nblign, 12).Value <> ""
cboType.AddItem Cells(nblign, 12).Value
nblign = nblign + 1
Loop
nblign = 4
' Longueur câble
tboLongueur.Value = ""
' Liste Âme Câble
Do While Cells(nblign, 14).Value <> ""
cboAme.AddItem Cells(nblign, 14).Value
nblign = nblign + 1
Loop
nblign = 4
' Liste Catégorie Câble
Do While Cells(nblign, 15).Value <> ""
cboCategorie.AddItem Cells(nblign, 15).Value
nblign = nblign + 1
Loop
' Intensité (cas où la nature de la source est : BT par ICC)
tboIntensite.Value = ""
ActiveWorkbook.Close
Set ws = Nothing
End Sub
Invité
Bonsoir,
Mets un point d'arrêt (F9) sur ta première ligne
Et ensuite tu exécutes ton code en pas à pas (F8)
Comme ça tu pourras voir d'où vient ton erreur