|
Publicité | ||||||||||||||||||||||
|
|
#1 (permalink) |
|
Membre à l'essai
![]() Date d'inscription: avril 2009
Messages: 43
|
J'ai écrit le code ci-dessous et je voudrais que ça fonctionne je sais que le problème vient du formatage du string qui contient certain charactères spéciaux:
Code :
Sub reset_archive_warning() ActiveWorkbook.Unprotect Password:="" ActiveSheet.Unprotect Password:="" Range("Z1").Select ActiveCell.Formula = "IF(E2=1, "Ce rapport n'a pas été archivé", "this report has not been archived")" Selection.Interior.ColorIndex = 3 ActiveSheet.Protect Password:="" ActiveWorkbook.Protect Password:="" End Sub Je pourrais gèrer le IF via le script mais je ne veux pas, car Excel traque les changement pas mon script. J'aimerais donc savoir comment entrer ma formule dans une cellule via un script, comment formatter la phrase. |
|
|
|
|
|
#2 (permalink) |
|
Expert Confirmé
![]() |
Salut
En règle général, face a ce type de problème il faut doubler les " pour que vba les interprète comme faisant parti du texte essais comme ça Code :
ActiveCell.Formula = "IF(E2=1, ""Ce rapport n'a pas été archivé"", ""this report has not been archived"")" Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le méchant Qwaz sur Msn ... inutile de me rajouter sur msn pour que je fasse votre boulot (les concernés sont au courant, les autres relax Le monde dans lequel on vit HammerFest Score PowerBall Gyroscope Green : 11847 |
|
|
|
|
|
#3 (permalink) |
|
Expert Confirmé
![]() Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
|
Bonsoir,
Je te comprend moi aussi je peux être troublé par un string mais trop ca fait vulgaire ![]() En gros tu as besoin de mettre " dans ta chaine de caractère tu peux mettre "" ou alors chr(34) Code :
msgbox "ceci "" est une guillemets" msgbox "ceci " & chr(34) & est une guillemet" Code :
"IF(E2=1, "3Ce rapport n'a pas été archivé"3, "3this report has not been archived"3)" evènement change de worksheet un petit tuto a ce propos http://silkyroad.developpez.com/VBA/EvenementsFeuille/ ou pour tous les onglet http://silkyroad.developpez.com/VBA/...asseur/#LII-20 Maintenant a toi de choisir ce que tu préfères |
|
|
|
|
|
#4 (permalink) |
|
Expert Confirmé
![]() |
Re
Il me semblait bien qu'il y avait un truc qui cloché, ton code est faut Code :
Feuil2.[A1].Formula = "=IF(E2=1, ""Ce rapport n'a pas été archivé"", ""this report has not been archived"")" A++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le méchant Qwaz sur Msn ... inutile de me rajouter sur msn pour que je fasse votre boulot (les concernés sont au courant, les autres relax Le monde dans lequel on vit HammerFest Score PowerBall Gyroscope Green : 11847 |
|
|
|
|
|
#5 (permalink) |
|
Membre du Club
![]() Date d'inscription: octobre 2008
Messages: 101
|
Je dirais aussi qu'il faut remplacer les virgules qu'on utilise en VBA par des points virgules qu'on utilise dans les fonctions directement sur les feuilles, non?
Code :
Feuil2.[A1].Formula = "=IF(E2=1; ""Ce rapport n'a pas été archivé""; ""this report has not been archived"")" |
|
|
|
|
|
#7 (permalink) |
|
Expert Confirmé
![]() |
Salut
hé non julien26, il ne faut pas mettre des ";", vbe va interpreter les "," et c'est lui qui se charge de la conversion A++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le méchant Qwaz sur Msn ... inutile de me rajouter sur msn pour que je fasse votre boulot (les concernés sont au courant, les autres relax Le monde dans lequel on vit HammerFest Score PowerBall Gyroscope Green : 11847 |
|
|
|
|
|
#8 (permalink) |
![]() ![]() Date d'inscription: juin 2002
Localisation: derrière le moniteur
Messages: 3 874
|
Hello,
vous pouvez mettre des ";" dans une FormulaLocal (pour les français avec un SI) et des "," dans une Formula (pour tous avec un IF).
__________________
Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème ![]() Développez une application de gestion des comptes bancaires dans Access de A à Z ![]() |
|
|
|
|
|
#9 (permalink) |
|
Expert Confirmé
![]() |
Salut
Ha oki, je n'avais jamais fait le distinguo entre formula et formulalocal, c'est chose faite. Merci pour l'info. A++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le méchant Qwaz sur Msn ... inutile de me rajouter sur msn pour que je fasse votre boulot (les concernés sont au courant, les autres relax Le monde dans lequel on vit HammerFest Score PowerBall Gyroscope Green : 11847 |
|
|
|
|
|
![]() |
||
Formatage de string troublant
|
||
| Outils de la discussion | |
|
|