Tableau de tableaux [Résolu]

Signaler
Messages postés
21
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
8 février 2013
-
Messages postés
21
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
8 février 2013
-
Bonjour,
je souhaiterais créer un "tableau de tableaux".
Le premier tableau(t) ne contient q'une ligne de 10 colonnes.
Dans chaque cellule du premier tableau, je souhaite un tableau de 4 ligne(l) et de 10 colonnes(c).
Chaques colonnes sert à stocker le contenu d'une combobox.
Donc je declare le tableau de tableaux comme ça:
Public Tableau ()(,) as string '(t)(l,c)
Public tableauCelluleProgramme As Integer       '1cellule = 1 "colonne" de programme (t)
Public tableauLigneBloc As Integer              '1 ligne = un blocfonction (l,
Public tableauColonneCombobox As Integer        '1 colonne = 1 combobox        c)


'tableauCelluleProgramme reçois 0
'tableauLigneBloc reçois 0
'tableauColonneCombobox reçois 0
Tableau(tableauCelluleProgramme)(tableauLigneBloc, tableauColonneCombobox) = ComboBox1.Text



Visual studio génère une érreur : exception NullReferenceException n'a pas été géré
"la référence d'objet n'est pas définie à une instance d'un objet"
Lorsque que je place le pointeur sur "Tableau" il y a bien écrit "Nothing"
Donc je pense qu'il faut l'initialisé
J'ai testé
Public Tableau ()(,) as string = New String(0)(,) {}

mais j'ai toujours cette exception, j'ai testé de mettre des valeurs entre les parenthèses, d'autre configuration de parenthèses et d'accolades mais ça ne fonctionne pas.
Public Tableau (0 to 9)(0 to 3,0 to 9) as string 
ne fonctionne pas non plus
J'ai aussi mis d'autre valeurs dans tableauCelluleProgramme,tableauLigneBloc,tableauColonneCombobox > idem
Je suis débutant et c'est la première fois que j'utilise les tableaux.
Je ne sais pas si c'est la meilleur façon de stocker mes données mais c'est, je pense, la plus simple.
J'avoue être un peu perdu.
Merci d'avance.
mimi35garry vous salut bien

9 réponses

Messages postés
21
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
8 février 2013

Bonjour,
tout d'abors désolé de ne pas avoir répondu plus tôt.
J'ai testé les tableau à 3 dimensions et ils me conviennent.
Merci à tous pour vos réponses.


mimi35garry vous salut bien
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Bonjour

Dim toto (3,2) (4) as string

devrait créer un tableau dynamique toto à une dimension composé de 4 éléments dont chacun serait composé d'un tableau dynamique à deux dimensions, dont les éléments seraient contenus sur 3 lignes et 2 colonnes.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
devrait créer un tableau dynamique toto à une dimension composé de 4 5 éléments dont chacun serait composé d'un tableau dynamique à deux dimensions, dont les éléments seraient contenus sur 3 4 lignes et 2 3 colonnes.

Si option premier index = 0


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
SALUT

ça m'a l'air
je n'ai pas trop compris pourquoi tu as besoin
d'un tableau de tableau

tu devrais utiliser un tableau simple
ou une list of
Messages postés
21
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
8 février 2013

re bonjour,
Merci ucfoutu, j'ai testé ton code :
Dim toto (3,2) (4
) as string
Visual studio souligne le 4 et inscrit:
Les limites ne peuvent être spécifiées que pour le tableau de premier niveau lors de l'initialisation d'un tableau de tableaux.
Donc je met:
Dim toto (3,2) () as string 

Tableau(tableauLigneBloc, tableauColonneCombobox)(tableauCelluleProgramme) = ComboBox1.Text
'Tableau(1,1)(1) = combobox.text

Visual studio me redonne l'erreur:
NullReferenceException
Et le pointeur sur Tableau donne:
(0,0) |Nothing
(0,1) |Nothing
ainsi de suite
La je ne vois pas la deuxième paire de parenthèse !
ShayW : J'ai une Form avec des "bloc" ,lorsque je clique sur mes bloc j'ouvre une form avec 10 combobox.J'ai plusieurs groupes de 4 bloc.
Je voudrais enregister mes combobox(tableauColonneCombobox) suivant le bloc(tableauLigneBloc) et suivant mon groupe(tableauCelluleProgramme).
Il y à peut être une meilleure façon d'enregister mes données.
Merci pour vos réponses.
mimi35garry vous salut bien
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
c'est quoi les blocs et les groupes de 4 bloc
pas clair
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Je ne suis pas VBNettiste.
Il semble que tu cherche à faire un tableau en escalier.
Si oui ===>>

Tapez le texte de l'url ici.
ainsi que les deux rubriques qui suivent dans la colonne de gauche dans ce lien.

Je me demande toutefois si tu n'aurais pas intérêt à utiliser un tableau de structures


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
14810
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
24 juillet 2021
156
Bonjour,

Vois aussi pour faire des structures/classes si l'information est complexe.

Pour les tableaux de tailles dynamiques, tu peux aussi regarder les List(Of ...), ce sera plus performant.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
21
Date d'inscription
mercredi 21 janvier 2009
Statut
Membre
Dernière intervention
8 février 2013

Bonjour,
tous d'abors merci pour vos reponses.
Voici ce que j'ai trouver sur msdn(Tableau de tableaux.)

Les tableaux de tableaux, à savoir les tableaux qui contiennent d'autres tableaux comme éléments, portent également le nom de tableaux en escalier car les longueurs des tableaux d'éléments ne sont pas nécessairement égales. L'exemple suivant déclare deux variables de tableau en escalier qui ont des types de données différent
Dim twoDimOfOneDim(,)() As Integer
Dim oneDimOfTwoDim()(,) As Integer

Le tableau dans twoDimOfOneDim est à deux dimensions et son type de données d'élément est Integer(), ou tableaux Integer unidimensionnels. Le tableau dans oneDimOfTwoDim est unidimensionnel et son type de données d'élément est Integer(,), ou tableaux Integer à deux dimensions.

Moi ce qui m'intéresse c'est le deuxième.

Je pense que je vais me tourner vers un tableau à trois dimensions, et regarder les list(of) comme me l'a suggeré NHenry.
Merci


mimi35garry vous salut bien