[VBA/Excel] Formule IF contenant variable dans cellule
Résolu/Fermé
AmauryL
Messages postés
2
Date d'inscription
jeudi 21 février 2013
Statut
Membre
Dernière intervention
22 février 2013
-
Modifié par AmauryL le 21/02/2013 à 18:27
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 22 févr. 2013 à 11:00
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 22 févr. 2013 à 11:00
A voir également:
- [VBA/Excel] Formule IF contenant variable dans cellule
- Formule excel pour additionner plusieurs cellules - Guide
- Aller à la ligne dans une cellule excel - Guide
- Formule excel si et - Guide
- Formule excel moyenne - Guide
- Formule excel - Guide
3 réponses
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
Modifié par pilas31 le 22/02/2013 à 01:43
Modifié par pilas31 le 22/02/2013 à 01:43
Bonsoir,
Oui c'est possible mais deux choses à corriger :
1/ il faut inserer les variables en concatenant les chaines avec &
2/ Il faut utiliser la notation "A1" pour les cellules
Voila l'exemple en gras corrigé :
La variable AdrA1 est une chaine qui reçoit l'adresse de la cellule en format A1. Par exemple si iterim vaut 1 AdrA1="G10"
A+
Cordialement,
Oui c'est possible mais deux choses à corriger :
1/ il faut inserer les variables en concatenant les chaines avec &
2/ Il faut utiliser la notation "A1" pour les cellules
Voila l'exemple en gras corrigé :
AdrA1 = Cells(9 * iteritem + 1, 7).Address(False, False) Cells(9 * iteritem + 1, 2) = "=IF(" & AdrA1 & "=""Fourniture"",""A"",IF(" & AdrA1 & "=""Transport"",""B"",""C""))"
La variable AdrA1 est une chaine qui reçoit l'adresse de la cellule en format A1. Par exemple si iterim vaut 1 AdrA1="G10"
A+
Cordialement,
AmauryL
Messages postés
2
Date d'inscription
jeudi 21 février 2013
Statut
Membre
Dernière intervention
22 février 2013
Modifié par baladur13 le 4/07/2014 à 00:06
Modifié par baladur13 le 4/07/2014 à 00:06
Bonjour,
Je vous remercie pour votre aide, je n'avais pas pensé à faire cela. Y-a-t-il une raison pour laquelle il faut impérativement mettre l'adresse de cellule en format A1 ?
Dans tous les cas, votre aide me fut précieuse pilas31. Je vous remercie grandement, et vous souhaite une agréable journée.
Nom supprimé Modération CCM
Je vous remercie pour votre aide, je n'avais pas pensé à faire cela. Y-a-t-il une raison pour laquelle il faut impérativement mettre l'adresse de cellule en format A1 ?
Dans tous les cas, votre aide me fut précieuse pilas31. Je vous remercie grandement, et vous souhaite une agréable journée.
Nom supprimé Modération CCM
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
Modifié par pilas31 le 22/02/2013 à 11:01
Modifié par pilas31 le 22/02/2013 à 11:01
Bonjour,
Je répond à la dernière question.
On peut utiliser soit le format A1 soit le format R1C1. Comme on injecte des formules dans Excel via le VBA, il faut impérativement utiliser les mêmes formats que lorsqu'on code les formules "à la main".
Donc on peut aussi choisir le format R1C1 dans ce cas il faut utiliser une syntaxe du type :
Cells(...).FormulaR1C1 = "..."
Bonne continuation
Cordialement,
Je répond à la dernière question.
On peut utiliser soit le format A1 soit le format R1C1. Comme on injecte des formules dans Excel via le VBA, il faut impérativement utiliser les mêmes formats que lorsqu'on code les formules "à la main".
Donc on peut aussi choisir le format R1C1 dans ce cas il faut utiliser une syntaxe du type :
Cells(...).FormulaR1C1 = "..."
Bonne continuation
Cordialement,