VBA Fonctions personnalisées Somme avec plusieurs critères

Bonjour,

Je cherche à faire une fonction VBA personnalisée de somme.si.ens sur plusieurs colonnes.

Je fais d’abord une procédure Sub pour retourner le résultat par un msgbox avant de transposer de faire finalement ma fonction.

Je souhaiterais avoir une somme de plusieurs somme.si.ens:

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne H (8ieme colonne) je remplis un critère

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne I (7ieme colonne) je remplis un critère

etc

Jusqu'à

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne I (28ieeme colonne) je remplis un critère

Mais je n' y arrive pas . Pouvez svp m’aider. Je mets en pj le fichier avec les lignes de codes.

9sumifs.xlsm (20.72 Ko)

Merci pour votre aide

Re,

J'ai pu avancer sur la procédure Sub. Je n'ai plus d'erreur mais le résultat retourné est erroné:

Ci-après la procédure SUB. je joins aussi le fichier

9sumifs.xlsm (20.79 Ko)

Sub Somme_Heures_SI_E()

Dossier = Lille

Tâches = Rapp

For Jour = 8 To 28

Resultat = Resultat + WorksheetFunction.SumIfs(ThisWorkbook.Sheets("Feuil1").Columns(3), _

ThisWorkbook.Sheets("Feuil1").Columns(4), "=" & Dossier, _

ThisWorkbook.Sheets("Feuil1").Columns(8), "=" & Tâches)

Next Jour

MsgBox Resultat

End Sub

Bonjour,

Je cherche à faire une fonction VBA personnalisée de somme.si.ens sur plusieurs colonnes.

Je fais d’abord une procédure Sub pour retourner le résultat par un msgbox avant de transposer de faire finalement ma fonction.

Je souhaiterais avoir une somme de plusieurs somme.si.ens:

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne H (8ieme colonne) je remplis un critère

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne I (7ieme colonne) je remplis un critère

etc

Jusqu'à

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne I (28ieeme colonne) je remplis un critère

Mais je n' y arrive pas . Pouvez svp m’aider. Je mets en pj le fichier avec les lignes de codes.

SUmifs.xlsm

Merci pour votre aide

Re,

J'ai pu avoir ce bout de code:

Function Somme_Heures_SI(Dossier As String, Taches As String, NbreJourMois As Integer)

Application.Volatile

Somme_Heures_SI = WorksheetFunction.SumIfs(ThisWorkbook.Sheets("Feuil1").Columns(3), _

ThisWorkbook.Sheets("Feuil1").Columns(4), "=" & Dossier, _

ThisWorkbook.Sheets("Feuil1").Columns(8), "=" & Taches) _

+ _

WorksheetFunction.SumIfs(ThisWorkbook.Sheets("Feuil1").Columns(3), _

ThisWorkbook.Sheets("Feuil1").Columns(4), "=" & Dossier, _

ThisWorkbook.Sheets("Feuil1").Columns(9), "=" & Taches) _

+ _

WorksheetFunction.SumIfs(ThisWorkbook.Sheets("Feuil1").Columns(3), _

ThisWorkbook.Sheets("Feuil1").Columns(4), "=" & Dossier, _

ThisWorkbook.Sheets("Feuil1").Columns(10), "=" & Taches) _

+ _

WorksheetFunction.SumIfs(ThisWorkbook.Sheets("Feuil1").Columns(3), _

ThisWorkbook.Sheets("Feuil1").Columns(4), "=" & Dossier, _

ThisWorkbook.Sheets("Feuil1").Columns(11), "=" & Taches)

End Function

Elle fonctionne mais je voudrais avoir une boucle qui fait ce calcul car je dois faire faire ce calcul sur toutes les jours du mois.

1 jour = 1 colonne .

Et il n'est pas très élégant de repéter 31 ou 30 28 ou 29 fois le bout de code suivant.

WorksheetFunction.SumIfs(ThisWorkbook.Sheets("Feuil1").Columns(3), _

ThisWorkbook.Sheets("Feuil1").Columns(4), "=" & Dossier, _

ThisWorkbook.Sheets("Feuil1").Columns(...), "=" & Taches)

Je mets en pj le fichier modifié.

Pouvez-vous svp m'aider ?

12sumifs-2.xlsm (23.23 Ko)

Bonjour,

Je cherche à faire une fonction VBA personnalisée de somme.si.ens sur plusieurs colonnes.

Je fais d’abord une procédure Sub pour retourner le résultat par un msgbox avant de transposer de faire finalement ma fonction.

Je souhaiterais avoir une somme de plusieurs somme.si.ens:

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne H (8ieme colonne) je remplis un critère

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne I (7ieme colonne) je remplis un critère

etc

Jusqu'à

la somme des montants dans la colonne C si et dans la colonne D et dans la colonne I (28ieeme colonne) je remplis un critère

Mais je n' y arrive pas . Pouvez svp m’aider. Je mets en pj le fichier avec les lignes de codes.

SUmifs.xlsm

Merci pour votre aide

Rechercher des sujets similaires à "vba fonctions personnalisees somme criteres"