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

Initialiser un tableau en une ligne ?

7 réponses
Avatar
YannX
Bonjour,

J'ignore un "truc" de base en programmation VB :
peut-on initialiser un tableau en VB
de la façon suivante (analogue a du C++ par exemple)

Dim Tabl& = { 1 , 2 , 3 , 4}

ou déjà écrire

Dim Tabl& (4)
Tabl() = { 1 , 2 , 3 , 4}

Par exemple avec une syntaxe analogue a celle des arguments
par défaut des fonctions....

pourquoi cette question ?
J'ai juste envie de concentrer sur une ligne une initialisation
(ou une ré-initilisation) de variables structurées..

En attendant que VB/VBA soit un vrai langage objet.....

Merci de votre attention / réponses.....

YannX

7 réponses

Avatar
Pat Dev VB
Il faut utiliser le mot-clé Redim en vb.

1) déclaration : dim montableau() as string
2) dimension : redim montableau(10) ce tableau pourra contenir dix éléments

Attention le redim efface tous les éléments d'un tableau.

"YannX" a écrit :

Bonjour,

J'ignore un "truc" de base en programmation VB :
peut-on initialiser un tableau en VB
de la façon suivante (analogue a du C++ par exemple)

Dim Tabl& = { 1 , 2 , 3 , 4}

ou déjà écrire

Dim Tabl& (4)
Tabl() = { 1 , 2 , 3 , 4}

Par exemple avec une syntaxe analogue a celle des arguments
par défaut des fonctions....

pourquoi cette question ?
J'ai juste envie de concentrer sur une ligne une initialisation
(ou une ré-initilisation) de variables structurées..

En attendant que VB/VBA soit un vrai langage objet.....

Merci de votre attention / réponses.....

YannX





Avatar
YannX
Bonjour,

Merci de ta suggestion mais j'ai dû mal expliquer :
ce n'est pas à un redimensionnement que je pense,
mais a une initialisation (ici d'un tableau à 4 position),
ou une affectation d'une constante multiple.

D'ailleurs, il suffit d'utiliser Redim Preserve pour conserver les valeurs,
non ;-)

YannX
"Pat Dev VB" a écrit dans le message de
news:
Il faut utiliser le mot-clé Redim en vb.

1) déclaration : dim montableau() as string
2) dimension : redim montableau(10) ce tableau pourra contenir dix


éléments

Attention le redim efface tous les éléments d'un tableau.

"YannX" a écrit :

> Bonjour,
>
> J'ignore un "truc" de base en programmation VB :
> peut-on initialiser un tableau en VB
> de la façon suivante (analogue a du C++ par exemple)
>
> Dim Tabl& = { 1 , 2 , 3 , 4}
>
> ou déjà écrire
>
> Dim Tabl& (4)
> Tabl() = { 1 , 2 , 3 , 4}
>
> Par exemple avec une syntaxe analogue a celle des arguments
> par défaut des fonctions....
>
> pourquoi cette question ?
> J'ai juste envie de concentrer sur une ligne une initialisation
> (ou une ré-initilisation) de variables structurées..
>
> En attendant que VB/VBA soit un vrai langage objet.....
>
> Merci de votre attention / réponses.....
>
> YannX
>
>
>


Avatar
Pat Dev VB
Désolé Yann,
J'ai mal compris ta question.
Je pensais que tu voulais savoir comment déterminer un nombre d'éléments au
départ dans un tableau.

Je te dis ça tout de suite

"Pat Dev VB" a écrit :

Il faut utiliser le mot-clé Redim en vb.

1) déclaration : dim montableau() as string
2) dimension : redim montableau(10) ce tableau pourra contenir dix éléments

Attention le redim efface tous les éléments d'un tableau.

"YannX" a écrit :

> Bonjour,
>
> J'ignore un "truc" de base en programmation VB :
> peut-on initialiser un tableau en VB
> de la façon suivante (analogue a du C++ par exemple)
>
> Dim Tabl& = { 1 , 2 , 3 , 4}
>
> ou déjà écrire
>
> Dim Tabl& (4)
> Tabl() = { 1 , 2 , 3 , 4}
>
> Par exemple avec une syntaxe analogue a celle des arguments
> par défaut des fonctions....
>
> pourquoi cette question ?
> J'ai juste envie de concentrer sur une ligne une initialisation
> (ou une ré-initilisation) de variables structurées..
>
> En attendant que VB/VBA soit un vrai langage objet.....
>
> Merci de votre attention / réponses.....
>
> YannX
>
>
>


Avatar
Pat Dev VB
Yann,

Tu fait :

Dim Tableau

Tableau = Array("Element1","Element2",....)

Tu verras que ton tableau est initialisé.
en effet, Tableau(0) = "Element1"
Tableau(1) = "Element2"


"Pat Dev VB" a écrit :

Il faut utiliser le mot-clé Redim en vb.

1) déclaration : dim montableau() as string
2) dimension : redim montableau(10) ce tableau pourra contenir dix éléments

Attention le redim efface tous les éléments d'un tableau.

"YannX" a écrit :

> Bonjour,
>
> J'ignore un "truc" de base en programmation VB :
> peut-on initialiser un tableau en VB
> de la façon suivante (analogue a du C++ par exemple)
>
> Dim Tabl& = { 1 , 2 , 3 , 4}
>
> ou déjà écrire
>
> Dim Tabl& (4)
> Tabl() = { 1 , 2 , 3 , 4}
>
> Par exemple avec une syntaxe analogue a celle des arguments
> par défaut des fonctions....
>
> pourquoi cette question ?
> J'ai juste envie de concentrer sur une ligne une initialisation
> (ou une ré-initilisation) de variables structurées..
>
> En attendant que VB/VBA soit un vrai langage objet.....
>
> Merci de votre attention / réponses.....
>
> YannX
>
>
>


Avatar
YannX
Je veux vraiement dire MERCI !
Oui, normal, mais rechercher comme cela pour un point
somme toute trivial, évident, mais "fallait y penser"...
Je tacherais de m'en souvenir !

Dis-donc as-tu tjrs la meme opiniâtreté sur toute question ?
Et en plus en prenant le temps de rédiger / présenter .....
je vais me faire le plaisir de t'adresser toutes mes questions !
;-))

Bon Week-end
"Pat Dev VB" a écrit dans le message de
news:
Yann,

Tu fait :

Dim Tableau

Tableau = Array("Element1","Element2",....)

Tu verras que ton tableau est initialisé.
en effet, Tableau(0) = "Element1"
Tableau(1) = "Element2"


"Pat Dev VB" a écrit :

> Il faut utiliser le mot-clé Redim en vb.
>
> 1) déclaration : dim montableau() as string
> 2) dimension : redim montableau(10) ce tableau pourra contenir dix


éléments
>
> Attention le redim efface tous les éléments d'un tableau.
>
> "YannX" a écrit :
>
> > Bonjour,
> >
> > J'ignore un "truc" de base en programmation VB :
> > peut-on initialiser un tableau en VB
> > de la façon suivante (analogue a du C++ par exemple)
> >
> > Dim Tabl& = { 1 , 2 , 3 , 4}
> >
> > ou déjà écrire
> >
> > Dim Tabl& (4)
> > Tabl() = { 1 , 2 , 3 , 4}
> >
> > Par exemple avec une syntaxe analogue a celle des arguments
> > par défaut des fonctions....
> >
> > pourquoi cette question ?
> > J'ai juste envie de concentrer sur une ligne une initialisation
> > (ou une ré-initilisation) de variables structurées..
> >
> > En attendant que VB/VBA soit un vrai langage objet.....
> >
> > Merci de votre attention / réponses.....
> >
> > YannX
> >
> >
> >


Avatar
ng
Salut,

Regarde la fonction Array() qui génère un tableau Variant en fonction d'un
ParamArray :

a = Array(1,2,3,4[...])

Mais en VB 6.0 (car on peut en .Net) on ne peut pas initialiser une variable
en même temps que la déclarer, exemple

'//pas possible en 6.0 :
Dim i As Integer = 0
'//par contre on peut faire ca:
Dim i As Integer: i = 0

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

YannX wrote:
Bonjour,

J'ignore un "truc" de base en programmation VB :
peut-on initialiser un tableau en VB
de la façon suivante (analogue a du C++ par exemple)

Dim Tabl& = { 1 , 2 , 3 , 4}

ou déjà écrire

Dim Tabl& (4)
Tabl() = { 1 , 2 , 3 , 4}

Par exemple avec une syntaxe analogue a celle des arguments
par défaut des fonctions....

pourquoi cette question ?
J'ai juste envie de concentrer sur une ligne une initialisation
(ou une ré-initilisation) de variables structurées..

En attendant que VB/VBA soit un vrai langage objet.....

Merci de votre attention / réponses.....

YannX


Avatar
YannX
et j'aurais pas pensé en apprendre une p'tite astuce en plus
(trop conditionné à Une Instruction par Ligne en Basic!)
je veux.....merci
Y

"ng" a écrit dans le message de
news:
Salut,

Regarde la fonction Array() qui génère un tableau Variant en fonction d'un
ParamArray :

a = Array(1,2,3,4[...])

Mais en VB 6.0 (car on peut en .Net) on ne peut pas initialiser une


variable
en même temps que la déclarer, exemple

'//pas possible en 6.0 :
Dim i As Integer = 0
'//par contre on peut faire ca:
Dim i As Integer: i = 0

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/

YannX wrote:
> Bonjour,
>
> J'ignore un "truc" de base en programmation VB :
> peut-on initialiser un tableau en VB
> de la façon suivante (analogue a du C++ par exemple)
>
> Dim Tabl& = { 1 , 2 , 3 , 4}
>
> ou déjà écrire
>
> Dim Tabl& (4)
> Tabl() = { 1 , 2 , 3 , 4}
>
> Par exemple avec une syntaxe analogue a celle des arguments
> par défaut des fonctions....
>
> pourquoi cette question ?
> J'ai juste envie de concentrer sur une ligne une initialisation
> (ou une ré-initilisation) de variables structurées..
>
> En attendant que VB/VBA soit un vrai langage objet.....
>
> Merci de votre attention / réponses.....
>
> YannX