Demande d'aide sur un programme VBA

Bonjour tout le monde,

Au fait ce que je voulais faire c'est calculer somme.si sur chaque ligne de la colonne 3 prenant en paramètres la plage qui se trouve dans une autre feuille du classeur en colonne 140 Sheets("PRIMES assurvie") et le paramètre "somme_plage" qui est la colonne 91 de la feuille Sheets("PRIMES assurvie").
Je me suis bien assuré que le nom des feuilles étaient exacts surtout pour l'erreur de type 9 qui vient à la deuxième ligne du code.

J'ai une erreur de type 9:"l'indice n'appartient pas à la sélection" au niveau de la ligne 2:"Worksheets("LR ASSURVIE 2021").Activate"

Ensuite j'ai une erreur de type 13: "incompatibilité de type" au niveau de la ligne 7:
"Cells(i, 3).Value = Application.WorksheetFunction.SumIfs(Worksheets("PRIMES assurvie").Columns(91), Cells(i, 1), Sheets("PRIMES assurvie").Columns(140))"

Qui pourrait m'aider sur ca ?

Sub somsi()
Worksheets("LR ASSURVIE 2021").Activate
Call TurnOffStuff
Dim i As Double
i = 4
Do While Cells(i, 1) <> ""
Cells(i, 3).Value = Application.WorksheetFunction.SumIfs(Worksheets("PRIMES assurvie").Columns(91), Cells(i, 1), Sheets("PRIMES assurvie").Columns(140))
i = i + 1
Loop
Call TurnOnStuff
End Sub

Merci cordialement !

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    bonjour,
    pour la première erreur, es-tu certain du nom de la feuille?
    1. bonjour @yg_be
      Merci pour la première erreur, il y avait un espace en plus quand j'écrivais le nom de l'onglet !
      J'attends ton aide pour la deuxième erreur qui est de type 13.
    2. @yg_beOui oui c'est dans le bon ordre j'ai vérifié