2017-08-24 2 views
0

Je rencontre un problème dans Excel en faisant glisser pour remplir des formules. J'ai des formules dans des rangées telles que chaque rangée a une formule différente qui référence aux rangées/cellules sur d'autres feuilles. Supposons que sur la feuille 1, les formules dans les cellules C2: C9 extraient les données de la feuille 2 des cellules C4, G4, H4, etc. Si je sélectionne les cellules de la feuille 1 C2: C9, puis cliquez pour faire glisser vers le bas pour former un autre groupe de formules dans les cellules C10: C17, les formules à l'intérieur changent leur référence de 8 lignes de telle sorte que si la feuille 1 C2 tire des données de la feuille 2 G4, la prochaine formule similaire dans la feuille 1 C10 finit par extraire les données de la feuille 2 G12.Excel: comment modifier les formules par rapport à chaque nouveau groupe de groupes de formules?

C'est le problème que j'ai; au lieu des formules changeant pour référencer toutes les 8 lignes, comment pourrais-je faire en sorte qu'il ne change que de 1 rangée à la place? Ou, pour chaque nouveau groupe de formules déplacé et rempli, ne modifiez les références dans ces formules que d'une ligne. Si la confusion persiste, déterminez si les cellules C2: C9 ont été fusionnées en une seule cellule. Même si vous traîniez cette formule, la formule à l'intérieur changerait toujours de 8 lignes, même si elle ne formait qu'une seule cellule à chaque fois. Pour autant que je sache, il n'y a pas de fonction Excel intégrée pour ce faire et je crois que la seule façon de le faire serait un code VBA, mais je ne connais pas le langage VBA. Puisque ce serait une chose une seule fois, le code VBA pourrait soit appliquer ce 'formatage de ligne' comme je clique et faites glisser, ou le code VBA pourrait simplement remplir automatiquement les cellules pour moi.

Répondre

0

Utilisation INDEX() et quelques calculs:

Dans C2, il serait quelque chose comme:

=INDEX(Sheet2!C:C,(ROW(1:1)-1)/8+4) 

Lorsque 8 est l'espacement de formule et 4 est la première ligne souhaitée pour revenir.

C2 retournerait Feuil2! C4, C10 serait Feuil2! C5

En utilisant cela, vous pouvez modifier les autres formules pour que le motif désiré.