" il est à noter que les fonctions TRIM ont des résultats différents selon VBA ou EXCEL "
Pour obtenir les fonctions propres à VBA dans les modules d'un classeur, en tapant "VBA suivi d'un point, on obtient dans la liste déroulante, la panoplie des fonctions disponibles qui sont propres à VBA. Elles sont regroupés dans la bibliothèque VBA (voir l'explorateur de projet de la fenêtre vbe) qui est desservie par le fichier (dll) : C:Program FilesFichiers communsMicrosoft SharedVBAVBA6VBE6.DLL sous Windows xp et excel 2002.
Quant à elles, les fonctions de la feuille de calcul font parti de la bibliothèque Excel. On peut les utiliser dans une fenêtre vba par l'intermédiaire de la propriété "WorksheetFunction" de l'objet Application. À titre d'exemple, les syntaxes possibles pour appeler une fonction de la feuille de calcul en vba sont :
'La plus couramment utilisé dans ce Groupe de discussion: a = Application.WorksheetFunction.CountIf()
'La propriété "WorksheetFunction" de la bibliothèque "Excel" retourne directement l'objet "WorksheetFunction" qui lui permet d'accéder à toutes les fonctions de la feuille de calcul. b = Excel.WorksheetFunction.CountIf()
'Pour les économes, la présentation suivante est aussi possible ....car la bibliothèque Excel est implicite au projetVBA et il n'est pas nécessaire de le stipuler en début de saisie de la ligne de code. C'est ce dernier principe qui permet d'utiliser directement les fonctions de la bibliothèque VBA sans avoir besoin d'inscrire à chaque fois l'expression VBA en début de saisie devant la fonction retenue. C = WorksheetFunction.CountIf()
En conséquence, l'affirmation de GD en début de ce message prend tout son sens ! ;-))
Salutations!
"GD" a écrit dans le message de news:% Bonsour ® Kevin , il est à noter que les fonctions TRIM ont des résultats differents selon VBA ou EXCEL la fonction de feuille de calcul =SUPPRESPACE (=TRIM en langage US) se comporte differement de la fonction VBA TRIM,
seule la fonction de feuille de calcul supprime les espaces interieurs ce qu'a parfaitement résumé AV ;-))) pour s'en convaincre :
Les fonctions Ltrim, Rtrim et Trim permettent de supprimer les espaces à gauche et à droite d'une chaîne de caractères.
Ce qui m'intéresse c'est de pouvoir supprimer les doubles ou triple espaces à l'intérieur! Voici par exemple:
" Il y a trop d' espaces ! " deviendrait "Il y a trop d'espaces!"
Existe-t-il une fonction vba qui permette de faire ça? Sinon comment s'y prendre en vba?
En vous remerciant par avance pour votre aide.
Salut.
Bonsoir GD,
" il est à noter que les fonctions TRIM ont des résultats différents selon VBA ou EXCEL "
Pour obtenir les fonctions propres à VBA dans les modules d'un classeur, en tapant "VBA suivi d'un point, on obtient
dans la liste déroulante, la panoplie des fonctions disponibles qui sont propres à VBA. Elles sont regroupés dans la
bibliothèque VBA (voir l'explorateur de projet de la fenêtre vbe) qui est desservie par le fichier (dll) : C:Program
FilesFichiers communsMicrosoft SharedVBAVBA6VBE6.DLL sous Windows xp et excel 2002.
Quant à elles, les fonctions de la feuille de calcul font parti de la bibliothèque Excel. On peut les utiliser dans une
fenêtre vba par l'intermédiaire de la propriété "WorksheetFunction" de l'objet Application. À titre d'exemple, les
syntaxes possibles pour appeler une fonction de la feuille de calcul en vba sont :
'La plus couramment utilisé dans ce Groupe de discussion:
a = Application.WorksheetFunction.CountIf()
'La propriété "WorksheetFunction" de la bibliothèque "Excel" retourne directement l'objet "WorksheetFunction" qui lui
permet d'accéder à toutes les fonctions de la feuille de calcul.
b = Excel.WorksheetFunction.CountIf()
'Pour les économes, la présentation suivante est aussi possible ....car la bibliothèque Excel est implicite au projetVBA
et il n'est pas nécessaire de le stipuler en début de saisie de la ligne de code. C'est ce dernier principe qui permet
d'utiliser directement les fonctions de la bibliothèque VBA sans avoir besoin d'inscrire à chaque fois l'expression VBA
en début de saisie devant la fonction retenue.
C = WorksheetFunction.CountIf()
En conséquence, l'affirmation de GD en début de ce message prend tout son sens !
;-))
Salutations!
"GD" <nomail@nomail.net> a écrit dans le message de news:%23qVcGOhuEHA.1616@TK2MSFTNGP10.phx.gbl...
Bonsour ® Kevin ,
il est à noter que les fonctions TRIM
ont des résultats differents selon VBA ou EXCEL
la fonction de feuille de calcul =SUPPRESPACE (=TRIM en langage US)
se comporte differement de la fonction VBA TRIM,
seule la fonction de feuille de calcul supprime les espaces interieurs
ce qu'a parfaitement résumé AV ;-)))
pour s'en convaincre :
" il est à noter que les fonctions TRIM ont des résultats différents selon VBA ou EXCEL "
Pour obtenir les fonctions propres à VBA dans les modules d'un classeur, en tapant "VBA suivi d'un point, on obtient dans la liste déroulante, la panoplie des fonctions disponibles qui sont propres à VBA. Elles sont regroupés dans la bibliothèque VBA (voir l'explorateur de projet de la fenêtre vbe) qui est desservie par le fichier (dll) : C:Program FilesFichiers communsMicrosoft SharedVBAVBA6VBE6.DLL sous Windows xp et excel 2002.
Quant à elles, les fonctions de la feuille de calcul font parti de la bibliothèque Excel. On peut les utiliser dans une fenêtre vba par l'intermédiaire de la propriété "WorksheetFunction" de l'objet Application. À titre d'exemple, les syntaxes possibles pour appeler une fonction de la feuille de calcul en vba sont :
'La plus couramment utilisé dans ce Groupe de discussion: a = Application.WorksheetFunction.CountIf()
'La propriété "WorksheetFunction" de la bibliothèque "Excel" retourne directement l'objet "WorksheetFunction" qui lui permet d'accéder à toutes les fonctions de la feuille de calcul. b = Excel.WorksheetFunction.CountIf()
'Pour les économes, la présentation suivante est aussi possible ....car la bibliothèque Excel est implicite au projetVBA et il n'est pas nécessaire de le stipuler en début de saisie de la ligne de code. C'est ce dernier principe qui permet d'utiliser directement les fonctions de la bibliothèque VBA sans avoir besoin d'inscrire à chaque fois l'expression VBA en début de saisie devant la fonction retenue. C = WorksheetFunction.CountIf()
En conséquence, l'affirmation de GD en début de ce message prend tout son sens ! ;-))
Salutations!
"GD" a écrit dans le message de news:% Bonsour ® Kevin , il est à noter que les fonctions TRIM ont des résultats differents selon VBA ou EXCEL la fonction de feuille de calcul =SUPPRESPACE (=TRIM en langage US) se comporte differement de la fonction VBA TRIM,
seule la fonction de feuille de calcul supprime les espaces interieurs ce qu'a parfaitement résumé AV ;-))) pour s'en convaincre :
les syntaxes possibles pour appeler une fonction de la feuille de calcul en vba sont :
a = Application.WorksheetFunction.CountIf() b = Excel.WorksheetFunction.CountIf() c = WorksheetFunction.CountIf()
Il manque une syntaxe : d = Application.CountIf(.....) Cette syntaxe est la SEULE compatible XL5(95) et plus
AV
michdenis
Bonjour AV,
d = Application.CountIf(.....) Cette syntaxe est la SEULE compatible XL5(95) et plus
Semble-t-il que le langage de programmation utilisé dans les versions antérieures à Excel 97 et les suivantes non pas grand chose en commun ! Est-ce à cette époque où l'on pouvait écrire les macros dans la langue de Molière ? Personnellement, je ne connais rien aux versions d'avant Excel 97.
Salutations!
"AV" a écrit dans le message de news: Avec Denis,
les syntaxes possibles pour appeler une fonction de la feuille de calcul en vba sont :
a = Application.WorksheetFunction.CountIf() b = Excel.WorksheetFunction.CountIf() c = WorksheetFunction.CountIf()
Il manque une syntaxe : d = Application.CountIf(.....) Cette syntaxe est la SEULE compatible XL5(95) et plus
AV
Bonjour AV,
d = Application.CountIf(.....)
Cette syntaxe est la SEULE compatible XL5(95) et plus
Semble-t-il que le langage de programmation utilisé dans les versions antérieures à Excel 97 et les suivantes non pas
grand chose en commun !
Est-ce à cette époque où l'on pouvait écrire les macros dans la langue de Molière ? Personnellement, je ne connais rien
aux versions d'avant Excel 97.
Salutations!
"AV" <alain.vallon@wanadoo.fr> a écrit dans le message de news:ubhVrrluEHA.3456@TK2MSFTNGP14.phx.gbl...
Avec Denis,
les syntaxes possibles pour appeler une fonction de la feuille de calcul en
vba sont :
a = Application.WorksheetFunction.CountIf()
b = Excel.WorksheetFunction.CountIf()
c = WorksheetFunction.CountIf()
Il manque une syntaxe :
d = Application.CountIf(.....)
Cette syntaxe est la SEULE compatible XL5(95) et plus
d = Application.CountIf(.....) Cette syntaxe est la SEULE compatible XL5(95) et plus
Semble-t-il que le langage de programmation utilisé dans les versions antérieures à Excel 97 et les suivantes non pas grand chose en commun ! Est-ce à cette époque où l'on pouvait écrire les macros dans la langue de Molière ? Personnellement, je ne connais rien aux versions d'avant Excel 97.
Salutations!
"AV" a écrit dans le message de news: Avec Denis,
les syntaxes possibles pour appeler une fonction de la feuille de calcul en vba sont :
a = Application.WorksheetFunction.CountIf() b = Excel.WorksheetFunction.CountIf() c = WorksheetFunction.CountIf()
Il manque une syntaxe : d = Application.CountIf(.....) Cette syntaxe est la SEULE compatible XL5(95) et plus