/ / Excel - Formule de remplissage automatique horizontale avec incrément de numéro de cellule - excel, remplissage automatique, formules de tableau

Excel - formule de remplissage automatique horizontale avec incrément de numéro de cellule - excel, remplissage automatique, formules de tableau

J'ai le problème suivant. Je veux copier cette formule =SUMPRODUCT(--($C3:$Q3=C4:Q4)) , qui se trouve dans la cellule C13, aux cellules adjacentes (D13, E13, F13, etc.), mais je souhaite que $ C3: $ Q3 devienne $ C4: $ Q4. (fondamentalement =SUMPRODUCT(--($C3:$Q3=C4:Q4)) ====> =SUMPRODUCT(--($C4:$Q4=C4:Q4)) etc). Le fait de glisser horizontalement n’aide en rien, car le remplissage automatique incrémente les lignes et non le numéro de colonne.

J'ai essayé avec OFFSET, mais autant que je sache, il fait référence aux données et non aux formules. Toute aide serait appréciée. Merci d'avance.

Réponses:

0 pour la réponse № 1

Dans C13 mettre

=SUMPRODUCT(--(OFFSET($C$3:$Q$3,SUM(COLUMN(C13)-COLUMN($C$13)),,,)=$C$4:$Q$4))

Ensuite, faites-le glisser sur les colonnes.

Remarque:

1) Cela suppose $C$4:$Q$4 est une plage fixe à comparer car elle reste la même dans votre exemple

2) Cela ne vous dérange pas que la formule de la colonne D soit une référence automatique

Vous pouvez aussi simplement inclure dans Index au lieu.

=SUMPRODUCT(--(INDEX(OFFSET($C$3:$Q$3,COLUMN(C13)-COLUMN($C$13),,,),0,0)=$C$4:$Q$4))

Exemple:

Exemple

Modifier:

Basé sur le classeur de partage où il faut faire glisser les colonnes et les lignes vers le bas pour comparer les éléments de matrice 64 * 64 (dans le cas où chaque élément est une ligne du tableau source)

Dans C71, insérez ce qui suit et glissez-vous vers le BM133:

=SUMPRODUCT(--(INDEX($C$2:$W$64,MATCH($B71,$B$2:$B$64,0),0)=INDEX($C$2:$W$64,MATCH(C$70,$B$2:$B$64,0),0)))

Résultat:

Échantillon de résultats

Avec la colonne R, le test du sexe étant différent ajouté en C71, insérez ce qui suit et glissez-vous vers BM133:

=IF(INDEX($C$2:$W$64,MATCH($B71,$B$2:$B$64,0),16)<>INDEX($C$2:$W$64,MATCH(C$70,$B$2:$B$64,0),16),SUMPRODUCT(--(INDEX($C$2:$W$64,MATCH($B71,$B$2:$B$64,0),0)=INDEX($C$2:$W$64,MATCH(C$70,$B$2:$B$64,0),0))),"")

0 pour la réponse № 2

La conversion des formules en texte devrait fonctionner.

  1. Copiez votre =SUMPRODUCT formule vers le bas autant de lignes que vous avez besoin de colonnes remplies.
  2. Convertissez les formules en texte. Mettez en surbrillance les lignes que vous avez copiées et recherchez et remplacez toutes les lignes. = avec "=
  3. Copiez ces lignes.
  4. Sélectionnez la cellule dans la colonne où vous voulez les formules et collez spécial avec values et transpose choisi.
  5. Mettez en surbrillance les cellules collées et trouvez et remplacez tous = avec =

Malheureusement, la dernière étape est nécessaire pour que cela fonctionne même si cela semble superflu.