Vba ActiveCell.Formula [Résolu/Fermé]

Signaler
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
-
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
-
Bonjour,

Je n'arrive pas pas à écrire une macro correctement (excel 2003)

au départ j'avais la formule ci-dessus qui fonctionnait bien ...

ActiveCell.Formula = "=concat(A1:AZ10)"
(la formule concat est une formule sur-mesure)

Je cherche à mettre cette formule dans un si,ce qui donne:
=si(gauche(concat(A1:AZ10);6)="<br />";"";concat(A1:AZ10))

je crois qu'il faut doubler les double quotes, j'ai donc essayé:
ActiveCell.Formula = "=si(gauche(concat(A1:AZ10);6)=""<br />"";"""";concat(A1:AZ10))"

mais ça ne fonctionne pas

Pourriez-vous maider ?
merci d'avance pour votre aide.

A voir également:

4 réponses

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 398
bonjour,

Tu devrais essayer en bon Français :

ActiveCell.FormulaLocal = "=SI(GAUCHE(concat(A1:AZ10);6)=""<br />"";"""";concat(A1:AZ10))"
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 398
ou alors il faut remplacer les ";" par "," :

ActiveCell.Formula = "=IF(LEFT(concat(A1:AZ10),6)=""<br />"","""",concat(A1:AZ10))"
Messages postés
17094
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
15 avril 2021
10 316
Bonjour,

Rapidement, commence par remplacer "Gauche" par "Left" et "Si" par "IF"... En VBA, Excel est anglophone ! ;))

Et oui, il faut doubler les ".
m@rina
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
235
Bonjour m@rina,

J'avais un doute à ce sujet, j'avais essayé:

ActiveCell.Formula = "=IF(Left(concat(A1:AZ10);6)=""<br />"";"""";concat(A1:AZ10))"

mais sans succès.

J'ai aussi assayé de remplacer les double quotes par & chr$(34) & mais ça ne fonctionne pas, je ne suis pas sur de la syntaxe.

merci pour ton aide.
Messages postés
600
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
21 juin 2015
235
super ça fonctionne, merci beaucoup.

Je marque le sujet comme résolu !!!