ERREUR 1004 VBA
hiera
-
melanie1324 Messages postés 1561 Statut Membre -
melanie1324 Messages postés 1561 Statut Membre -
Bonjour,
je rencontre une erreur 1004 dont j'ignore l'origine dans mon code. Merci de votre aide car je coince depuis 3 jours et je suis entrain de prendre un gros retard. voici mon code:
Sub Calcul_MinNbkm()
'
' Calcul_MinNbkm Macro
' Macro enregistrée le 20/06/2011 par Administrateur
'
Dim wsCount As Integer
Dim nbFournisseurs As Integer
nbFournisseurs = Worksheets.Count - 2
wsCount = ThisWorkbook.Worksheets.Count
Dim wsResult As Excel.Worksheet, wsParam As Excel.Worksheet
Set wsResult = Application.ThisWorkbook.Worksheets("Résultat")
Set wsParam = Application.ThisWorkbook.Worksheets("Paramètres")
For i = 13 To 129 Step 1
'On parcourt les feuilles Transporteurs pour récupérer le nombre de km
For j = 1 To wsCount Step 1
If (Worksheets(j).Name <> "Résultat" And Worksheets(j).Name <> "Paramètres") Then
wsParam.Range(wsParam.Cells(i, j + 1)).Value = Worksheets(Worksheets(j).Name).Range("P" & i).Value
End If
wsResult.Range(wsResult.Cells(i, 10)).Value = WorksheetFunction.Min(wsParam.Range(wsParam.Cells(i, 4), wsParam.Cells(i, nbFournisseurs)))
Next
Next
Set wshResult = Nothing
Set wshParam = Nothing
End Sub
je rencontre une erreur 1004 dont j'ignore l'origine dans mon code. Merci de votre aide car je coince depuis 3 jours et je suis entrain de prendre un gros retard. voici mon code:
Sub Calcul_MinNbkm()
'
' Calcul_MinNbkm Macro
' Macro enregistrée le 20/06/2011 par Administrateur
'
Dim wsCount As Integer
Dim nbFournisseurs As Integer
nbFournisseurs = Worksheets.Count - 2
wsCount = ThisWorkbook.Worksheets.Count
Dim wsResult As Excel.Worksheet, wsParam As Excel.Worksheet
Set wsResult = Application.ThisWorkbook.Worksheets("Résultat")
Set wsParam = Application.ThisWorkbook.Worksheets("Paramètres")
For i = 13 To 129 Step 1
'On parcourt les feuilles Transporteurs pour récupérer le nombre de km
For j = 1 To wsCount Step 1
If (Worksheets(j).Name <> "Résultat" And Worksheets(j).Name <> "Paramètres") Then
wsParam.Range(wsParam.Cells(i, j + 1)).Value = Worksheets(Worksheets(j).Name).Range("P" & i).Value
End If
wsResult.Range(wsResult.Cells(i, 10)).Value = WorksheetFunction.Min(wsParam.Range(wsParam.Cells(i, 4), wsParam.Cells(i, nbFournisseurs)))
Next
Next
Set wshResult = Nothing
Set wshParam = Nothing
End Sub
2 réponses
-
Bonjour
sur quelle ligne se produit l'erreur?
ici?Set wsResult = Application.ThisWorkbook.Worksheets("Résultat") -
bonjour,
En fait, il faut que tu modifies ton code comme suit :
Sub Calcul_MinNbkm()
'
' Calcul_MinNbkm Macro
' Macro enregistrée le 20/06/2011 par Administrateur
'
Dim wsCount As Integer
Dim nbFournisseurs As Integer
nbFournisseurs = Worksheets.Count - 2
wsCount = ThisWorkbook.Worksheets.Count
Dim wsResult As Excel.Worksheet, wsParam As Excel.Worksheet
Set wsResult = Application.ThisWorkbook.Worksheets("Résultat")
Set wsParam = Application.ThisWorkbook.Worksheets("Paramètres")
For i = 13 To 129 Step 1
'On parcourt les feuilles Transporteurs pour récupérer le nombre de km
For j = 1 To wsCount Step 1
If (Worksheets(j).Name <> "Résultat" And Worksheets(j).Name <> "Paramètres") Then
wsParam.select
Cells(i, j + 1).Value = Worksheets(Worksheets(j).Name).Range("P" & i).Value
End If
wsResult.select
Cells(i, 10).Value = WorksheetFunction.Min(wsParam.Range(wsParam.Cells(i, 4), wsParam.Cells(i, nbFournisseurs)))
Next
Next
Set wshResult = Nothing
Set wshParam = Nothing
End Sub
Pour info : quand tu as un souci, appuies sur F8, ca défilera ton code ligne par ligne et tu sauras laquelle pose pb.