format de cellule

Le
vanessa066
bonjour,

j'aimerais mettre un format de cellule suivant le contenu.
Je m'explique, dans une cellule, je met le niveau d'un immeuble (RDC, 1er
étage, 2ème étage, ) mais je n'indique que RDC ou 1 ou 2 et j'aimerais
qu'automatiquement il me mette 1er étage quand je met 1, 2ème étage quand je
met 2,
Je voulais utiliser le format de cellule personnalisé, mais je ne maîtrise
pas quand il y a plusieurs fromat pour une même cellule, et je ne vois pas
comment utiliser la mise en forme conditionnelle puisque je veux que du texte
apparaisse.

Une idée ?

Merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
FFO
Le #18838101
Salut à toi

Dans le VBA de la feuille (ALT+F11) mets ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = 1 And Target Like "*er étage" = False Then
Target = Target & "er étage"
End If
If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" = False Then
Target = Target & "ième étage"
End If
End Sub

Les lignes :

If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" = False Then

doivent être mises bout à bout en une seule

Fais des essais et dis moi !!!!!
vanessa066
Le #18838431
Ca marche effectivement, mais le problème, c'est que tous les autres chiffres
de ma feuille changent aussi, alors que ce n'est qu'une cellule qui doit
avoir ce format.

"FFO" a écrit :

Salut à toi

Dans le VBA de la feuille (ALT+F11) mets ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = 1 And Target Like "*er étage" = False Then
Target = Target & "er étage"
End If
If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" = False Then
Target = Target & "ième étage"
End If
End Sub

Les lignes :

If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" = False Then

doivent être mises bout à bout en une seule

Fais des essais et dis moi !!!!!



Philippe.R
Le #18842991
Bonjour,
En supposant que la cellule considérée soit nommée "niveau" (sans les
guillemets), tu peux modifier le code ainsi :

Private Sub Worksheet_Change(ByVal Target As Range)
if not intersect(target, range("niveau")) is nothing then
If Target = 1 And Target Like "*er étage" = False Then
Target = Target & "er étage"
End If
If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" =
False Then
Target = Target & "ième étage"
End If
endif
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"vanessa066" de news:
Ca marche effectivement, mais le problème, c'est que tous les autres
chiffres
de ma feuille changent aussi, alors que ce n'est qu'une cellule qui doit
avoir ce format.

"FFO" a écrit :

Salut à toi

Dans le VBA de la feuille (ALT+F11) mets ce code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = 1 And Target Like "*er étage" = False Then
Target = Target & "er étage"
End If
If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" = False
Then
Target = Target & "ième étage"
End If
End Sub

Les lignes :

If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" = False
Then

doivent être mises bout à bout en une seule

Fais des essais et dis moi !!!!!





mugrec75
Le #18843011
bonjour,

tout simplement avec le format personnalisé ci-dessous
[>1]0" ième";[<1]"RDC";"1er"

mais contrainte : pas de sous-sol, sinon format personnalisé ci-dessous
[>1]0" ième";[<0]0" e s/sol";"1er";@
mais contrainte : RDC doit être saisi


"Philippe.R" wrote:

Bonjour,
En supposant que la cellule considérée soit nommée "niveau" (sans les
guillemets), tu peux modifier le code ainsi :

Private Sub Worksheet_Change(ByVal Target As Range)
if not intersect(target, range("niveau")) is nothing then
If Target = 1 And Target Like "*er étage" = False Then
Target = Target & "er étage"
End If
If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
Target Like "*er étage" = False And Target Like "*ième étage" =
False Then
Target = Target & "ième étage"
End If
endif
End Sub

--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"vanessa066" de news:
> Ca marche effectivement, mais le problème, c'est que tous les autres
> chiffres
> de ma feuille changent aussi, alors que ce n'est qu'une cellule qui doit
> avoir ce format.
>
> "FFO" a écrit :
>
>> Salut à toi
>>
>> Dans le VBA de la feuille (ALT+F11) mets ce code :
>>
>> Private Sub Worksheet_Change(ByVal Target As Range)
>> If Target = 1 And Target Like "*er étage" = False Then
>> Target = Target & "er étage"
>> End If
>> If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
>> Target Like "*er étage" = False And Target Like "*ième étage" = False
>> Then
>> Target = Target & "ième étage"
>> End If
>> End Sub
>>
>> Les lignes :
>>
>> If Target <> "" And Target <> 0 And Target <> 1 And Target <> "RDC" And
>> Target Like "*er étage" = False And Target Like "*ième étage" = False
>> Then
>>
>> doivent être mises bout à bout en une seule
>>
>> Fais des essais et dis moi !!!!!
>>




Publicité
Poster une réponse
Anonyme