Etrange solution pour mon erreur 1004

Résolu
Bonjour,

J'ai fais une macro "enregistré", pour utiliser les fonction NB.SI.ENS & SOMME.SI.ENS sur des bases de données et les reporter dans un tableau. Bref.

Dès la première ligne, erreur 1004 :

Sub TimeGather()
'
' TimeGather Macro
'
ActiveCell.FormulaR1C1 = _
"=SUMIF(Tableau2[Nombre],Tableau2[Nom1],[@Nom2])"

Range("C7").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS(Tableau2[Nombre],Tableau2[Nom1],[@Nom2])"
Range("D6").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS(Tableau2[Nombre],Tableau2[Nom1],[@Nom2])"

Finalement j'ai juste supprimé la premère ligne,

ActiveCell.FormulaR1C1 = _
"=SUMIF(Tableau2[Nombre],Tableau2[Nom1],[@Nom2])"


et la macro semble faire ce que je lui demande.
But why ? Pourquoi est-ce que l'enregistrement n'a pas définit un Range ?
A la place de supprimer la ligne, qu'elles sont les autres solutions ?

Thanks !

1 réponse

  1. Modérateur
    Bonjour,

    Tu as du commencer ton enregistrement de macro avec la première cellule devant contenir ta formule déjà sélectionnée.

    Ensuite, avant de lancer ta macro, tu en as sélectionné une autre, probablement dans une zone générant une erreur.

    Ajoute donc, avant ta première ligne supprimée :
    Range(machin).Select ou machin serait ta première cellule devant accueillir la formule...
    1
    1. Hey!

      Oui tu as bien raison, j'ai enregistré la macro en sélectionnant la 1ère cellule contenant la formule. Et je l'ais lancé après en avoir lancé une autre. (Mais pas sur la même page...)

      Il y a encore un peu de mystère mais je vois ce qu'il n'allait pas.

      Thanks
      0