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

Comment faire reconnaitre ma variable ?

5 réponses
Avatar
Bartez63
Bonsoir à tous,

Je dois faire une grosse annerie car je ne somprends pas pourquoi sur les 2
lignes suivantes, seule la 1ere fonctionne.


Nb = Application.Run("'Assistant.xls'!Récup", "Philippe")
Nb = Application.Run("'Assistant.xls'!Récup", Left(ThisWorkbook.Path, 8))

Left(ThisWorkbook.Path, 8) me donne pourtant bien "Philippe" comme résultat.

Avez vous une idée de ce qu'il me faut faire pour lancer
'Assistant.xls'!Récup avec comme paramètre, une variable ?

@+
Bartez

5 réponses

Avatar
ABED HADDOU
Bonsoir * Bartez63 *
essaie peut être avec cette syntaxe.
Nb = Application.Run("'Assistant.xls'!Récup", Right(ThisWorkbook.Path, 8))

Cordialement
Abed_H




Bonsoir à tous,

Je dois faire une grosse annerie car je ne somprends pas pourquoi sur les 2
lignes suivantes, seule la 1ere fonctionne.


Nb = Application.Run("'Assistant.xls'!Récup", "Philippe")
Nb = Application.Run("'Assistant.xls'!Récup", Left(ThisWorkbook.Path, 8))

Left(ThisWorkbook.Path, 8) me donne pourtant bien "Philippe" comme résultat.

Avez vous une idée de ce qu'il me faut faire pour lancer
'Assistant.xls'!Récup avec comme paramètre, une variable ?

@+
Bartez





Avatar
Bartez63
Bonsoir ABED HADDOU,

que ce soit droite ou gauche, j'ai toujours une erreur dans cette ligne
comme si Excel n'acceptait pas de variable passée en argument :(

Cordialement
Bartez

"ABED HADDOU" a écrit dans le message
de news:
Bonsoir * Bartez63 *
essaie peut être avec cette syntaxe.
Nb = Application.Run("'Assistant.xls'!Récup", Right(ThisWorkbook.Path, 8))

Cordialement
Abed_H




Bonsoir à tous,

Je dois faire une grosse annerie car je ne somprends pas pourquoi sur les
2
lignes suivantes, seule la 1ere fonctionne.


Nb = Application.Run("'Assistant.xls'!Récup", "Philippe")
Nb = Application.Run("'Assistant.xls'!Récup", Left(ThisWorkbook.Path, 8))

Left(ThisWorkbook.Path, 8) me donne pourtant bien "Philippe" comme
résultat.

Avez vous une idée de ce qu'il me faut faire pour lancer
'Assistant.xls'!Récup avec comme paramètre, une variable ?

@+
Bartez







Avatar
FxM
Bonjour,

ThisWorkbook.Path te renvoyant quelque chose comme c:document and
settings..., je doute comme mes confrères que Nb soit "Philippe".

Pour déterminer comment extraire "Philippe", il faudrait connaître le
chemin complet + le nom du fichier.

Si tu veux récupérer la fin d'un chemin ou d'un fichier, par exemple :
z = ThisWorkbook.Path
y = Split(z, "")
x = y(UBound(y))
Nb = Application.Run("'Assistant.xls'!Recup", x)

z = ThisWorkbook.FullName
y = Split(z, "")
x = y(UBound(y))
Nb = Application.Run("'Assistant.xls'!Recup", x)
Testé sous Win2000 - Excel XP FR

Tu auras constaté une légère différence dans le nom de la macro (évite
les caractères bizarres tels que les accents).

@+
FxM




Bonsoir à tous,

Je dois faire une grosse annerie car je ne somprends pas pourquoi sur les 2
lignes suivantes, seule la 1ere fonctionne.


Nb = Application.Run("'Assistant.xls'!Récup", "Philippe")
Nb = Application.Run("'Assistant.xls'!Récup", Left(ThisWorkbook.Path, 8))

Left(ThisWorkbook.Path, 8) me donne pourtant bien "Philippe" comme résultat.

Avez vous une idée de ce qu'il me faut faire pour lancer
'Assistant.xls'!Récup avec comme paramètre, une variable ?

@+
Bartez




Avatar
Bartez63
Merci de ton aide,

D'après tes commentaires, j'ai fait quelques tests supplémentaires et tu as
raison, les accents posent certainement des problèmes dans ce cas
particulier.

Pour ce qui est du Left ou Right.... :)
J'ai bien vu (une fois publié) que ça ne correspondait à rien, mais comme je
l'avais signalé, la fonction employée me renvoyait bien "Philippe". Pour
faire plus simple, j'avais simplifié le code pour que ce soit plus lisible
sans tenir compte que ce que je postais devais renvoyer en fait "C:Mes d".
Etant donné que mon problème était de faire prendre une variable à la fin de
cette ligne, je n'avais pas rectifié :)
C'est pour ça que j'ai écrit que droite ou gauche ce n'était pas le
problème.

La prochaine fois je contrôlerais mon poste avant d'envoyer ;-)

En tout cas, merci pour l'info sur les accents.
@+
Bartez



"FxM" a écrit dans le message de news:
OuYsO$
Bonjour,

ThisWorkbook.Path te renvoyant quelque chose comme c:document and
settings..., je doute comme mes confrères que Nb soit "Philippe".

Pour déterminer comment extraire "Philippe", il faudrait connaître le
chemin complet + le nom du fichier.

Si tu veux récupérer la fin d'un chemin ou d'un fichier, par exemple :
z = ThisWorkbook.Path
y = Split(z, "")
x = y(UBound(y))
Nb = Application.Run("'Assistant.xls'!Recup", x)

z = ThisWorkbook.FullName
y = Split(z, "")
x = y(UBound(y))
Nb = Application.Run("'Assistant.xls'!Recup", x)
Testé sous Win2000 - Excel XP FR

Tu auras constaté une légère différence dans le nom de la macro (évite les
caractères bizarres tels que les accents).

@+
FxM




Bonsoir à tous,

Je dois faire une grosse annerie car je ne somprends pas pourquoi sur les
2 lignes suivantes, seule la 1ere fonctionne.


Nb = Application.Run("'Assistant.xls'!Récup", "Philippe")
Nb = Application.Run("'Assistant.xls'!Récup", Left(ThisWorkbook.Path, 8))

Left(ThisWorkbook.Path, 8) me donne pourtant bien "Philippe" comme
résultat.

Avez vous une idée de ce qu'il me faut faire pour lancer
'Assistant.xls'!Récup avec comme paramètre, une variable ?

@+
Bartez




Avatar
FxM
Pour ce qui est du Left ou Right.... :)
Nous ne savons que ce que tu nous dis. Il faut tout dire au docteur :o))


En tout cas, merci pour l'info sur les accents.
Une fois enlevés les accents et remplacés les espaces par _, tu as

généralement beaucoup moins de bizarreries.

Merci du retour.

@+
FxM




Merci de ton aide,

D'après tes commentaires, j'ai fait quelques tests supplémentaires et tu as
raison, les accents posent certainement des problèmes dans ce cas
particulier.

Pour ce qui est du Left ou Right.... :)
J'ai bien vu (une fois publié) que ça ne correspondait à rien, mais comme je
l'avais signalé, la fonction employée me renvoyait bien "Philippe". Pour
faire plus simple, j'avais simplifié le code pour que ce soit plus lisible
sans tenir compte que ce que je postais devais renvoyer en fait "C:Mes d".
Etant donné que mon problème était de faire prendre une variable à la fin de
cette ligne, je n'avais pas rectifié :)
C'est pour ça que j'ai écrit que droite ou gauche ce n'était pas le
problème.

La prochaine fois je contrôlerais mon poste avant d'envoyer ;-)

En tout cas, merci pour l'info sur les accents.
@+
Bartez



"FxM" a écrit dans le message de news:
OuYsO$
Bonjour,

ThisWorkbook.Path te renvoyant quelque chose comme c:document and
settings..., je doute comme mes confrères que Nb soit "Philippe".

Pour déterminer comment extraire "Philippe", il faudrait connaître le
chemin complet + le nom du fichier.

Si tu veux récupérer la fin d'un chemin ou d'un fichier, par exemple :
z = ThisWorkbook.Path
y = Split(z, "")
x = y(UBound(y))
Nb = Application.Run("'Assistant.xls'!Recup", x)

z = ThisWorkbook.FullName
y = Split(z, "")
x = y(UBound(y))
Nb = Application.Run("'Assistant.xls'!Recup", x)
Testé sous Win2000 - Excel XP FR

Tu auras constaté une légère différence dans le nom de la macro (évite les
caractères bizarres tels que les accents).

@+
FxM




Bonsoir à tous,

Je dois faire une grosse annerie car je ne somprends pas pourquoi sur les
2 lignes suivantes, seule la 1ere fonctionne.


Nb = Application.Run("'Assistant.xls'!Récup", "Philippe")
Nb = Application.Run("'Assistant.xls'!Récup", Left(ThisWorkbook.Path, 8))

Left(ThisWorkbook.Path, 8) me donne pourtant bien "Philippe" comme
résultat.

Avez vous une idée de ce qu'il me faut faire pour lancer
'Assistant.xls'!Récup avec comme paramètre, une variable ?

@+
Bartez