Tableau de tableaux

Résolu
mimi35garry Messages postés 21 Date d'inscription mercredi 21 janvier 2009 Statut Membre Dernière intervention 8 février 2013 - 7 mars 2012 à 00:13
mimi35garry Messages postés 21 Date d'inscription mercredi 21 janvier 2009 Statut Membre Dernière intervention 8 février 2013 - 29 mars 2012 à 14:38
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

mimi35garry Messages postés 21 Date d'inscription mercredi 21 janvier 2009 Statut Membre Dernière intervention 8 février 2013
29 mars 2012 à 14:38
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
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 mars 2012 à 07:55
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
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 mars 2012 à 07:59
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
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
7 mars 2012 à 10:19
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mimi35garry Messages postés 21 Date d'inscription mercredi 21 janvier 2009 Statut Membre Dernière intervention 8 février 2013
7 mars 2012 à 14:45
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
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
7 mars 2012 à 16:09
c'est quoi les blocs et les groupes de 4 bloc
pas clair
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 mars 2012 à 16:47
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
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
7 mars 2012 à 20:58
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
0
mimi35garry Messages postés 21 Date d'inscription mercredi 21 janvier 2009 Statut Membre Dernière intervention 8 février 2013
8 mars 2012 à 02:25
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
0
Rejoignez-nous