Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
lechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
docm
"philippe" <philippe@discussions.microsoft.com> wrote in message
news:F62C00CB-4C00-4942-AF7E-C23E560BBF37@microsoft.com...
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1, LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
lechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer) As
Integer
----
Merci de vos commentaires
Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(avec
lechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
----
Merci de vos commentaires
Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" <no_spam@trust.net> a écrit dans le message de news:
uxzMq%23RcGHA.1204@TK2MSFTNGP02.phx.gbl...
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
docm
"philippe" <philippe@discussions.microsoft.com> wrote in message
news:F62C00CB-4C00-4942-AF7E-C23E560BBF37@microsoft.com...
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
----
Merci de vos commentaires
Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(avec
lechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
----
Merci de vos commentaires
Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" wrote in message
news:Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer)
AsInteger
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(aveclechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer)
AsInteger
----
Merci de vos commentaires
Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" <lecocosteph@frite.fr> wrote in message
news:up7VWFScGHA.4108@TK2MSFTNGP03.phx.gbl...
Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" <no_spam@trust.net> a écrit dans le message de news:
uxzMq%23RcGHA.1204@TK2MSFTNGP02.phx.gbl...
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
docm
"philippe" <philippe@discussions.microsoft.com> wrote in message
news:F62C00CB-4C00-4942-AF7E-C23E560BBF37@microsoft.com...
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer)
As
Integer
----
Merci de vos commentaires
Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" wrote in message
news:Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As Integer)
AsInteger
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(aveclechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As Integer)
AsInteger
----
Merci de vos commentaires
Oui , c'est bien pour cela que je parle de Variant,
mais ma question plus précisément visait le fait que
NbSlash = CharOccurs(PathedName, "")
NbSlash non déclaré (donc par défaut variant) acquiert
CharOccurs(PathedName, "")
qui lui même est bien déclaré de type integer et (donc pensai-je ) ne
devrait pas poser de problème.
Donc tu confirmes que ce même fait (NbSlash = ...) convertit l'integer
issu
de CharOccurs en Variant
lSteph
"docm" a écrit dans le message de news:Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" wrote in message
news:Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As
Integer)
AsInteger
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(aveclechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As
Integer)
AsInteger
----
Merci de vos commentaires
Oui , c'est bien pour cela que je parle de Variant,
mais ma question plus précisément visait le fait que
NbSlash = CharOccurs(PathedName, "")
NbSlash non déclaré (donc par défaut variant) acquiert
CharOccurs(PathedName, "")
qui lui même est bien déclaré de type integer et (donc pensai-je ) ne
devrait pas poser de problème.
Donc tu confirmes que ce même fait (NbSlash = ...) convertit l'integer
issu
de CharOccurs en Variant
lSteph
"docm" <no_spam@trust.net> a écrit dans le message de news:
eUIvqmScGHA.3352@TK2MSFTNGP03.phx.gbl...
Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" <lecocosteph@frite.fr> wrote in message
news:up7VWFScGHA.4108@TK2MSFTNGP03.phx.gbl...
Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" <no_spam@trust.net> a écrit dans le message de news:
uxzMq%23RcGHA.1204@TK2MSFTNGP02.phx.gbl...
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As
Integer)
As
Integer
docm
"philippe" <philippe@discussions.microsoft.com> wrote in message
news:F62C00CB-4C00-4942-AF7E-C23E560BBF37@microsoft.com...
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As
Integer)
As
Integer
----
Merci de vos commentaires
Oui , c'est bien pour cela que je parle de Variant,
mais ma question plus précisément visait le fait que
NbSlash = CharOccurs(PathedName, "")
NbSlash non déclaré (donc par défaut variant) acquiert
CharOccurs(PathedName, "")
qui lui même est bien déclaré de type integer et (donc pensai-je ) ne
devrait pas poser de problème.
Donc tu confirmes que ce même fait (NbSlash = ...) convertit l'integer
issu
de CharOccurs en Variant
lSteph
"docm" a écrit dans le message de news:Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" wrote in message
news:Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As
Integer)
AsInteger
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(aveclechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As
Integer)
AsInteger
----
Merci de vos commentaires
Exact. Le fait d'affecter un Integer à une variable nom déclarée ne fait
pas
de cette dernière une variable de type Integer.
Une variable non déclarée adopte le type Variant et conserve ce type quoi
qu'il arrive.
docm
"lSteph" wrote in message
news:Oui , c'est bien pour cela que je parle de Variant,
mais ma question plus précisément visait le fait que
NbSlash = CharOccurs(PathedName, "")
NbSlash non déclaré (donc par défaut variant) acquiert
CharOccurs(PathedName, "")
qui lui même est bien déclaré de type integer et (donc pensai-je ) ne
devrait pas poser de problème.
Donc tu confirmes que ce même fait (NbSlash = ...) convertit l'integer
issude CharOccurs en Variant
lSteph
"docm" a écrit dans le message de news:Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" wrote in message
news:Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As
Integer)AsInteger
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(aveclechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As
Integer)AsInteger
----
Merci de vos commentaires
Exact. Le fait d'affecter un Integer à une variable nom déclarée ne fait
pas
de cette dernière une variable de type Integer.
Une variable non déclarée adopte le type Variant et conserve ce type quoi
qu'il arrive.
docm
"lSteph" <lecocosteph@frite.fr> wrote in message
news:O6ZwlyScGHA.3840@TK2MSFTNGP04.phx.gbl...
Oui , c'est bien pour cela que je parle de Variant,
mais ma question plus précisément visait le fait que
NbSlash = CharOccurs(PathedName, "")
NbSlash non déclaré (donc par défaut variant) acquiert
CharOccurs(PathedName, "")
qui lui même est bien déclaré de type integer et (donc pensai-je ) ne
devrait pas poser de problème.
Donc tu confirmes que ce même fait (NbSlash = ...) convertit l'integer
issu
de CharOccurs en Variant
lSteph
"docm" <no_spam@trust.net> a écrit dans le message de news:
eUIvqmScGHA.3352@TK2MSFTNGP03.phx.gbl...
Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" <lecocosteph@frite.fr> wrote in message
news:up7VWFScGHA.4108@TK2MSFTNGP03.phx.gbl...
Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" <no_spam@trust.net> a écrit dans le message de news:
uxzMq%23RcGHA.1204@TK2MSFTNGP02.phx.gbl...
Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As
Integer)
As
Integer
docm
"philippe" <philippe@discussions.microsoft.com> wrote in message
news:F62C00CB-4C00-4942-AF7E-C23E560BBF37@microsoft.com...
Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissance
de VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -
PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(avec
le
chemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As
Integer)
As
Integer
----
Merci de vos commentaires
Exact. Le fait d'affecter un Integer à une variable nom déclarée ne fait
pas
de cette dernière une variable de type Integer.
Une variable non déclarée adopte le type Variant et conserve ce type quoi
qu'il arrive.
docm
"lSteph" wrote in message
news:Oui , c'est bien pour cela que je parle de Variant,
mais ma question plus précisément visait le fait que
NbSlash = CharOccurs(PathedName, "")
NbSlash non déclaré (donc par défaut variant) acquiert
CharOccurs(PathedName, "")
qui lui même est bien déclaré de type integer et (donc pensai-je ) ne
devrait pas poser de problème.
Donc tu confirmes que ce même fait (NbSlash = ...) convertit l'integer
issude CharOccurs en Variant
lSteph
"docm" a écrit dans le message de news:Voici un extrait de l'aide à la rubrique Déclaration de variables:
"Vous pouvez déclarer implicitement une variable dans Visual Basic avec
une
simple instruction d'affectation. Toutes les variables ainsi déclarées
sont
de type Variant."
Amicalement
docm
"lSteph" wrote in message
news:Bonsoir Docm,
Suis-je dans l'erreur?
CharOccurs renvoie déjà un integer:
Function CharOccurs(chaine As String, cherche As String) As Integer
...
NbSlash = CharOccurs(PathedName, "")
ou le fait de n'avoir pas typé NbSlash en fait il implicitement un
Variant?
lSteph
"docm" a écrit dans le message de news:
uxzMq%Bonjour philippe.
Function ShortFileName(PathedName As String)
'Il faut déclarer NbSlash ainsi :
Dim NbSlash As Integer
car le paramètre occurence de la fonction AT attend une variable de
type
Integer :
Function At(chaine As String, cherche As String, occurence As
Integer)AsInteger
docm
"philippe" wrote in message
news:Bonjour j'ai un problème a priori très simple qui tient à ma
méconnaissancede VBA.
La fonction ShortFileName ci-dessous produit l'erreur suivante :
Erreur de compilation : Argument ByRef incompatible
C'est le NbSlash de la ligne 3 qui pose problème
Function ShortFileName(PathedName As String)
NbSlash = CharOccurs(PathedName, "")
PositionLastSlash = At(PathedName, "", NbSlash)
LengthPathedName = Len(PathedName)
ShortFileName = Mid(PathedName, PositionLastSlash - 1,
LengthPathedName -PositionPathedName)
End Function
--- éléments de contexte :
La fonction ShortFileName extrait le nom du fichier du nom complet
(aveclechemin).
J'utilise pour cela deux autres fonctions :
CharOccurs qui me dit le nombre d'occurences d'un caractère dans un
chaîne
et
At qui me donne la position de la nième occurence d'un caractètre
Function CharOccurs(chaine As String, cherche As String) As Integer
Function At(chaine As String, cherche As String, occurence As
Integer)AsInteger
----
Merci de vos commentaires
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
La fonction ShortFileName extrait le nom du fichier du nom complet (avec
le
chemin).
Bonjour,
Juste pour le fun. J'ai commencé à "jouer" avec mon Visual Basic 2005
Express Edition" et cela m'a tout l'air que dans une ligne de ce genre:
dim i,j,k as integer
On ramasse 3 Integer et non 1 Integer et 2 variant. Donc, attention aux
migrations éventuelles de programmes VB6 - VBA vers VB 2005.
Bonjour,
Juste pour le fun. J'ai commencé à "jouer" avec mon Visual Basic 2005
Express Edition" et cela m'a tout l'air que dans une ligne de ce genre:
dim i,j,k as integer
On ramasse 3 Integer et non 1 Integer et 2 variant. Donc, attention aux
migrations éventuelles de programmes VB6 - VBA vers VB 2005.
Bonjour,
Juste pour le fun. J'ai commencé à "jouer" avec mon Visual Basic 2005
Express Edition" et cela m'a tout l'air que dans une ligne de ce genre:
dim i,j,k as integer
On ramasse 3 Integer et non 1 Integer et 2 variant. Donc, attention aux
migrations éventuelles de programmes VB6 - VBA vers VB 2005.