Juste une question, Est il possible qu'une fonction VBA retourne un tableau?
(je n'ai jamais essayé)
Je précise:
Je souhaite batire une fonction dans laquelle je passerais un texte et un
entier.
Cette fonction me retourneras un tableau en coupant le texte au nombre de
caractères indiqué (entier).
Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
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
JB
Bonjour,
Voici un exemple de fonction matricielle qui retourne un tableau.
http://cjoint.com/?bnpLmk3Hu8
Function RechTous(champRech As Range, champRetour As Range, v) Dim temp(1000, 1) a = champRech 'pour performance j = 0 For i = 1 To champRech.Count If v = a(i, 1) Then temp(j, 0) = champRetour(i) j = j + 1 End If Next i RechTous = temp End Function
Cordialement JB
Bonjour,
Voici un exemple de fonction matricielle qui retourne un tableau.
http://cjoint.com/?bnpLmk3Hu8
Function RechTous(champRech As Range, champRetour As Range, v)
Dim temp(1000, 1)
a = champRech 'pour performance
j = 0
For i = 1 To champRech.Count
If v = a(i, 1) Then
temp(j, 0) = champRetour(i)
j = j + 1
End If
Next i
RechTous = temp
End Function
Voici un exemple de fonction matricielle qui retourne un tableau.
http://cjoint.com/?bnpLmk3Hu8
Function RechTous(champRech As Range, champRetour As Range, v) Dim temp(1000, 1) a = champRech 'pour performance j = 0 For i = 1 To champRech.Count If v = a(i, 1) Then temp(j, 0) = champRetour(i) j = j + 1 End If Next i RechTous = temp End Function
Cordialement JB
Ange Ounis
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose m'échappe, pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar) Coupe = Left(Txt, nbCar) End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est nécessaire dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font excatement ce que tu demandes.
---------- Ange Ounis ----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un tableau? (je n'ai jamais essayé)
Je précise: Je souhaite batire une fonction dans laquelle je passerais un texte et un entier. Cette fonction me retourneras un tableau en coupant le texte au nombre de caractères indiqué (entier). Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
D'avance merci
Radix
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar)
Coupe = Left(Txt, nbCar)
End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font
excatement ce que tu demandes.
----------
Ange Ounis
----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un tableau?
(je n'ai jamais essayé)
Je précise:
Je souhaite batire une fonction dans laquelle je passerais un texte et un
entier.
Cette fonction me retourneras un tableau en coupant le texte au nombre de
caractères indiqué (entier).
Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
Pour le problème décrit, je ne vois pas, à moins que quelque chose m'échappe, pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar) Coupe = Left(Txt, nbCar) End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est nécessaire dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font excatement ce que tu demandes.
---------- Ange Ounis ----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un tableau? (je n'ai jamais essayé)
Je précise: Je souhaite batire une fonction dans laquelle je passerais un texte et un entier. Cette fonction me retourneras un tableau en coupant le texte au nombre de caractères indiqué (entier). Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
D'avance merci
Radix
Radix??
Merci
En fait je ne connais pas la lg du texte et je souhaite le couper pour le faire rentrer dans un formulaire et eventuellement inserer une ligne vide Transformer un texte en (par exemple) 3lignes de textes et une ligne vide soit un tableau de 4string dont le dernier est vide.
Radix
"Ange Ounis" a écrit dans le message de news:
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar) Coupe = Left(Txt, nbCar) End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font excatement ce que tu demandes.
---------- Ange Ounis ----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un tableau?
(je n'ai jamais essayé)
Je précise: Je souhaite batire une fonction dans laquelle je passerais un texte et un
entier. Cette fonction me retourneras un tableau en coupant le texte au nombre de
caractères indiqué (entier). Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
D'avance merci
Radix
Merci
En fait je ne connais pas la lg du texte et je souhaite le couper pour le
faire rentrer dans un formulaire et eventuellement inserer une ligne vide
Transformer un texte en (par exemple) 3lignes de textes et une ligne vide
soit un tableau de 4string dont le dernier est vide.
Radix
"Ange Ounis" <nospam@nospam> a écrit dans le message de
news:uts2LFdGGHA.376@TK2MSFTNGP12.phx.gbl...
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose
m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar)
Coupe = Left(Txt, nbCar)
End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est
nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font
excatement ce que tu demandes.
----------
Ange Ounis
----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un
tableau?
(je n'ai jamais essayé)
Je précise:
Je souhaite batire une fonction dans laquelle je passerais un texte et
un
entier.
Cette fonction me retourneras un tableau en coupant le texte au nombre
de
caractères indiqué (entier).
Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
En fait je ne connais pas la lg du texte et je souhaite le couper pour le faire rentrer dans un formulaire et eventuellement inserer une ligne vide Transformer un texte en (par exemple) 3lignes de textes et une ligne vide soit un tableau de 4string dont le dernier est vide.
Radix
"Ange Ounis" a écrit dans le message de news:
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar) Coupe = Left(Txt, nbCar) End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font excatement ce que tu demandes.
---------- Ange Ounis ----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un tableau?
(je n'ai jamais essayé)
Je précise: Je souhaite batire une fonction dans laquelle je passerais un texte et un
entier. Cette fonction me retourneras un tableau en coupant le texte au nombre de
caractères indiqué (entier). Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
D'avance merci
Radix
Ange Ounis
C'est plus clair pour mon maigre neurone :) Peut-être cette fonction peut-elle te servir de point de départ (Excel 2000 ou + récent à cause de Split mais si besoin une version sans Split devrait être possible) :
'''''''''''''''''''''''''''' Function Decoupe(Txt, NbLignes) Dim i As Long, S As String, Marqueur As String, NbCar As Variant
Marqueur = Chr(164) NbCar = Len(Txt) / NbLignes If NbCar > Int(NbCar) Then NbCar = NbCar + 1 S = Left(Txt, NbCar) For i = NbCar + 1 To Len(Txt) Step NbCar S = S & Marqueur & Mid(Txt, i, NbCar) Next S = S & Marqueur Decoupe = Split(S, Marqueur)
End Function
Sub essai() Dim Arr, i As Long Arr = Decoupe("Texte à découper", 3) For i = LBound(Arr) To UBound(Arr) MsgBox Arr(i) Next i End Sub ''''''''''''''''''''''''''''
---------- Ange Ounis ----------
Merci
En fait je ne connais pas la lg du texte et je souhaite le couper pour le faire rentrer dans un formulaire et eventuellement inserer une ligne vide Transformer un texte en (par exemple) 3lignes de textes et une ligne vide soit un tableau de 4string dont le dernier est vide.
Radix
"Ange Ounis" a écrit dans le message de news:
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose
m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar) Coupe = Left(Txt, nbCar) End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est
nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font excatement ce que tu demandes.
---------- Ange Ounis ----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un
tableau?
(je n'ai jamais essayé)
Je précise: Je souhaite batire une fonction dans laquelle je passerais un texte et
un
entier. Cette fonction me retourneras un tableau en coupant le texte au nombre
de
caractères indiqué (entier). Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
D'avance merci
Radix
C'est plus clair pour mon maigre neurone :)
Peut-être cette fonction peut-elle te servir de point de départ (Excel 2000 ou +
récent à cause de Split mais si besoin une version sans Split devrait être
possible) :
''''''''''''''''''''''''''''
Function Decoupe(Txt, NbLignes)
Dim i As Long, S As String, Marqueur As String, NbCar As Variant
Marqueur = Chr(164)
NbCar = Len(Txt) / NbLignes
If NbCar > Int(NbCar) Then NbCar = NbCar + 1
S = Left(Txt, NbCar)
For i = NbCar + 1 To Len(Txt) Step NbCar
S = S & Marqueur & Mid(Txt, i, NbCar)
Next
S = S & Marqueur
Decoupe = Split(S, Marqueur)
End Function
Sub essai()
Dim Arr, i As Long
Arr = Decoupe("Texte à découper", 3)
For i = LBound(Arr) To UBound(Arr)
MsgBox Arr(i)
Next i
End Sub
''''''''''''''''''''''''''''
----------
Ange Ounis
----------
Merci
En fait je ne connais pas la lg du texte et je souhaite le couper pour le
faire rentrer dans un formulaire et eventuellement inserer une ligne vide
Transformer un texte en (par exemple) 3lignes de textes et une ligne vide
soit un tableau de 4string dont le dernier est vide.
Radix
"Ange Ounis" <nospam@nospam> a écrit dans le message de
news:uts2LFdGGHA.376@TK2MSFTNGP12.phx.gbl...
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose
m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar)
Coupe = Left(Txt, nbCar)
End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est
nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font
excatement ce que tu demandes.
----------
Ange Ounis
----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un
tableau?
(je n'ai jamais essayé)
Je précise:
Je souhaite batire une fonction dans laquelle je passerais un texte et
un
entier.
Cette fonction me retourneras un tableau en coupant le texte au nombre
de
caractères indiqué (entier).
Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???
C'est plus clair pour mon maigre neurone :) Peut-être cette fonction peut-elle te servir de point de départ (Excel 2000 ou + récent à cause de Split mais si besoin une version sans Split devrait être possible) :
'''''''''''''''''''''''''''' Function Decoupe(Txt, NbLignes) Dim i As Long, S As String, Marqueur As String, NbCar As Variant
Marqueur = Chr(164) NbCar = Len(Txt) / NbLignes If NbCar > Int(NbCar) Then NbCar = NbCar + 1 S = Left(Txt, NbCar) For i = NbCar + 1 To Len(Txt) Step NbCar S = S & Marqueur & Mid(Txt, i, NbCar) Next S = S & Marqueur Decoupe = Split(S, Marqueur)
End Function
Sub essai() Dim Arr, i As Long Arr = Decoupe("Texte à découper", 3) For i = LBound(Arr) To UBound(Arr) MsgBox Arr(i) Next i End Sub ''''''''''''''''''''''''''''
---------- Ange Ounis ----------
Merci
En fait je ne connais pas la lg du texte et je souhaite le couper pour le faire rentrer dans un formulaire et eventuellement inserer une ligne vide Transformer un texte en (par exemple) 3lignes de textes et une ligne vide soit un tableau de 4string dont le dernier est vide.
Radix
"Ange Ounis" a écrit dans le message de news:
Quelle doit être la definition de la fonction?
As Variant
Pour le problème décrit, je ne vois pas, à moins que quelque chose
m'échappe,
pourquoi tu aurais besoin d'un tableau :
Function Coupe(Txt, nbCar) Coupe = Left(Txt, nbCar) End Function
Et, en fait, je ne vois pas non plus pourquoi une fonction perso est
nécessaire
dans ce cas. Les fonctions intégrées GAUCHE (Excel) et Left (VBA) font excatement ce que tu demandes.
---------- Ange Ounis ----------
Bonjour,
Juste une question, Est il possible qu'une fonction VBA retourne un
tableau?
(je n'ai jamais essayé)
Je précise: Je souhaite batire une fonction dans laquelle je passerais un texte et
un
entier. Cette fonction me retourneras un tableau en coupant le texte au nombre
de
caractères indiqué (entier). Quelle doit être la definition de la fonction?
function toto (txt as string, lg as integer)as ???? string, array???