/ / Comment puis-je faire cette formule, mais pour la colonne entière dans Excel? - excel-formule

Comment puis-je faire cette formule, mais pour la colonne entière dans Excel? - excel-formule

C’est la formule que j’utilise pour la rangée 4,

=IF(E4 - D4 >= 3,C4 + 3,"IF(E4 - D4 <= -2, C4 - 2, IF(E4 - D4 > 0 And E4 - D4 < 3, C4 + E4 - D4, IF(E4 - D4 > -2 And E4 - D4 < 0,  G4 = C4 + E4 - D4, C4)))")

Comment pourrais-je le faire fonctionner pour chaque rangée en dessous de la rangée 4 également?

Réponses:

1 pour la réponse № 1

Méthode 1 - glisser

Sélectionnez la cellule, cliquez sur le petit carré dans le coin en bas à droite et faites-le glisser vers le bas (comme Scott l'a dit dans les commentaires)

Méthode 2 - Double clic

Un double-clic remplit automatiquement la formule jusqu'à la fin de la plage contenant les données.

Les versions ultérieures d'Excel sont un peu plus intelligentes à cet égard, car les anciennes versions et les logiciels tels que Google Sheets se résument à la dernière cellule non vide laissée dans la cellule que vous faites glisser. (Merci Scott)

Méthode 3 - Copier-coller

Copiez-le et collez-le (comme l'a dit Lurker).
Il suffit de sélectionner la cellule avec la formule, appuyez sur Ctrl+C, sélectionnez les lignes de la colonne où vous souhaitez coller la formule et appuyez sur Ctrl+V

Méthode 4 - CTRL + D

Version de raccourci clavier.

  • Accédez à la fin de la plage à laquelle vous souhaitez appliquer la formule et sélectionnez le.
  • presse Ctrl+
  • presse Ctrl+

Méthode 5 - Formule de tableau

Sélectionnez la plage dans laquelle vous souhaitez appliquer la formule (j'ai utilisé E4:E6 etc.) et utilisez cette formule:

=IF(E4:E6 - D4:D6 >= 3,C4:C6 + 3,"IF(E4 - D4 <= -2, C4 - 2, IF(E4 - D4 > 0 And E4 - D4 < 3, C4 + E4 - D4, IF(E4 - D4 > -2 And E4 - D4 < 0,  G4 = C4 + E4 - D4, C4)))")

et appuyez sur Ctrl+Décalage+Entrer.
Vous pouvez appliquer cela à toute la colonne si vous utilisez E:E mais vous devez commencer à la rangée 1. Ceci évaluera la formule et prendra la ligne de la plage dans laquelle la formule est en cours d'exécution.
Cela signifie que si vous appliquez la formule à F4:F6 avec la formule contenant F4:F6 il l'évaluera une fois pour chaque ligne de la plage.

Méthode 6 - VBA

Qu'est-ce que tu fais encore ici?

Sub Macro1()
Range("F4").Copy
For Each Row In Range("F4:F100")
Row.Select
ActiveSheet.Paste
Next Row
End Sub

Parcourt les colonnes et définit la formule

Méthode 7 - Écrire un script Python modifiant le fichier .xlsx

oh allez ...


Si vous souhaitez également modifier la référence de la ligne dans la chaîne, vous pouvez le faire facilement en utilisant la concaténation de chaînes en remplaçant chaque 4 avec "&ROW()&" le rendant:

=IF(E4 - D4 >= 3,C4 + 3,"IF(E"&ROW()&" - D"&ROW()&" <= -2, C"&ROW()&" - 2, IF(E"&ROW()&" - D"&ROW()&" > 0 And E"&ROW()&" - D"&ROW()&" < 3, C"&ROW()&" + E"&ROW()&" - D"&ROW()&", IF(E"&ROW()&" - D"&ROW()&" > -2 And E"&ROW()&" - D"&ROW()&" < 0,  G"&ROW()&" = C"&ROW()&" + E"&ROW()&" - D"&ROW()&", C"&ROW()&")))")

ou pour la formule de tableau

=IF(E4:E6 - D4:D6 >= 3,C4:C6 + 3,"IF(E"&ROW()&" - D"&ROW()&" <= -2, C"&ROW()&" - 2, IF(E"&ROW()&" - D"&ROW()&" > 0 And E"&ROW()&" - D"&ROW()&" < 3, C"&ROW()&" + E"&ROW()&" - D"&ROW()&", IF(E"&ROW()&" - D"&ROW()&" > -2 And E"&ROW()&" - D"&ROW()&" < 0,  G"&ROW()&" = C"&ROW()&" + E"&ROW()&" - D"&ROW()&", C"&ROW()&")))")