Problème VBA - Fonction Somme Si Ens
Résolu
Sizlacks
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
Sizlacks Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
Sizlacks Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je tente de faire un code vba utilisant la fonction "somme si ens (Sumifs)".
L'idée est que ma fonction fasse la somme des valeurs de la colonne B si les valeurs de la colonne A de la feuille 1 sont incluses dans un intervalle de valeurs définies dans la feuille 2.
J’inclurai en fin de message le code que j'ai déjà effectué.
Le problème est que lorsque je lance mon code en Pas à pas pour vérifier sont fonctionnement, arrivé à la ligne ou j'ai défini ma fonction "Sumifs" VBA me renvoie un message "Erreur d’exécution '1004' : Erreur définie par l'application ou par l'objet".
Je vous serait très reconnaissant du temps que vous prendrez pour jeter un oeil ...
D'avance merci,
Cordialement,
Ci après, mon code.
Sub PassageTiers()
Dim w As Integer 'Colonne Fine
Dim x As Integer 'Colonne tiers
Dim nbrfichier As Integer
Dim nbrfreq As Integer
Dim valtiers As Double
nbrfichier = 39
nbrfreq = 193
w = 1
Do Until w = nbrfichier + 1
w = w + 1
Do Until x = 29
x = 3
valtiers = Application.WorksheetFunction.SumIfs(Worksheets("Résultats_Bandes_Fines").Range(Cells(2, w), Cells(nbrfreq + 1, w)), Worksheets("Résultats_Bandes_Fines").Range(Cells(2, 1), Cells(nbrfreq + 1, 1)), "" > "" & Worksheets(Résultats_Tiers_Oct).Cells(2, x), Worksheets("Résultats_Bandes_Fines").Range(Cells(2, 1), Cells(nbrfreq + 1)), "" <= "" & Worksheets("Résultats_Tiers_Oct").Cells(3, x))
Worksheets("Résultats_Tiers_Oct").Cells(w + 3, x) = valtiers
x = x + 1
valtiers = 0
Loop
Loop
End Sub
je tente de faire un code vba utilisant la fonction "somme si ens (Sumifs)".
L'idée est que ma fonction fasse la somme des valeurs de la colonne B si les valeurs de la colonne A de la feuille 1 sont incluses dans un intervalle de valeurs définies dans la feuille 2.
J’inclurai en fin de message le code que j'ai déjà effectué.
Le problème est que lorsque je lance mon code en Pas à pas pour vérifier sont fonctionnement, arrivé à la ligne ou j'ai défini ma fonction "Sumifs" VBA me renvoie un message "Erreur d’exécution '1004' : Erreur définie par l'application ou par l'objet".
Je vous serait très reconnaissant du temps que vous prendrez pour jeter un oeil ...
D'avance merci,
Cordialement,
Ci après, mon code.
Sub PassageTiers()
Dim w As Integer 'Colonne Fine
Dim x As Integer 'Colonne tiers
Dim nbrfichier As Integer
Dim nbrfreq As Integer
Dim valtiers As Double
nbrfichier = 39
nbrfreq = 193
w = 1
Do Until w = nbrfichier + 1
w = w + 1
Do Until x = 29
x = 3
valtiers = Application.WorksheetFunction.SumIfs(Worksheets("Résultats_Bandes_Fines").Range(Cells(2, w), Cells(nbrfreq + 1, w)), Worksheets("Résultats_Bandes_Fines").Range(Cells(2, 1), Cells(nbrfreq + 1, 1)), "" > "" & Worksheets(Résultats_Tiers_Oct).Cells(2, x), Worksheets("Résultats_Bandes_Fines").Range(Cells(2, 1), Cells(nbrfreq + 1)), "" <= "" & Worksheets("Résultats_Tiers_Oct").Cells(3, x))
Worksheets("Résultats_Tiers_Oct").Cells(w + 3, x) = valtiers
x = x + 1
valtiers = 0
Loop
Loop
End Sub
A voir également:
- Somme si en vba
- Somme si couleur - Guide
- Formule somme excel colonne - Guide
- Somme en anglais excel - Guide
- L'indice n'appartient pas à la sélection vba - Forum VB / VBA
- Incompatibilité de type vba ✓ - Forum Programmation
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, peux-tu utiliser les balises de code pour partager du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
as-tu essayé de calculer cela en VBA plutôt que via une formule?
as-tu essayé de calculer cela en VBA plutôt que via une formule?
quel type de balise dois-je utiliser pour du code vba... ? "Basic" ? "xml" ?
j'ai commencer vba il y a deux jours, je suis pas encore très bien rodé !