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
A voir également:
- ERREUR 1004 VBA
- Incompatibilité de type vba ✓ - Forum Programmation
- Erreur t32 ✓ - Forum Livebox
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Une erreur s'est produite instagram ✓ - Forum Instagram
- Erreur 0x80070643 - Accueil - Windows
2 réponses
Bonjour
sur quelle ligne se produit l'erreur?
ici?
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.
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.