mise en place de formule uniquement si une cellule est remplie
1 réponse
L-A
Bonjour
Sur un tableau de 200 lignes et 300 colonnes , j'i mis une formule sur les =
5 derni=C3=A8res colonnes.
N=C3=A9anmoins, cette formule ne sert =C3=A0 rien si aucune cellule de la l=
igne en question n'est renseign=C3=A9e.
Cela alourdi donc mon classeur !!
Est il possible que dans ces fameuses 5 derni=C3=A8res colonnes ou sont cen=
s=C3=A9es =C3=AAtre mes formules, de ne les inscrire uniquement si une cell=
ule de la ligne consid=C3=A9r=C3=A9 (plage) est renseign=C3=A9e
j'ai bien tent=C3=A9 ce mais ca calcul le classeur entier
Private Sub Worksheet_Change(ByVal Target As Range)
Range("F3").Select
ActiveCell.FormulaR1C1 =3D "=3DSUM(RC[-4]:RC[-1])"
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Le 05/06/20 à 16:53, L-A a écrit :
ActiveCell.FormulaR1C1 = "=SUM(RC[-4]:RC[-1])"
Bonjour, Ce que tu peux faire, utiliser la commande "calcul manuel" pour cette feuille. La commande est : Onglet "Formule" du ruban / Options de calcul / Manuel Cela n'affecte pas le calcul automatique des autres feuilles. Après la saisie de donnée, tu passes la feuille en calcul automatique lorsqu'il s'agit de mettre la feuille à jour. Cela te permet d'inscrire toutes les formules à la création du classeur et ne pas être importuné par la lenteur de la mise à jour des formules. Tu peux aussi essayer ceci. Dans l'exemple que tu donnes, tu as une somme d'une plage de cellules. Suppose que ta formule est : =SOMME($C1:$F1) que tu répètes sur 200 lignes. A ) Crée un nom ("Coût") significatif en fonction de ce que représente le résultat et utilise cette formule pour Référence à : =SOMME(Feuil1!$C1:$F1) Nom : Coût Référence à : =SOMME(Feuil1!$C1:$F1) Tu recopies dans ta feuille en lieu et place de ta formule initiale par : =coût sur toute la colonne. Si tu n'as pas de formules matricielles complexes, seulement des formules simples, cela ne devrait pas trop ralentir la saisie de données! C'est possible d'ajouter les formules au fur et à mesure que le tableau se remplit en utilisant une macro , mais plus il y aura de données, moins la macro aura l'effet que tu désires... MichD
Le 05/06/20 à 16:53, L-A a écrit :
ActiveCell.FormulaR1C1 = "=SUM(RC[-4]:RC[-1])"
Bonjour,
Ce que tu peux faire, utiliser la commande "calcul manuel" pour cette
feuille.
La commande est : Onglet "Formule" du ruban / Options de calcul / Manuel
Cela n'affecte pas le calcul automatique des autres feuilles. Après la
saisie de donnée, tu passes la feuille en calcul automatique lorsqu'il
s'agit de mettre la feuille à jour.
Cela te permet d'inscrire toutes les formules à la création du classeur
et ne pas être importuné par la lenteur de la mise à jour des formules.
Tu peux aussi essayer ceci.
Dans l'exemple que tu donnes, tu as une somme d'une plage de cellules.
Suppose que ta formule est : =SOMME($C1:$F1) que tu répètes sur 200 lignes.
A ) Crée un nom ("Coût") significatif en fonction de ce que représente
le résultat et utilise cette formule pour Référence à :
=SOMME(Feuil1!$C1:$F1)
Nom : Coût
Référence à : =SOMME(Feuil1!$C1:$F1)
Tu recopies dans ta feuille en lieu et place de ta formule initiale par :
=coût sur toute la colonne.
Si tu n'as pas de formules matricielles complexes, seulement des
formules simples, cela ne devrait pas trop ralentir la saisie de données!
C'est possible d'ajouter les formules au fur et à mesure que le tableau
se remplit en utilisant une macro , mais plus il y aura de données,
moins la macro aura l'effet que tu désires...
Bonjour, Ce que tu peux faire, utiliser la commande "calcul manuel" pour cette feuille. La commande est : Onglet "Formule" du ruban / Options de calcul / Manuel Cela n'affecte pas le calcul automatique des autres feuilles. Après la saisie de donnée, tu passes la feuille en calcul automatique lorsqu'il s'agit de mettre la feuille à jour. Cela te permet d'inscrire toutes les formules à la création du classeur et ne pas être importuné par la lenteur de la mise à jour des formules. Tu peux aussi essayer ceci. Dans l'exemple que tu donnes, tu as une somme d'une plage de cellules. Suppose que ta formule est : =SOMME($C1:$F1) que tu répètes sur 200 lignes. A ) Crée un nom ("Coût") significatif en fonction de ce que représente le résultat et utilise cette formule pour Référence à : =SOMME(Feuil1!$C1:$F1) Nom : Coût Référence à : =SOMME(Feuil1!$C1:$F1) Tu recopies dans ta feuille en lieu et place de ta formule initiale par : =coût sur toute la colonne. Si tu n'as pas de formules matricielles complexes, seulement des formules simples, cela ne devrait pas trop ralentir la saisie de données! C'est possible d'ajouter les formules au fur et à mesure que le tableau se remplit en utilisant une macro , mais plus il y aura de données, moins la macro aura l'effet que tu désires... MichD