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

Inserer un symbole dans une celle - VBA

20 réponses
Avatar
SylVBA
Bonjours =E0 vous ....

Je suis en train de finaliser une petite analyse et je bloque
compl=E9tement sur une fa=E7on d'accelerer mon travail:

Je fais une analyses des ventes (%, valeurs etc etc)

j'ai en colone A le nom des commerciaux (12 noms diff=E9rents)
'Range("A2:A13")
en colonne B le r=E9sultat de la semaine actuelle (en valeur d'euros)
en colonne C le r=E9sultat de la semaine derni=E8re ( en valeur pas de
cumul)

ce que je souhaite, faire une macro VBa qui compare les cellules B par
rapport =E0 C pour chaque commercial
Si la valeur de la semaine en cours est sup=E9rieur =E0 celui de la
semaine derni=E8re alors je souhaite ajouter dans la case du nom un
symbol qui repr=E9sente une fleche montante par exemple
Soit Sylvie LAURENT + ce petit symbole
Et cela pour chaque commerciaux avec 3 symboles: Montante/=E9gale/
descendante.

je ne trouve pas comment insere cela =E0 cot=E9 du nom ...

merci de votre Excelllllllent =E9clairage

Bon courage et d'avance merci

SylVBA

10 réponses

1 2
Avatar
JB
Bonjour,

=SI(B2>1000;"Cactère1";"caractère2") et utiliser la police
Wingdings(Insertion caractères spéciaux)

http://boisgontierjacques.free.fr/pages_site/Si2.htm#Exemples

JB

On 7 sep, 11:42, SylVBA wrote:
Bonjours à vous ....

Je suis en train de finaliser une petite analyse et je bloque
complétement sur une façon d'accelerer mon travail:

Je fais une analyses des ventes (%, valeurs etc etc)

j'ai en colone A le nom des commerciaux (12 noms différents)
'Range("A2:A13")
en colonne B le résultat de la semaine actuelle (en valeur d'euros)
en colonne C le résultat de la semaine dernière ( en valeur pas de
cumul)

ce que je souhaite, faire une macro VBa qui compare les cellules B par
rapport à C pour chaque commercial
Si la valeur de la semaine en cours est supérieur à celui de la
semaine dernière alors je souhaite ajouter dans la case du nom un
symbol qui représente une fleche montante par exemple
Soit Sylvie LAURENT + ce petit symbole
Et cela pour chaque commerciaux avec 3 symboles: Montante/égale/
descendante.

je ne trouve pas comment insere cela à coté du nom ...

merci de votre Excelllllllent éclairage

Bon courage et d'avance merci

SylVBA


Avatar
FFO
Salut à toi

Prenant la Feuil1 à traiter
colonne A les noms
colonne B le résutat du mois précédent
colonne c le résultat du mois

je te propose ce code :

For Each c In Worksheets("Feuil1").Range("A1", [A65535].End(xlUp))
If c.Offset(0, 2).Value > c.Offset(0, 1).Value Then
c.Value = c & "+"
End If
Next

Celà devrait faire


Bonjours à vous ....

Je suis en train de finaliser une petite analyse et je bloque
complétement sur une façon d'accelerer mon travail:

Je fais une analyses des ventes (%, valeurs etc etc)

j'ai en colone A le nom des commerciaux (12 noms différents)
'Range("A2:A13")
en colonne B le résultat de la semaine actuelle (en valeur d'euros)
en colonne C le résultat de la semaine dernière ( en valeur pas de
cumul)

ce que je souhaite, faire une macro VBa qui compare les cellules B par
rapport à C pour chaque commercial
Si la valeur de la semaine en cours est supérieur à celui de la
semaine dernière alors je souhaite ajouter dans la case du nom un
symbol qui représente une fleche montante par exemple
Soit Sylvie LAURENT + ce petit symbole
Et cela pour chaque commerciaux avec 3 symboles: Montante/égale/
descendante.

je ne trouve pas comment insere cela à coté du nom ...

merci de votre Excelllllllent éclairage

Bon courage et d'avance merci

SylVBA




Avatar
Philippe.R
Bonjour,
A tout hasard, sans vba, en insérant une colonne en B, formatée en police
"terminal", cette formule :
=SI(D2>C2;CAR(25);SI(D2<C2;CAR(24);CAR(61)))
--
Avec plaisir
Philippe.R
"SylVBA" a écrit dans le message de
news:
Bonjours à vous ....

Je suis en train de finaliser une petite analyse et je bloque
complétement sur une façon d'accelerer mon travail:

Je fais une analyses des ventes (%, valeurs etc etc)

j'ai en colone A le nom des commerciaux (12 noms différents)
'Range("A2:A13")
en colonne B le résultat de la semaine actuelle (en valeur d'euros)
en colonne C le résultat de la semaine dernière ( en valeur pas de
cumul)

ce que je souhaite, faire une macro VBa qui compare les cellules B par
rapport à C pour chaque commercial
Si la valeur de la semaine en cours est supérieur à celui de la
semaine dernière alors je souhaite ajouter dans la case du nom un
symbol qui représente une fleche montante par exemple
Soit Sylvie LAURENT + ce petit symbole
Et cela pour chaque commerciaux avec 3 symboles: Montante/égale/
descendante.

je ne trouve pas comment insere cela à coté du nom ...

merci de votre Excelllllllent éclairage

Bon courage et d'avance merci

SylVBA
Avatar
SylVBA
Merci pour cette première approche,

A ce JB always very fast !!!
Super le site, vraiment bien fait

Merci aussi à FFO mais ce code est parfait mais pas dans le cas de mon
utilisation
je souhaite réellement insérer un SYMBOLE et pas un signe +

Cher JB comment faire pour afficher les belles flèches sur ta page
exemple ? (exemple de droite non commenté)
je souhaite du VBa...
De plus comme je souhaite coller cela derriere le nom, le formattage
de la police ne peut intervenir QUE sur ce caractère, pas sur la
cellule entière comment faire, il faut que ce soit réellemnt visuel

les commerciaux lisent plus de 20 rapports, il faut aller vraiment
vite à l'essentiel et donc faire figurer un symbol après le nom, mais
un symbol qui se voit et qui est significatif

je coince .......

Merci à vous d'avance

SylVBA
Avatar
Philippe.R
Re,
Autre variante, la mefc appliquée sur la plage, avec 2 conditions :
si la formule est : ²>c2 vert
si la formule est: ²<c2 orange
--
Avec plaisir
Philippe.R
"SylVBA" a écrit dans le message de
news:
Bonjours à vous ....

Je suis en train de finaliser une petite analyse et je bloque
complétement sur une façon d'accelerer mon travail:

Je fais une analyses des ventes (%, valeurs etc etc)

j'ai en colone A le nom des commerciaux (12 noms différents)
'Range("A2:A13")
en colonne B le résultat de la semaine actuelle (en valeur d'euros)
en colonne C le résultat de la semaine dernière ( en valeur pas de
cumul)

ce que je souhaite, faire une macro VBa qui compare les cellules B par
rapport à C pour chaque commercial
Si la valeur de la semaine en cours est supérieur à celui de la
semaine dernière alors je souhaite ajouter dans la case du nom un
symbol qui représente une fleche montante par exemple
Soit Sylvie LAURENT + ce petit symbole
Et cela pour chaque commerciaux avec 3 symboles: Montante/égale/
descendante.

je ne trouve pas comment insere cela à coté du nom ...

merci de votre Excelllllllent éclairage

Bon courage et d'avance merci

SylVBA
Avatar
FFO
Rebonjours à toi

Tu peux sans aucune difficulté avec mon code faire figurer n'importe quel
symbol aprés le nom en adaptant la ligne :

c.Value = c & "+"

Il suffit de remplacer "+" par ce symbol comme par exemple :

">"
"^"
"<"

n'importe qu'elle symbole fera l'affaire

A toi de choisir


Merci pour cette première approche,

A ce JB always very fast !!!
Super le site, vraiment bien fait

Merci aussi à FFO mais ce code est parfait mais pas dans le cas de mon
utilisation
je souhaite réellement insérer un SYMBOLE et pas un signe +

Cher JB comment faire pour afficher les belles flèches sur ta page
exemple ? (exemple de droite non commenté)
je souhaite du VBa...
De plus comme je souhaite coller cela derriere le nom, le formattage
de la police ne peut intervenir QUE sur ce caractère, pas sur la
cellule entière comment faire, il faut que ce soit réellemnt visuel

les commerciaux lisent plus de 20 rapports, il faut aller vraiment
vite à l'essentiel et donc faire figurer un symbol après le nom, mais
un symbol qui se voit et qui est significatif

je coince .......

Merci à vous d'avance

SylVBA





Avatar
JB
En VBA:

http://cjoint.com/?jhnAFmeXWb

Sub essai2()
For Each c In Range("A2", [A65000].End(xlUp))
Select Case c.Offset(0, 1) - c.Offset(0, 2)
Case Is > 0
x = "ä"
Case Is < 0
x = "æ"
Case Else
x = "à"
End Select
If Asc(Right(c, 1)) > 200 Then
c.Offset(0, 0) = Left(c, Len(c) - 2) & " " & x
c.Offset(0, 0).Characters(Start:=Len(c) - 1, Length:=2).Font.Name
= "Wingdings"
Else
c.Offset(0, 0) = c & " " & x
c.Offset(0, 0).Characters(Start:=Len(c) - 1, Length:=2).Font.Name
= "Wingdings"
End If
Next c
End Sub

JB

On 7 sep, 12:39, SylVBA wrote:
Merci pour cette première approche,

A ce JB always very fast !!!
Super le site, vraiment bien fait

Merci aussi à FFO mais ce code est parfait mais pas dans le cas de mon
utilisation
je souhaite réellement insérer un SYMBOLE et pas un signe +

Cher JB comment faire pour afficher les belles flèches sur ta page
exemple ? (exemple de droite non commenté)
je souhaite du VBa...
De plus comme je souhaite coller cela derriere le nom, le formattage
de la police ne peut intervenir QUE sur ce caractère, pas sur la
cellule entière comment faire, il faut que ce soit réellemnt visuel

les commerciaux lisent plus de 20 rapports, il faut aller vraiment
vite à l'essentiel et donc faire figurer un symbol après le nom, mais
un symbol qui se voit et qui est significatif

je coince .......

Merci à vous d'avance

SylVBA


Avatar
JB
Version à la saisie:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <= 3 And Target <> "" And Target.Count = 1 Then
Application.EnableEvents = False
Select Case Cells(Target.Row, 2) - Cells(Target.Row, 3)
Case Is > 0
x = "ä"
Case Is < 0
x = "æ"
Case Else
x = "à"
End Select
c = Cells(Target.Row, 1)
If Asc(Right(c, 1)) > 200 Then
Cells(Target.Row, 1) = Left(c, Len(c) - 2) & " " & x
Cells(Target.Row, 1).Characters(Start:=Len(c) - 1,
Length:=2).Font.Name = "Wingdings"
Else
Cells(Target.Row, 1) = c & " " & x
Cells(Target.Row, 1).Characters(Start:=Len(Cells(Target.Row, 1))
- 1, Length:=2).Font.Name = "Wingdings"
End If
Application.EnableEvents = True
End If
End Sub

http://cjoint.com/?jhn4mSpk8n

JB
On 7 sep, 13:27, JB wrote:
En VBA:

http://cjoint.com/?jhnAFmeXWb

Sub essai2()
For Each c In Range("A2", [A65000].End(xlUp))
Select Case c.Offset(0, 1) - c.Offset(0, 2)
Case Is > 0
x = "ä"
Case Is < 0
x = "æ"
Case Else
x = "à"
End Select
If Asc(Right(c, 1)) > 200 Then
c.Offset(0, 0) = Left(c, Len(c) - 2) & " " & x
c.Offset(0, 0).Characters(Start:=Len(c) - 1, Length:=2).Font.Name
= "Wingdings"
Else
c.Offset(0, 0) = c & " " & x
c.Offset(0, 0).Characters(Start:=Len(c) - 1, Length:=2).Font.Name
= "Wingdings"
End If
Next c
End Sub

JB

On 7 sep, 12:39, SylVBA wrote:



Merci pour cette première approche,

A ce JB always very fast !!!
Super le site, vraiment bien fait

Merci aussi à FFO mais ce code est parfait mais pas dans le cas de mon
utilisation
je souhaite réellement insérer un SYMBOLE et pas un signe +

Cher JB comment faire pour afficher les belles flèches sur ta page
exemple ? (exemple de droite non commenté)
je souhaite du VBa...
De plus comme je souhaite coller cela derriere le nom, le formattage
de la police ne peut intervenir QUE sur ce caractère, pas sur la
cellule entière comment faire, il faut que ce soit réellemnt visuel

les commerciaux lisent plus de 20 rapports, il faut aller vraiment
vite à l'essentiel et donc faire figurer un symbol après le nom, ma is
un symbol qui se voit et qui est significatif

je coince .......

Merci à vous d'avance

SylVBA- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
SylVBA
Super !!!!!!!!!!!!!!!!!!!!!!!!!!

JB toujours à la pointe, pas encore MVP ?? why ??
Merci à FFO aussi mais je retiens la propal. de JB

pour Philippe.R j'avais pensé à la mefc mais j'ai déjà des couleurs,
alors trop difficile à lire...

ta Sub fonctionne à merveille

Merci à vous trois, au plaisir de vous croiser dans les prochaines
heures !!!!!

Bien à vous tous, les gentils contributeurs !

SylVBA
ps: JB mettre misange dans le nom de ton exemple ........ cette MVP
est partout !!! merci à elle pour son site aussi !
Avatar
SylVBA
Ouups !!!!!!

Une petite complication pour notr JB national:

Les noms des commerciaux sont également source pour un graphique
je me retrouve donc avec les "æ" ou autre dans les étiquettes..

Je pense que la solution la plus simple est de figer le graphique
avant de lancer la macro

Comment faire cela ou comment faire autrement si vous avez une bonne
idée simple ?

Merci et j'ai un peu d'espoir...... avant le match ?

A + et d'avance merci

SylVBA
1 2