Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à tout
...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant
=RESULTAT(64) en début de fonction,
on définit les cellules par =POSER.NOM("RESULTAT";E3:G3)
on fait les calculs souhaités,
on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Alain CROS
Bonjour
On peut utiliser le type variant qui est celui utilisé par défaut.
Un petit exemple :
Sur une feuille macro
A1 =RESULTAT(64) A2 =RETOUR(Feuil1!E3:G3) Insertion Nom Définir Noms dans le classeur: FonctionXL4 Fait référence à: =Macro1!$A$1 Macro Fonction
Dans un Module Vba
Function FonctionVBA() As Variant FonctionVBA = [Feuil1!E3:G3] End Function
Ces 2 fonctions sont équivalentes
Sur Feuil1 E3 = 1 F3 = 2 G3 = 3
Sur Feuil2
Sélectionner A1:C1 Insertion fonction Personnalisées FonctionXL4 Valider en matricielle
Sélectionner A3:C3 Insertion fonction Personnalisées FonctionVBA Valider en matricielle
Alain CROS
"Charles" a écrit dans le message de news: 41aa3c3e$0$5776$
Bonsoir,
Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à tout ...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant =RESULTAT(64) en début de fonction, on définit les cellules par =POSER.NOM("RESULTAT";E3:G3) on fait les calculs souhaités, on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?
Merci d'avance
Bonjour
On peut utiliser le type variant qui est celui utilisé par défaut.
Un petit exemple :
Sur une feuille macro
A1 =RESULTAT(64)
A2 =RETOUR(Feuil1!E3:G3)
Insertion Nom Définir
Noms dans le classeur:
FonctionXL4
Fait référence à:
=Macro1!$A$1
Macro
Fonction
Dans un Module Vba
Function FonctionVBA() As Variant
FonctionVBA = [Feuil1!E3:G3]
End Function
Ces 2 fonctions sont équivalentes
Sur Feuil1
E3 = 1
F3 = 2
G3 = 3
Sur Feuil2
Sélectionner A1:C1
Insertion fonction Personnalisées
FonctionXL4
Valider en matricielle
Sélectionner A3:C3
Insertion fonction Personnalisées
FonctionVBA
Valider en matricielle
Alain CROS
"Charles" <nospam@nospam.fr> a écrit dans le message de news: 41aa3c3e$0$5776$626a14ce@news.free.fr...
Bonsoir,
Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à tout
...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant
=RESULTAT(64) en début de fonction,
on définit les cellules par =POSER.NOM("RESULTAT";E3:G3)
on fait les calculs souhaités,
on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?
On peut utiliser le type variant qui est celui utilisé par défaut.
Un petit exemple :
Sur une feuille macro
A1 =RESULTAT(64) A2 =RETOUR(Feuil1!E3:G3) Insertion Nom Définir Noms dans le classeur: FonctionXL4 Fait référence à: =Macro1!$A$1 Macro Fonction
Dans un Module Vba
Function FonctionVBA() As Variant FonctionVBA = [Feuil1!E3:G3] End Function
Ces 2 fonctions sont équivalentes
Sur Feuil1 E3 = 1 F3 = 2 G3 = 3
Sur Feuil2
Sélectionner A1:C1 Insertion fonction Personnalisées FonctionXL4 Valider en matricielle
Sélectionner A3:C3 Insertion fonction Personnalisées FonctionVBA Valider en matricielle
Alain CROS
"Charles" a écrit dans le message de news: 41aa3c3e$0$5776$
Bonsoir,
Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à tout ...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant =RESULTAT(64) en début de fonction, on définit les cellules par =POSER.NOM("RESULTAT";E3:G3) on fait les calculs souhaités, on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?
Merci d'avance
Charles
Bonsoir, Merci pour ces infos. Ce n'est pas exactement ce que je cherchais. J'ai trouvé le principe sur le site de http://frederic.sigonneau.free.fr/ que je remercie.
function test(arg1,arg2,arg3) as variant res1 = worksheetfunction.vlookup(arg1,[feuil1!_base],3,True) res2 = worksheetfunction.vlookup(arg1,[feuil1!_base],4,True) res3 = worksheetfunction.vlookup(arg1,[feuil1!_base],5,True) dim matres as variant matres = array(res1,res2,res3) <--- met les résultats dans une matrice test = matres <--- renvoie la matrice end function
Autre question : Comment à partir de : res1 = worksheetfunction.vlookup(arg1,[feuil1!_base],3,True) puis je obtenir la valeur juste au dessus du tableau : feuil1!_base ? ( worksheetfunction.vlookup est l'équivalent en VBA de RECHERCHEV )
Merci d'avance Charles
"Alain CROS" a écrit dans le message de news:
Bonjour
On peut utiliser le type variant qui est celui utilisé par défaut.
Un petit exemple :
Sur une feuille macro
A1 =RESULTAT(64) A2 =RETOUR(Feuil1!E3:G3) Insertion Nom Définir Noms dans le classeur: FonctionXL4 Fait référence à: =Macro1!$A$1 Macro Fonction
Dans un Module Vba
Function FonctionVBA() As Variant FonctionVBA = [Feuil1!E3:G3] End Function
Ces 2 fonctions sont équivalentes
Sur Feuil1 E3 = 1 F3 = 2 G3 = 3
Sur Feuil2
Sélectionner A1:C1 Insertion fonction Personnalisées FonctionXL4 Valider en matricielle
Sélectionner A3:C3 Insertion fonction Personnalisées FonctionVBA Valider en matricielle
Alain CROS
"Charles" a écrit dans le message de news: 41aa3c3e$0$5776$
Bonsoir,
Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à tout
...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant =RESULTAT(64) en début de fonction, on définit les cellules par =POSER.NOM("RESULTAT";E3:G3) on fait les calculs souhaités, on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?
Merci d'avance
Bonsoir,
Merci pour ces infos.
Ce n'est pas exactement ce que je cherchais.
J'ai trouvé le principe sur le site de http://frederic.sigonneau.free.fr/
que je remercie.
function test(arg1,arg2,arg3) as variant
res1 = worksheetfunction.vlookup(arg1,[feuil1!_base],3,True)
res2 = worksheetfunction.vlookup(arg1,[feuil1!_base],4,True)
res3 = worksheetfunction.vlookup(arg1,[feuil1!_base],5,True)
dim matres as variant
matres = array(res1,res2,res3) <--- met les résultats dans une matrice
test = matres <--- renvoie la matrice
end function
Autre question :
Comment à partir de :
res1 = worksheetfunction.vlookup(arg1,[feuil1!_base],3,True)
puis je obtenir la valeur juste au dessus du tableau : feuil1!_base ?
( worksheetfunction.vlookup est l'équivalent en VBA de RECHERCHEV )
Merci d'avance
Charles
"Alain CROS" <Personne@ICI> a écrit dans le message de news:
uRsyr9e1EHA.1452@TK2MSFTNGP11.phx.gbl...
Bonjour
On peut utiliser le type variant qui est celui utilisé par défaut.
Un petit exemple :
Sur une feuille macro
A1 =RESULTAT(64)
A2 =RETOUR(Feuil1!E3:G3)
Insertion Nom Définir
Noms dans le classeur:
FonctionXL4
Fait référence à:
=Macro1!$A$1
Macro
Fonction
Dans un Module Vba
Function FonctionVBA() As Variant
FonctionVBA = [Feuil1!E3:G3]
End Function
Ces 2 fonctions sont équivalentes
Sur Feuil1
E3 = 1
F3 = 2
G3 = 3
Sur Feuil2
Sélectionner A1:C1
Insertion fonction Personnalisées
FonctionXL4
Valider en matricielle
Sélectionner A3:C3
Insertion fonction Personnalisées
FonctionVBA
Valider en matricielle
Alain CROS
"Charles" <nospam@nospam.fr> a écrit dans le message de news:
41aa3c3e$0$5776$626a14ce@news.free.fr...
Bonsoir,
Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à
tout
...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant
=RESULTAT(64) en début de fonction,
on définit les cellules par =POSER.NOM("RESULTAT";E3:G3)
on fait les calculs souhaités,
on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?
Bonsoir, Merci pour ces infos. Ce n'est pas exactement ce que je cherchais. J'ai trouvé le principe sur le site de http://frederic.sigonneau.free.fr/ que je remercie.
function test(arg1,arg2,arg3) as variant res1 = worksheetfunction.vlookup(arg1,[feuil1!_base],3,True) res2 = worksheetfunction.vlookup(arg1,[feuil1!_base],4,True) res3 = worksheetfunction.vlookup(arg1,[feuil1!_base],5,True) dim matres as variant matres = array(res1,res2,res3) <--- met les résultats dans une matrice test = matres <--- renvoie la matrice end function
Autre question : Comment à partir de : res1 = worksheetfunction.vlookup(arg1,[feuil1!_base],3,True) puis je obtenir la valeur juste au dessus du tableau : feuil1!_base ? ( worksheetfunction.vlookup est l'équivalent en VBA de RECHERCHEV )
Merci d'avance Charles
"Alain CROS" a écrit dans le message de news:
Bonjour
On peut utiliser le type variant qui est celui utilisé par défaut.
Un petit exemple :
Sur une feuille macro
A1 =RESULTAT(64) A2 =RETOUR(Feuil1!E3:G3) Insertion Nom Définir Noms dans le classeur: FonctionXL4 Fait référence à: =Macro1!$A$1 Macro Fonction
Dans un Module Vba
Function FonctionVBA() As Variant FonctionVBA = [Feuil1!E3:G3] End Function
Ces 2 fonctions sont équivalentes
Sur Feuil1 E3 = 1 F3 = 2 G3 = 3
Sur Feuil2
Sélectionner A1:C1 Insertion fonction Personnalisées FonctionXL4 Valider en matricielle
Sélectionner A3:C3 Insertion fonction Personnalisées FonctionVBA Valider en matricielle
Alain CROS
"Charles" a écrit dans le message de news: 41aa3c3e$0$5776$
Bonsoir,
Je suis en train de ré-écrire des macros XL4 en VBA ( il y a un début à tout
...)
en XL4 on peut renvoyer un résultat sous forme de vecteur en mettant =RESULTAT(64) en début de fonction, on définit les cellules par =POSER.NOM("RESULTAT";E3:G3) on fait les calculs souhaités, on retourne les valeurs par '=RETOUR(RESULTAT)
Je ne sais pas comment on retourne un résultat vectoriel en VBA ?