Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Modifier le code d'une macro en fonction du contenu d'une cellule

4 réponses
Avatar
Fredo(67)
Bonjour, =E0 tous

en vue de cr=E9er une page HTML en fonction d'une parie de feuille excel, j=
'utilise la fonction print

par exemple :
Print #1, Chr$(13) & "<tr bgcolor=3D'#cccccc'><td><strong>" & Sheets(1).Ran=
ge("A6") & "</strong></td><td><div align=3D'center'>" & Sheets(1).Range("b6=
") & " </div></td><td><div align=3D'center'>" & Sheets(1).Range("c6") & "</=
div></td><td>" & Sheets(1).Range("d6") & "</td><td><div align=3D'center'>" =
& Sheets(1).Range("e6") & "</div></td><td align=3D'center'>" & Sheets(1).Ra=
nge("f6") & "</div></td></tr>"

sachant que cela reprend des valeurs situ=E9e en
A6-B6-C6-D6-E6-F6

Ma question est la suivante :
je cherche =E0 modifier le code pour rajouter un code "<strong></strong>" s=
i la cellule contient une certaine valeur

en clair si B6 contient le texte "Sud" (texte entier est "Strasbourg Sud") =
alors la ligne de code total devra =EAtre la suivante :

Print #1, Chr$(13) & "<tr bgcolor=3D'#cccccc'><td><strong>" & Sheets(1).Ran=
ge("A6") & "</strong></td><td><div align=3D'center'><strong>" & Sheets(1).R=
ange("b6") & " </strong></div></td><td><div align=3D'center'>" & Sheets(1).=
Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") & "</td><td><div al=
ign=3D'center'>" & Sheets(1).Range("e6") & "</div></td><td align=3D'center'=
>" & Sheets(1).Range("f6") & "</div></td></tr>"

la diff=E9renciation doit se faire sur une partie du contenu de la cellule,=
car celle ci peut contenir "Strasbourg Sud 1" ou "Strasbourg Sud 2" ou "St=
rasbourg Sud"


Info compl=E9mentaire j'ai un total de 13 lignes qui doivent subir ce test.


Est-ce faisable ?

Merci

4 réponses

Avatar
Fredo(67)
j'ai trouvé une solution, elle ne me convient pas du tout, mais en attend ant

en fait je rajoute dans le contenu de la cellule le texte <strong></strong>

cela donne alors dans la cellule <strong>Strasbourg Sud</strong>

par contre cela fausse un peu la lecture.... mais cela pourrait suffire si l'autre solution est de tout recoder....
avec des imbrications de if....then...



Le mardi 23 juillet 2013 10:10:33 UTC+2, Fredo(67) a écrit :
Bonjour, à tous



en vue de créer une page HTML en fonction d'une parie de feuille excel, j'utilise la fonction print



par exemple :

Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" & Sheets(1).R ange("A6") & "</strong></td><td><div align='center'>" & Sheets(1).Range(" b6") & " </div></td><td><div align='center'>" & Sheets(1).Range("c6") & " </div></td><td>" & Sheets(1).Range("d6") & "</td><td><div align='center'> " & Sheets(1).Range("e6") & "</div></td><td align='center'>" & Sheets(1). Range("f6") & "</div></td></tr>"



sachant que cela reprend des valeurs située en

A6-B6-C6-D6-E6-F6



Ma question est la suivante :

je cherche à modifier le code pour rajouter un code "<strong></strong>" si la cellule contient une certaine valeur



en clair si B6 contient le texte "Sud" (texte entier est "Strasbourg Sud" ) alors la ligne de code total devra être la suivante :



Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" & Sheets(1).R ange("A6") & "</strong></td><td><div align='center'><strong>" & Sheets(1) .Range("b6") & " </strong></div></td><td><div align='center'>" & Sheets(1 ).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") & "</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td><td align='cente r'>" & Sheets(1).Range("f6") & "</div></td></tr>"



la différenciation doit se faire sur une partie du contenu de la cellul e, car celle ci peut contenir "Strasbourg Sud 1" ou "Strasbourg Sud 2" ou " Strasbourg Sud"





Info complémentaire j'ai un total de 13 lignes qui doivent subir ce tes t.





Est-ce faisable ?



Merci
Avatar
Jacquouille
Bonjour
Vu les 35° à l'ombre, je ne suis pas certain d'avoir bien compris.
mais ceci ne conviendrait-il pas?
If STXT(B6;12;3).value ="Sud" then ...



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Fredo(67)" a écrit dans le message de groupe de discussion :


j'ai trouvé une solution, elle ne me convient pas du tout, mais en attendant

en fait je rajoute dans le contenu de la cellule le texte <strong></strong>

cela donne alors dans la cellule <strong>Strasbourg Sud</strong>

par contre cela fausse un peu la lecture.... mais cela pourrait suffire si
l'autre solution est de tout recoder....
avec des imbrications de if....then...



Le mardi 23 juillet 2013 10:10:33 UTC+2, Fredo(67) a écrit :
Bonjour, à tous



en vue de créer une page HTML en fonction d'une parie de feuille excel,
j'utilise la fonction print



par exemple :

Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" &
Sheets(1).Range("A6") & "</strong></td><td><div align='center'>" &
Sheets(1).Range("b6") & " </div></td><td><div align='center'>" &
Sheets(1).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") &
"</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td><td
align='center'>" & Sheets(1).Range("f6") & "</div></td></tr>"



sachant que cela reprend des valeurs située en

A6-B6-C6-D6-E6-F6



Ma question est la suivante :

je cherche à modifier le code pour rajouter un code "<strong></strong>" si
la cellule contient une certaine valeur



en clair si B6 contient le texte "Sud" (texte entier est "Strasbourg Sud")
alors la ligne de code total devra être la suivante :



Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" &
Sheets(1).Range("A6") & "</strong></td><td><div align='center'><strong>" &
Sheets(1).Range("b6") & " </strong></div></td><td><div align='center'>" &
Sheets(1).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") &
"</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td><td
align='center'>" & Sheets(1).Range("f6") & "</div></td></tr>"



la différenciation doit se faire sur une partie du contenu de la cellule,
car celle ci peut contenir "Strasbourg Sud 1" ou "Strasbourg Sud 2" ou
"Strasbourg Sud"





Info complémentaire j'ai un total de 13 lignes qui doivent subir ce test.





Est-ce faisable ?



Merci
Avatar
Jacquouille
Je crois que MID et des virgules conviendraient mieux.
Mais, il faudra beaucoup de bonne volonté à Excel pour comprendre et obéir.
Peut-être la version 2035? -))

Dés.

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jacquouille" a écrit dans le message de groupe de discussion :
51ee6350$0$32731$

Bonjour
Vu les 35° à l'ombre, je ne suis pas certain d'avoir bien compris.
mais ceci ne conviendrait-il pas?
If STXT(B6;12;3).value ="Sud" then ...



Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Fredo(67)" a écrit dans le message de groupe de discussion :


j'ai trouvé une solution, elle ne me convient pas du tout, mais en attendant

en fait je rajoute dans le contenu de la cellule le texte <strong></strong>

cela donne alors dans la cellule <strong>Strasbourg Sud</strong>

par contre cela fausse un peu la lecture.... mais cela pourrait suffire si
l'autre solution est de tout recoder....
avec des imbrications de if....then...



Le mardi 23 juillet 2013 10:10:33 UTC+2, Fredo(67) a écrit :
Bonjour, à tous



en vue de créer une page HTML en fonction d'une parie de feuille excel,
j'utilise la fonction print



par exemple :

Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" &
Sheets(1).Range("A6") & "</strong></td><td><div align='center'>" &
Sheets(1).Range("b6") & " </div></td><td><div align='center'>" &
Sheets(1).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") &
"</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td><td
align='center'>" & Sheets(1).Range("f6") & "</div></td></tr>"



sachant que cela reprend des valeurs située en

A6-B6-C6-D6-E6-F6



Ma question est la suivante :

je cherche à modifier le code pour rajouter un code "<strong></strong>" si
la cellule contient une certaine valeur



en clair si B6 contient le texte "Sud" (texte entier est "Strasbourg Sud")
alors la ligne de code total devra être la suivante :



Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" &
Sheets(1).Range("A6") & "</strong></td><td><div align='center'><strong>" &
Sheets(1).Range("b6") & " </strong></div></td><td><div align='center'>" &
Sheets(1).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") &
"</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td><td
align='center'>" & Sheets(1).Range("f6") & "</div></td></tr>"



la différenciation doit se faire sur une partie du contenu de la cellule,
car celle ci peut contenir "Strasbourg Sud 1" ou "Strasbourg Sud 2" ou
"Strasbourg Sud"





Info complémentaire j'ai un total de 13 lignes qui doivent subir ce test.





Est-ce faisable ?



Merci
Avatar
Fredo(67)
Merci Jacquouille de t'être penché sur mon soucis.

Je pense aussi que ce que je voulais faire était trop compliqué...
J'ai résolu cela en copiant mon tableau
le tableau destination se rempli en fonction des valeurs du tableau source
et ensuite je fait un "print" du tableau destination...c'est impec.

bonne et chaude après-midi





Le mardi 23 juillet 2013 13:44:57 UTC+2, Jacquouille a écrit :
Je crois que MID et des virgules conviendraient mieux.

Mais, il faudra beaucoup de bonne volonté à Excel pour comprendre et obéir.

Peut-être la version 2035? -))



Dés.



Jacquouille



" Le vin est au repas ce que le parfum est à la femme."

"Jacquouille" a écrit dans le message de groupe de discussion :

51ee6350$0$32731$



Bonjour

Vu les 35° à l'ombre, je ne suis pas certain d'avoir bien compris.

mais ceci ne conviendrait-il pas?

If STXT(B6;12;3).value ="Sud" then ...







Jacquouille



" Le vin est au repas ce que le parfum est à la femme."

"Fredo(67)" a écrit dans le message de groupe de discussion :





j'ai trouvé une solution, elle ne me convient pas du tout, mais en atte ndant



en fait je rajoute dans le contenu de la cellule le texte <strong></stron g>



cela donne alors dans la cellule <strong>Strasbourg Sud</strong>



par contre cela fausse un peu la lecture.... mais cela pourrait suffire s i

l'autre solution est de tout recoder....

avec des imbrications de if....then...







Le mardi 23 juillet 2013 10:10:33 UTC+2, Fredo(67) a écrit :

> Bonjour, à tous

>

>

>

> en vue de créer une page HTML en fonction d'une parie de feuille exce l,

> j'utilise la fonction print

>

>

>

> par exemple :

>

> Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" &

> Sheets(1).Range("A6") & "</strong></td><td><div align='center'>" &

> Sheets(1).Range("b6") & " </div></td><td><div align='center'>" &

> Sheets(1).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") &

> "</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td ><td

> align='center'>" & Sheets(1).Range("f6") & "</div></td></tr>"

>

>

>

> sachant que cela reprend des valeurs située en

>

> A6-B6-C6-D6-E6-F6

>

>

>

> Ma question est la suivante :

>

> je cherche à modifier le code pour rajouter un code "<strong></strong >" si

> la cellule contient une certaine valeur

>

>

>

> en clair si B6 contient le texte "Sud" (texte entier est "Strasbourg Su d")

> alors la ligne de code total devra être la suivante :

>

>

>

> Print #1, Chr$(13) & "<tr bgcolor='#cccccc'><td><strong>" &

> Sheets(1).Range("A6") & "</strong></td><td><div align='center'><stron g>" &

> Sheets(1).Range("b6") & " </strong></div></td><td><div align='center' >" &

> Sheets(1).Range("c6") & "</div></td><td>" & Sheets(1).Range("d6") &

> "</td><td><div align='center'>" & Sheets(1).Range("e6") & "</div></td ><td

> align='center'>" & Sheets(1).Range("f6") & "</div></td></tr>"

>

>

>

> la différenciation doit se faire sur une partie du contenu de la cell ule,

> car celle ci peut contenir "Strasbourg Sud 1" ou "Strasbourg Sud 2" ou

> "Strasbourg Sud"

>

>

>

>

>

> Info complémentaire j'ai un total de 13 lignes qui doivent subir ce t est.

>

>

>

>

>

> Est-ce faisable ?

>

>

>

> Merci