A voir également:
- Excel récupérer valeur cellule si condition
- Excel copier une cellule si condition - Meilleures réponses
- Excel copier cellule si valeur - Meilleures réponses
- Copier la valeur d'une cellule sous condition ✓ - Forum - Programmation
- ((Excel)) Extraire une valeur d'une cellule ✓ - Forum - Excel
- Récupérer plusieurs valeur avec recherchev ✓ - Forum - Bureautique
- Excel: récupérer valeur dans autre feuille ✓ - Forum - Excel
- Excel:récupérer le contenu d'une cellule en fonction d'une autre - Forum - Logiciels
10 réponses
Mike-31
- Messages postés
- 17301
- Date d'inscription
- dimanche 17 février 2008
- Statut
- Contributeur
- Dernière intervention
- 20 janvier 2021
Salut,
Pourquoi une macro pour ça, si tes données sont en colonne A, B et C par exemple les sommes en C et pour la ligne 2 en cellule D2 cette formule
=SI(C2<valeurX;C2;ValeurX)
Si la valeurX peut changer, il est possible de faire référence à une cellule contenant cette valeur, ce qui évitera de devoir changer la formule exemple ValeurX en F1
Adapter cette formule en D2 et incrémenter vers le bas
=SI(C2<$F$1;C2;$F$1)
Pourquoi une macro pour ça, si tes données sont en colonne A, B et C par exemple les sommes en C et pour la ligne 2 en cellule D2 cette formule
=SI(C2<valeurX;C2;ValeurX)
Si la valeurX peut changer, il est possible de faire référence à une cellule contenant cette valeur, ce qui évitera de devoir changer la formule exemple ValeurX en F1
Adapter cette formule en D2 et incrémenter vers le bas
=SI(C2<$F$1;C2;$F$1)
McFly
et bien en fait, c'est plus compliqué.
on va dire que j'ai 6 classes d'effectifs: [0-9],[10-29],[30-49],[50-99],[100-199] et [200-250]
pour chaque classe d'effectif, j'ai un montant maximum à ne pas dépasser.
[0-9]==> 14840
[10-29] ==>29191
[30-49]==>40000
[50-99]==>47406
[100-199]==>50279
[200-250]==>76185
j'ai une base de 550 lignes à peu près. il faut que je teste la cellule dans laquelle j'ai mes classes d'effectifs, une fois cela fait, je teste le montant et, en fonction de la classe d'effectif, je regarde si ce montant est supérieur à mon plafond. Après, soit je prends le montant initial, soit je le remplace par mon plafond.
Avec une formule si, je vois pas comment le faire. Elle serait trop complexe non ?
C'est pour ça que je me suis dirigé vers vba en fait même si mon niveau me limite à cette heure-ci :D.
on va dire que j'ai 6 classes d'effectifs: [0-9],[10-29],[30-49],[50-99],[100-199] et [200-250]
pour chaque classe d'effectif, j'ai un montant maximum à ne pas dépasser.
[0-9]==> 14840
[10-29] ==>29191
[30-49]==>40000
[50-99]==>47406
[100-199]==>50279
[200-250]==>76185
j'ai une base de 550 lignes à peu près. il faut que je teste la cellule dans laquelle j'ai mes classes d'effectifs, une fois cela fait, je teste le montant et, en fonction de la classe d'effectif, je regarde si ce montant est supérieur à mon plafond. Après, soit je prends le montant initial, soit je le remplace par mon plafond.
Avec une formule si, je vois pas comment le faire. Elle serait trop complexe non ?
C'est pour ça que je me suis dirigé vers vba en fait même si mon niveau me limite à cette heure-ci :D.
Mike-31
- Messages postés
- 17301
- Date d'inscription
- dimanche 17 février 2008
- Statut
- Contributeur
- Dernière intervention
- 20 janvier 2021
Re,
Ces valeurs [0-9],[10-29],[30-49],[50-99],[100-199] et [200-250] sont dans quelle colonne
et peut il y avoir des valeurs inférieure à 0 et supérieure à 250 !
ensuite les valeurs 14840, 29191, 40000, 47406, 50279, 76185 sont elles des valeurs fixe ou enregistrées dans des cellules et lesquelles !
et pour terminer les valeurs à comprarer à ces dernières sont dans quelle colonne !
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Ces valeurs [0-9],[10-29],[30-49],[50-99],[100-199] et [200-250] sont dans quelle colonne
et peut il y avoir des valeurs inférieure à 0 et supérieure à 250 !
ensuite les valeurs 14840, 29191, 40000, 47406, 50279, 76185 sont elles des valeurs fixe ou enregistrées dans des cellules et lesquelles !
et pour terminer les valeurs à comprarer à ces dernières sont dans quelle colonne !
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
McFly
Salut mike .
Mes classes d'effectifs sont en colonne A et mes montants maximums (14480,29191,etc) sont saisis dans un petit tableau sur un autre onglet (mais rien ne m'empêche de le rapatrier sur cet onglet.).
Pour ce qui est de valeurs négatives ou supérieures à 250, aucun des deux cas n'est possible.
Les valeurs à comparer (soit les montants réels) aux montants maximums sont en colonne C
merci à toi de me consacrer du temps.
McFly
Mes classes d'effectifs sont en colonne A et mes montants maximums (14480,29191,etc) sont saisis dans un petit tableau sur un autre onglet (mais rien ne m'empêche de le rapatrier sur cet onglet.).
Pour ce qui est de valeurs négatives ou supérieures à 250, aucun des deux cas n'est possible.
Les valeurs à comparer (soit les montants réels) aux montants maximums sont en colonne C
merci à toi de me consacrer du temps.
McFly
Mike-31
- Messages postés
- 17301
- Date d'inscription
- dimanche 17 février 2008
- Statut
- Contributeur
- Dernière intervention
- 20 janvier 2021
Re,
Regardes le fichier joint avec le lien ci-dessous, en colonne A tu saisis la classe et en B le montant.
je te propose plusieurs formules que le montants de références soient sur la même feuille colonne K ou sur un autre feuille exemple feuille 2 colonne B
https://www.cjoint.com/?bksP0mtQka
Regardes le fichier joint avec le lien ci-dessous, en colonne A tu saisis la classe et en B le montant.
je te propose plusieurs formules que le montants de références soient sur la même feuille colonne K ou sur un autre feuille exemple feuille 2 colonne B
https://www.cjoint.com/?bksP0mtQka
McFly
HA oué!!! elles sont balaises les formules que tu as sorti :D
Ecoute, ça à l'air de correspondre à ce que je veux, merci beaucoup. Je pense utiliser la formule en colonne D du coup. par contre, j'ai une question, je peux tirer cette formule sans soucis ?
Autre question, je peux l'utiliser sur un excel 2002 ?
En tout cas, un grand merci pour ton aide. tu me retires une belle épine du pied :)
Ecoute, ça à l'air de correspondre à ce que je veux, merci beaucoup. Je pense utiliser la formule en colonne D du coup. par contre, j'ai une question, je peux tirer cette formule sans soucis ?
Autre question, je peux l'utiliser sur un excel 2002 ?
En tout cas, un grand merci pour ton aide. tu me retires une belle épine du pied :)
Mike-31
- Messages postés
- 17301
- Date d'inscription
- dimanche 17 février 2008
- Statut
- Contributeur
- Dernière intervention
- 20 janvier 2021
Re,
Sur Excel 2002 il ne devrait pas y avoir de problème, si tu laisses les valeurs de référence sur une autre feuille, je te conseille de nommer chaque cellule (Insertion(Nom/Définir) pour la première dans mon exemple je l'ai nommée classe1 la deuxième classe2 etc ...
Explication de la formule, elle traite la valeur maximale pour terminer au contrôle de la valeur minimale.
pour chaque groupe la formule est =SI(ET(A2>=200;B2>classe6);classe6;
qui en clair pose une double condition, il faut que la valeur soit supérieure à la dernière classe SI >=200 mais également avec ET> à la valeur de référence alors afficher la valeur de référence sinon contrôler l'autre classe etc jusqu'à la dernière classe et sinon en fin de formule si dans aucun des cas la valeur n'est pas supérieure à la valeur référence en fonction de sa classe afficher la valeur en B
Lorsque tu parles de tirer la formule, je pense que tu veux parler d'incrémenter, alors oui bien sur grâce aux références absolue (lorsque tu veux faire référence à une cellule fixe on dit absolue on la place entre dollar $B$2 par exemple ou on nomme la cellule
Si tes attentes sont satisfaites, n'oublis pas de mettre ton statut en résolu
Merci
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Sur Excel 2002 il ne devrait pas y avoir de problème, si tu laisses les valeurs de référence sur une autre feuille, je te conseille de nommer chaque cellule (Insertion(Nom/Définir) pour la première dans mon exemple je l'ai nommée classe1 la deuxième classe2 etc ...
Explication de la formule, elle traite la valeur maximale pour terminer au contrôle de la valeur minimale.
pour chaque groupe la formule est =SI(ET(A2>=200;B2>classe6);classe6;
qui en clair pose une double condition, il faut que la valeur soit supérieure à la dernière classe SI >=200 mais également avec ET> à la valeur de référence alors afficher la valeur de référence sinon contrôler l'autre classe etc jusqu'à la dernière classe et sinon en fin de formule si dans aucun des cas la valeur n'est pas supérieure à la valeur référence en fonction de sa classe afficher la valeur en B
Lorsque tu parles de tirer la formule, je pense que tu veux parler d'incrémenter, alors oui bien sur grâce aux références absolue (lorsque tu veux faire référence à une cellule fixe on dit absolue on la place entre dollar $B$2 par exemple ou on nomme la cellule
Si tes attentes sont satisfaites, n'oublis pas de mettre ton statut en résolu
Merci
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
McFly
Merci pour ces explications. Tu m'as en plus fait découvrir la fonction "ET" qui est TRES pratique apparemment :)
Je ne sais par contre pas comment mettre mon sujet en Résolu.... :/
Merci encore.
McFly
Je ne sais par contre pas comment mettre mon sujet en Résolu.... :/
Merci encore.
McFly