OVH Cloud OVH Cloud

Pluriel

9 réponses
Avatar
Jacky
Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au pluriel.
en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose comme cela,
je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci

9 réponses

Avatar
AV
="voiture"&CAR((ABS(A1)>1)*115)

???
Ca va quand même pas faire des miracles par rapport à un bon vieux SI !

AV

"Jacky" a écrit dans le message news:

Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au pluriel.
en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose comme cela,
je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci




Avatar
marc loreau
salut

essaie ca :

dim mot as string
if [a1]>1 then mot ="voiture" else
mot="voiture"
end if

salut


"Jacky" a écrit dans le message de news:

Merci,
Et en vba ?
Histoire de rafraîchir par miracle ma mémoire.
JJ

"AV" a écrit dans le message news:

="voiture"&CAR((ABS(A1)>1)*115)

???
Ca va quand même pas faire des miracles par rapport à un bon vieux SI !

AV

"Jacky" a écrit dans le message news:

Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au pluriel.
en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose comme
cela,


je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci












Avatar
Dédé
Salut Jacky !

Petite correction du code de Marc qui s'est un poil trompé ;-))

dim mot as string
if [a1]>1 then mot ="voitures" else
mot="voiture"
end if


En effet, si il y a plus de une voiture, il serait bien d'ajouter un "s"
,-))

Essaie cela et dis-nous si cela te convient ...

Salutations
Dédé

--
Pour répondre, enlever le NOSPAM
"Jacky" a écrit dans le message de
news:
Bonjour Marc

Merci pour ton code, mais j'ai bien peur que cela fasse 2 fois VOITURE.
Ce que je recherche:
le mot + abs(a1)>1*chr$(du code ascii( de s) ou quelque chose comme cela,
en VBA

la formule de Alain( que je remercie en passant):
="voiture"&CAR((ABS(A1)>1)*115)
Fonctionne parfaitement dans une cellule, mais pas dans vba.

Bonne journée
JJ

"marc loreau" a écrit dans le message news:
3f6825f2$0$10434$
salut

essaie ca :

dim mot as string
if [a1]>1 then mot ="voiture" else
mot="voiture"
end if

salut


"Jacky" a écrit dans le message de news:

Merci,
Et en vba ?
Histoire de rafraîchir par miracle ma mémoire.
JJ

"AV" a écrit dans le message news:

="voiture"&CAR((ABS(A1)>1)*115)

???
Ca va quand même pas faire des miracles par rapport à un bon vieux
SI




!

AV

"Jacky" a écrit dans le message news:

Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au pluriel.
en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose
comme




cela,
je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci




















Avatar
marc loreau
OUP (SSSSS)
sorry for the s

"Dédé" a écrit dans le message de news:

Salut Jacky !

Petite correction du code de Marc qui s'est un poil trompé ;-))

dim mot as string
if [a1]>1 then mot ="voitures" else
mot="voiture"
end if


En effet, si il y a plus de une voiture, il serait bien d'ajouter un "s"
,-))

Essaie cela et dis-nous si cela te convient ...

Salutations
Dédé

--
Pour répondre, enlever le NOSPAM
"Jacky" a écrit dans le message de
news:
Bonjour Marc

Merci pour ton code, mais j'ai bien peur que cela fasse 2 fois VOITURE.
Ce que je recherche:
le mot + abs(a1)>1*chr$(du code ascii( de s) ou quelque chose comme
cela,


en VBA

la formule de Alain( que je remercie en passant):
="voiture"&CAR((ABS(A1)>1)*115)
Fonctionne parfaitement dans une cellule, mais pas dans vba.

Bonne journée
JJ

"marc loreau" a écrit dans le message
news:


3f6825f2$0$10434$
salut

essaie ca :

dim mot as string
if [a1]>1 then mot ="voiture" else
mot="voiture"
end if

salut


"Jacky" a écrit dans le message de news:

Merci,
Et en vba ?
Histoire de rafraîchir par miracle ma mémoire.
JJ

"AV" a écrit dans le message news:

="voiture"&CAR((ABS(A1)>1)*115)

???
Ca va quand même pas faire des miracles par rapport à un bon vieux
SI




!

AV

"Jacky" a écrit dans le message news:

Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au
pluriel.






en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose
comme




cela,
je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci
























Avatar
Philippe.R
Bonsoir AV,
cette variante :

="voiture"&CAR(32+(ABS(A1)>1)*83)

ne serait elle préférable ; celle ci : ="voiture"&CAR((ABS(A1)>1)*115) provoquant chez moi une erreur
si a1 est <=1

Mais bon, c'est histoire de causer....
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"AV" a écrit dans le message de news:
="voiture"&CAR((ABS(A1)>1)*115)

???
Ca va quand même pas faire des miracles par rapport à un bon vieux SI !

AV

"Jacky" a écrit dans le message news:

Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au pluriel.
en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose comme cela,
je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci








Avatar
AV
ne serait elle préférable ; celle ci : ="voiture"&CAR((ABS(A1)>1)*115)
provoquant chez moi une erreur

si a1 est <=1


Pour gérer l'erreur c'est une soluce ("visuelle") mais on n'aura pas un résultat
satisfaisant (nbre de carctères de la chaîne) alors que avec un simple SI (comme
dit dans le fil) ça va gazer

AV

Avatar
Philippe.R
Bonjour Alain,
Je suis totalement d'accord avec toi ; j'avais seulement eu l'oeil attiré par le jeu de la formule
définissant le code d'un caractère et j'ai cherché une solution restant dans cette logique.
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"AV" a écrit dans le message de news:u21o$
ne serait elle préférable ; celle ci : ="voiture"&CAR((ABS(A1)>1)*115)
provoquant chez moi une erreur

si a1 est <=1


Pour gérer l'erreur c'est une soluce ("visuelle") mais on n'aura pas un résultat
satisfaisant (nbre de carctères de la chaîne) alors que avec un simple SI (comme
dit dans le fil) ça va gazer

AV





Avatar
Jacky
Bonjour,

="voiture"&CAR(32+(ABS(A1)>1)*83) est la formule retenue.
Merci


Mais bon, c'est histoire de causer


Et en causant VBA sous forme de formule ?

Salutation
JJ

"Philippe.R" a écrit dans le message news:

Bonsoir AV,
cette variante :

="voiture"&CAR(32+(ABS(A1)>1)*83)

ne serait elle préférable ; celle ci : ="voiture"&CAR((ABS(A1)>1)*115)
provoquant chez moi une erreur

si a1 est <=1

Mais bon, c'est histoire de causer....
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"AV" a écrit dans le message de
news:

="voiture"&CAR((ABS(A1)>1)*115)

???
Ca va quand même pas faire des miracles par rapport à un bon vieux SI !

AV

"Jacky" a écrit dans le message news:

Bonsoir
Si la formule si(a1>1,"voitures";"voiture") met un mot au pluriel.
en vba
if [a1]>1 then
etc.
Dans mon jeune age, j'avais une formule du style
le mot + abs(a1)>1*chr$(du code asscii( de s) ou quelque chose comme
cela,



je n'arrive plus à la retrouver.....
Une idée peut-être??
Merci












Avatar
AV
Et en causant VBA sous forme de formule ?


Laisse tomber cette solution tarabiscotée qui renvoie une vraie/fausse valeur et
utilise un SI
Pour mettre la formule en B1 :

[B1] = "=if(A1<>"""",if(abs(A1)>1,""voitures"",""voiture""),"""")"

AV