Ttypes de données personnalisé

FloM73 -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Pour comptabiliser des données issues d'un gros fichier, j'ai créé un type perso et plusieurs tableaux (5) correspondants à ce type :

Type Tableau
Mois as integer
Quantite as integer
Temps as date
...
end type

dim DonneeSud(99) as Tableau
dim DonneeNord(99) as Tableau
...

Mon problème c'est que je ne sais pas comment faire pour passer ces tableaux en variable pour les initialiser et les remplir alors je tappe le même code 5 fois avec un test devant genre :
if secteur = Sud then donneeSud(i).Mois = i+1 ; donneeSud(i).Quantité =donneeSud(i).Quantité +1 ...
if secteur = Nord then donneeNord(i).Mois = i+1...

Ce qui est extrèmement fastidieux ! Si quelqu'un pouvait m'indiquer la syntaxe pour pouvoir appeler une fonction qui rempli le tableau appelé, genre :
RempliTableau (QuelTableau)

Sub RempliTableau (QuelTableau)
QuelTableau(i).Mois= i + 1
QuelTableau(i).Quantite = a + b...
end sub

Ce serait une grande aide.
FloM73 (grande débutante en Excel VBA).
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonsoir,

    tu peux le déclarer en tableau

    dim DonneeSud(99,4) as Tableau

    donnee(0,0).Mois = 2 sera la 1ère donnée mois du sud
    donnee(0,1).Mois = 5 sera la 1ère donnée mois du nord
    .....

    Ou bien dans ton type ajouter un champ secteur as string
    donnee(0).Secteur = "sud"
    .....

    eric
    0
    1. FlOM73
       
      Mille mercis.

      Je n'ai pas testé la deuxième solution (car je ne vois pas comment récupérer séparement les données de chaque secteur ensuite) mais la première méthode marche à merveille.

      Grace à vous mon programme a subit aujourd'hui un régime drastique et ce n'était pas du luxe.

      Il me reste un problème de format date mais ça c'est une autre question...

      Florence.
      0
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    tant mieux... :-)
    n'oublie pas demettre en réolu...
    Bonne continuation
    eric
    0
    1. FlOM73
       
      Je vais finir par avoir vraiment honte... on fait comment pour mettre résolu ?
      Florence.
      0
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    heuuu, ça doit etre en haut mais pas sûr que tu puisses si tu n'es pas inscrite
    eric
    0