Accueil > Forum > > > > Problème de redimensionnement tableau à 2 dimensions
Problème de redimensionnement tableau à 2 dimensions
mercredi 15 juin 2005 à 10:18:31 |
Problème de redimensionnement tableau à 2 dimensions

fal91
|
Bonjour,
Je n'arrive pas à redimmensionner un tableau à 2 dimensions. J'obtiens l'erreur suivante : Erreur d'exécution Microsoft VBScript (0x800A0009) Indice en dehors de la plage
Voilà mon code:
redim batiment(50,2) i=0 Do While not objRecordset01.eof batiment(i,0)=objRecordset01("NAME0") batiment(i,1)=objRecordset01("ID0") objRecordset01.MoveNext i=i+1 loop ReDim Preserve batiment(i,2)
J'avais eu la même erreur avec un tableau à 1D, il fallait juste déclarer le tableau avec redim au lieu de dim .
Merci pour votre aide
|
|
mercredi 15 juin 2005 à 14:11:50 |
Re : Problème de redimensionnement tableau à 2 dimensions

Nurgle
|
tu obtiens une erreur au premier "Redim" ou au 2e "Redim"
Met Dim batiment(50,2) au début
(je pense pas que tu ais besoin du premier redim cette fois ci  )
 Nurgle C'est une grande folie que de vouloir être sage tout seul !
|
|
mercredi 15 juin 2005 à 15:55:38 |
Re : Problème de redimensionnement tableau à 2 dimensions

fal91
|
J'obtiens une erreur au 2ème ReDim, j'avais déjà éssayé avec juste Dim au 1ier, j'ai retesté là, mais ca ne marche pas  Merci pour ton aide !
|
|
mercredi 15 juin 2005 à 16:09:12 |
Re : Problème de redimensionnement tableau à 2 dimensions

Nurgle
|
tu peux obtenir le nombre d'enregistrement par la propriété objRecordSet01.RecordCount.
Donc tu peux dès le début faire : Dim batiment(objRecordset01.RecordCount, 2)
comme ça tu n'auras pas de redim à faire 
(cette propriété n'est pas prise en charge par tous les types de BD malheureusement...  )
Ah aussi : tu ne peux pas redimensionner un tableau en un tableau plus
petit tout en voulant préserver les données. Donc si à la fin de ta
boucle, i < 50, ça va planter.  Nurgle C'est une grande folie que de vouloir être sage tout seul !
|
|
mercredi 15 juin 2005 à 16:25:14 |
Re : Problème de redimensionnement tableau à 2 dimensions
|
mercredi 15 juin 2005 à 16:34:54 |
Re : Problème de redimensionnement tableau à 2 dimensions

Nurgle
|
il te retourne -1, donc ça marche pas 
Quelle est environ la valeur de i à la fin de ta boucle ?
Si à la fin i < 50, alors, tu auras des lignes vides dans ton tableau, mais c'est pas bien grave...donc ça irait.
Si i > 50, alors il y aurait un moment dans ta boucle ou par
exemple i = 53, où cette ligne ne fonctionnerais pas : batiment(1,2) =
objRecordset01("ID0") car il est déclaré comme batiment(50,2)
Sinon il faudrait faire une première boucle qui ne servirait à qu'à
trouver le nombre de ligne de ton recordset, puis créer le tableau avec
directement le bon nombre de lignes, puis le remplir avec une 2e boucle
(celle que tu utilises actuellement).
ça c'est sûr de marcher, mais c'est la solution la moins rapide...
 Nurgle C'est une grande folie que de vouloir être sage tout seul !
|
|
mercredi 15 juin 2005 à 16:42:56 |
Re : Problème de redimensionnement tableau à 2 dimensions

fal91
|
Bah mon i est largement < à 50, j'ai mis 50 pour prévoir large. Je vais finalement opter pour la méthode de barbare alors  avec une seconde boucle juste pour compter les éléments. A ton avis, d'un point de vue optimisation, il te semblerait plus adapter de faire la 2nde boucle et d'avoir des tableaux pile à la bonne taille, ou bien de se trimballer d'énormes tableaux  Merci encore !
|
|
mercredi 15 juin 2005 à 16:59:50 |
Re : Problème de redimensionnement tableau à 2 dimensions

Nurgle
|
Réponse acceptée !
C'est mieux de se trimballer d'énormes tableaux !! 
La boucle en elle même n'a rien de spécial, mais c'est juste que tu
utilises ton objet recordset dedans, et c'est ça qui réduit vachement
les performances.
Si 50 est vraiment trop grand, essaye de faire une approximation plus
proche de la valeur que pourrait avoir i. Et bien sûr, si à un moment
tu fais ajouter des enregistrement à cette table, arrange toi pour
qu'il n'y ait jamais plus de 50 lignes, sinon : ERROR !! :p
 Nurgle C'est une grande folie que de vouloir être sage tout seul !
|
|
mercredi 15 juin 2005 à 17:03:27 |
Re : Problème de redimensionnement tableau à 2 dimensions

fal91
|
Oki merci beaucoup pour la précision ! Je retourne me prendre la tête  .
|
|
jeudi 16 juin 2005 à 10:36:17 |
Re : Problème de redimensionnement tableau à 2 dimensions

FPatrick
|
Bonjour à vous.
Pour le REDIM, il y une particularité; on ne peut pas redimensionner un tableau à plusieurs dimensions sur les dimensions inférieures. je m'explique :
DIM TOTO(0,0)
REDIM TOTO(10,2) OK REDIM TOTO(10,10) OK REDIM TOTO(11,10) ERREUR
On ne peut qu'augmenter la valeur supérieur d'un tableau.
Pour ton cas, j'inverserai les valeurs; je ferais batiment(2,i) dont i peut être redimensionnable (valeur suppérieur du tableau) REDIM batiment(2,10), REDIM batiment(2,17) ,REDIM batiment(2,24) tout ca ok
J'espère avoir été assez clair dans mes explications confuses.
Bonne journée
|
|
Cette discussion est classée dans : erreur, tableau, dimensions, batiment, objrecordset01
Répondre à ce message
Sujets en rapport avec ce message
ubound erreur 500 [ par lubel ]
Sujet : ubound Bonjour, alors que cette page marchais vendredi depuis plus rienJ'utilise les tableaux pour afficher mes résultats stockés en mémoire
erreur lors d'insertion d'objet Tableau dynamique [ par ]
Salut,après création d'un jeu d'enregistrement dans le DreamweaverMX, quant je veux insérer un Tableau dynamique le message d'erreur ci-dessous appar
Insertion d'un controle dans une page .aspx [ par berocca ]
Bonjour,Dans mon projet je n'ai pour le moment que des pages toutes simples, avec des labels, des liens hypertextes, et quelques images. J'arrive à na
Menu déroulant [ par Appolon ]
Bonjour, J'ai créé un tableau à 3 colonnes, Nom,Prénom, Statut Ce tableau est créé dynamiquement, Nom et Prénom c'est du texte et Statut un menu dérou
[ASP.net][C#] Erreur sur DataAdapter.Fill [ par otterc8 ]
Bonjour a tous! Voila mon probleme, j'ai du code généré par WebMatrix (je sais, je devrais passer a VS.net) que j'ai modifié pour l'adapté à MySQL (Od
Pb avec le composant ASPEXEC [ par cracozore ]
Bonjour à tous,J'ai un problème quand je fait apel au composant AspExec, j'obtiens ce message d'erreur :"Type d'erreur :Objet Server, ASP 0178 (0x8007
sans doute IIS [ par youcefe ]
salut les gars je ss debutant en programmation asp, g réalisé un site web dynamique avec asp et access. tt alé bien jusqu'au jour où g plus accès o si
page aspx inserer code vb ds 1 tableau [ par hmimoz ]
salut, g un petit souci j'ai une page .aspx dans laquelle j'ai un tableau et je voudrais inserer le resultat d'une requete de la page .aspx.vb dans c
liens a partir d'un tableau [ par ncode33 ]
bonjour,je voudrai savoir comment on pourrai faire pour faire un lien a partir d'un resultat d'une requete que j'affiche dans un tableau.C'est a dire
Erreur SendUsing [ par amorosalain ]
SAMJ'utilise l'objet SmtpMail pour envoyer des emails automatiquement. Sur mon PC en local, je n'ai aucun problème. Sur le serveur (chez l'hébergeur d
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|