OVH Cloud OVH Cloud

Fonction Perso bis

8 réponses
Avatar
ced
J'ai cr=E9=E9 cette fonction

Function aa(a As String, b As String)
a =3D Range(a).Value
b =3D Range(b).Value
aa =3D a + b
End Function

Dans mon tableau excel en "A1" j'=E9cris la formule =3Daa
(B1;B2)
Dans B1 j'=E9cris Salut et Dans B2 j'=E9cris Ced

Pourquoi en "A1" je n'ai pas le resultat Salut Ced ? (=20
c'est =E9cris #VALEUR )

8 réponses

Avatar
patrick
Bonjour
pour concatener 2 chaines de caracteres
dans ta fonction utilise le &
aa = a & b
il te faudra ajouter un blanc entre a et b

@+
patrick
"ced" a écrit dans le message news:
0faf01c340a7$155b31c0$
J'ai créé cette fonction

Function aa(a As String, b As String)
a = Range(a).Value
b = Range(b).Value
aa = a + b
End Function

Dans mon tableau excel en "A1" j'écris la formule ª
(B1;B2)
Dans B1 j'écris Salut et Dans B2 j'écris Ced

Pourquoi en "A1" je n'ai pas le resultat Salut Ced ?

c'est écris #VALEUR )
Avatar
Philippe.R
Bonjour,
Tu ne peux additionner des chaînes de caractères ; pour les concaténer, utilise &
aa = a & b
voire
aa = a & " " & b

tu peux même en a1 écrire ±&b2 ou ±&" "&b2
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
"ced" a écrit dans le message de news:0faf01c340a7$155b31c0$
J'ai créé cette fonction

Function aa(a As String, b As String)
a = Range(a).Value
b = Range(b).Value
aa = a + b
End Function

Dans mon tableau excel en "A1" j'écris la formule ª
(B1;B2)
Dans B1 j'écris Salut et Dans B2 j'écris Ced

Pourquoi en "A1" je n'ai pas le resultat Salut Ced ? (
c'est écris #VALEUR )
Avatar
patrick
encore moi
j'avais pas vu tes Range(a).Value
c'est pas tres joli
c'est plutôt Range("a1").Value
@+
patrick

"ced" a écrit dans le message news:
0faf01c340a7$155b31c0$
J'ai créé cette fonction

Function aa(a As String, b As String)
a = Range(a).Value
b = Range(b).Value
aa = a + b
End Function

Dans mon tableau excel en "A1" j'écris la formule ª
(B1;B2)
Dans B1 j'écris Salut et Dans B2 j'écris Ced

Pourquoi en "A1" je n'ai pas le resultat Salut Ced ?

c'est écris #VALEUR )
Avatar
ced
vous n'avez pas compris ce que je veut faire : je veux
concatener les valeurs de deux cellules en utilisant la
fonction que j'ai créé qui se nomme aa => le problème ce
n'est pas le a+b ça marche très bien car si je fais :

sub main()

range("A2").valueª("B1","B2")

end sub

=> lorsque je lance la macro main, ça marche => en "A2"
j'ai le resultat SalutCed


-----Message d'origine-----
Bonjour,
Tu ne peux additionner des chaînes de caractères ; pour
les concaténer, utilise &

aa = a & b
voire
aa = a & " " & b

tu peux même en a1 écrire ±&b2 ou ±&" "&b2
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
"ced" a écrit dans le message de
news:0faf01c340a7$155b31c0$

J'ai créé cette fonction

Function aa(a As String, b As String)
a = Range(a).Value
b = Range(b).Value
aa = a + b
End Function

Dans mon tableau excel en "A1" j'écris la formule ª
(B1;B2)
Dans B1 j'écris Salut et Dans B2 j'écris Ced

Pourquoi en "A1" je n'ai pas le resultat Salut Ced ? (
c'est écris #VALEUR )


.



Avatar
garnote
Et pourquoi pas :

Function aa(a As Range, b As Range)
aa = a & " " & b
End Function

Serge


"patrick" a écrit dans le message de
news: bdurib$jd5$
encore moi
j'avais pas vu tes Range(a).Value
c'est pas tres joli
c'est plutôt Range("a1").Value
@+
patrick

"ced" a écrit dans le message news:
0faf01c340a7$155b31c0$
J'ai créé cette fonction

Function aa(a As String, b As String)
a = Range(a).Value
b = Range(b).Value
aa = a + b
End Function

Dans mon tableau excel en "A1" j'écris la formule ª
(B1;B2)
Dans B1 j'écris Salut et Dans B2 j'écris Ced

Pourquoi en "A1" je n'ai pas le resultat Salut Ced ?

c'est écris #VALEUR )




Avatar
Daniel.M
Salut Alain,

Effectivement 'ced' confond les chaînes de caractères versus les plages
(dans ses arguments).
Mais, plus grave, en ayant une chaîne de caractères au lieu d'une plage,
Excel ne tient pas compte des relations de dépendances entre A1 et B1,B2
(AMA, c'est important).
Ainsi, en modifiant le contenu de B1 ou B2, on s'aperçoit que la valeur de
A1 n'est pas changée automatiquement, mauvais signe! On doit l'éditer pour
la mettre à jour.

Par ailleurs, avec la fonction modifiée de Garnote et en A1:
ª(B1;B2)
les valeurs se mettent à jour automatiquement.

Salutations,

Daniel M.

"Alain CROS" wrote in message
news:
Bonjour.

Il faut écrire aa("B1";"B2") en A1

Alain CROS.



Avatar
AV
Ceci étant dit, je le perfectionne et je vous l'envoie (pas oublié) :-)
À moins qu'AV veuille l'incorporer dans son fichier (un autre onglet?) de
traductions...


Ben c'est pas une mauvaise idée du tout
...je cogite ;-)

AV

Avatar
Misange
la question ne se pose même pas !

--
Misange migrateuse http://www.excelabo.net
==== Attention : Disciplus a déménagé !====



"Clément Marcotte" a écrit dans le message
de news:%
Mais le volatile, va-t-il vouloir ?


"AV" a écrit dans le message de
news:%
Ceci étant dit, je le perfectionne et je vous l'envoie (pas
oublié) :-)


À moins qu'AV veuille l'incorporer dans son fichier (un autre
onglet?) de


traductions...


Ben c'est pas une mauvaise idée du tout
...je cogite ;-)

AV