Je peux jurer que j'ai observé ce comportement dans lequel Excel remplit automatiquement une ligne insérée récemment avec la même formule que la ligne ci-dessus.
Je sais que cela peut être fait avec certains VBA, mais si possible, j'aimerais trouver ce qui déclenche cela naturellement (à moins que je ne rêve). Est-ce que quelqu'un sait comment cela est fait?
Ce n'est pas un rêve et vous avez raison: l'IA d'Excel déclenche ces choses, et pas seulement pour les tableaux. Juste un petit exemple pour démontrer:
A
avec des nombres croissants, par exemple:1 2 3 4 5
=A1*10
et complétez automatiquement la liste des numéros pour obtenir ceci:1 10 2 20 3 30 4 40 5 50
6
(ou un nombre quelconque) dans la rangée suivante sous 5
(il devrait s'agir de A6
dans le contexte) et appuyez sur TAB OR ENTER - comme tu le fais normalement.Cela ne devrait pas se produire que pour les formules - le formatage peut également être appliqué automatiquement, par exemple. Lorsque vous ajoutez une nouvelle colonne à droite du jeu de données, votre "En-tête" (1ère ligne) a un formatage spécial (remplissage noir/texte blanc) et commence à taper des valeurs à cet endroit.
Je ne peux pas vous fournir la liste complète des cas, mais je pense que vous avez la moindre idée!)
Vous pouvez éviter complètement la fonctionnalité de remplissage automatique avec des formules matricielles. Entrez simplement la formule comme d'habitude mais ajoutez :column
à la fin de chaque référence de cellule, puis appuyez sur Ctrl+Shift+Enter. La formule sera ensuite appliquée immédiatement à toutes les cellules de la colonne sans rien glisser
Par exemple, mettre =B3:B + 2*C3:C
dans D3 et Ctrl+Shift+Enter équivaut à taper =B3 + 2*C3
et à le faire glisser dans une table à partir de la ligne 3
C'est rapide à taper, mais a le désavantage que les cellules inutilisées à la fin (en dehors du tableau actuel) sont toujours calculées et affichent 0. Il existe un moyen simple de masquer les . Cependant, le meilleur moyen consiste à limiter le calcul à la dernière colonne du tableau. Sachant que dans une formule matricielle, vous pouvez utiliser X3:X101
pour n’appliquer que les cellules de X3 à X101, nous pouvons utiliser fonction INDIRECT
pour obtenir le même effet.
=LOOKUP(2, 1/(A:A <> ""), A:A)
dans une cellule en dehors de la table pour trouver la dernière cellule non vide dans la table et nommez-la LastRow
. Sinon, utilisez =COUNTA(A3:A) + 2
lorsque la première ligne de la table est 3B3:B
, utilisez =INDIRECT("B3:B" & LastRow)
Par exemple, si vous souhaitez que les cellules de la colonne D contiennent les produits des cellules de B et C et que la colonne E contienne les sommes de B et C, au lieu d'utiliser D3 = B3*C3
et E3 = B3 + C3
et de faire glisser vers le bas, vous devez simplement insérer les formules ci-dessous dans D3 et E3 respectivement. et appuyez sur Ctrl+Shift+Enter
=INDIRECT("B3:B" & LastRow) * INDIRECT("C3:C" & LastRow)
=INDIRECT("B3:B" & LastRow) + INDIRECT("C3:C" & LastRow)
A partir de maintenant chaque fois que vous ajoutez des données à une nouvelle ligne, la table sera automatiquement mise à jour
La formule de la matrice est très rapide car le modèle d'accès aux données est déjà connu. Désormais, au lieu d'effectuer 100001 calculs différents séparément, ils peuvent être vectorisés et réalisés en parallèle, en utilisant plusieurs cœurs et une unité SIMD dans la CPU. Il présente également les avantages suivants:
- Consistance: Si vous cliquez sur l’une des cellules de E2 vers le bas, la même formule s’affiche. Cette cohérence peut aider à assurer une plus grande précision.
- Sécurité: Vous ne pouvez pas écraser un composant d'une formule matricielle à plusieurs cellules. Par exemple, cliquez sur la cellule E3 et appuyez sur Supprimer. Vous devez soit sélectionner toute la plage de cellules (E2 à E11) et modifier la formule de l'ensemble du tableau, soit laisser le tableau tel quel. Par mesure de sécurité supplémentaire, vous devez appuyer sur Ctrl+Shift+Enter pour confirmer la modification de la formule.
- Taille de fichier plus petite: Vous pouvez souvent utiliser une formule matricielle à la place de plusieurs formules intermédiaires. Par exemple, le classeur utilise une formule matricielle pour calculer les résultats de la colonne E. Si vous aviez utilisé des formules standard (telles que = C2 * D2, C3 * D3, C4 * D4…), vous auriez utilisé 11 formules différentes pour calculer les mêmes résultats.
Pour plus d'informations, lisez
Pour moi, cela fonctionnait pour deux colonnes de formules et s'est soudainement arrêté pour une seule. Je pense que je dois avoir copié et collé une cellule différente dessus et foiré le lien. Pour résoudre ce problème, j'ai sélectionné la cellule et suis allé dans Accueil> Édition> Remplir> Série et réaffirmé les détails. J'espère que cela pourra aider.
J'avais ce problème où un tableau arrêtait le remplissage automatique ... Je ne sais pas pourquoi il a soudainement cessé de fonctionner, mais voici le correctif:
enter
Overwrite all cells in this column with this formula
.Cela a fonctionné à merveille pour moi, j'espère que cela aidera tout le monde.
Le problème que vous voyez est probablement dû au fait que certaines colonnes de votre table ne sont pas définies pour le remplissage automatique. Vous pouvez effectuer le remplissage automatique de la colonne en sélectionnant une cellule contenant la formule, en saisissant le cadre vert dans le coin inférieur droit et en le faisant glisser vers la dernière ligne ou le tableau. Une fois cette opération effectuée, la colonne est automatiquement renseignée, de sorte que toutes les nouvelles lignes contiennent automatiquement la formule.
Wright (ré-écrivez si nécessaire) la formule et appuyez sur Entrée. La prochaine fois que vous ajouterez des données à la ligne suivante, la formule sera automatiquement renseignée.
L'une des façons de faire cela automatiquement pour Excel consiste à copier-coller les formules souhaitées sur plusieurs lignes. Si vous le faites un par un, il n’est pas clair que le copier-coller doit être automatiquement complété pour chaque ligne suivante. Si vous copiez et collez un bloc, Excel prend le relais, puis copie et colle automatiquement la formule pour les lignes futures.
C'est le comportement par défaut d'Excel si vous entrez une formule dans une colonne vide dans un tableau . Pour l'obtenir, vous devez insérer un tableau :