cs_Groov
Messages postés2Date d'inscriptionjeudi 5 février 2004StatutMembreDernière intervention28 août 2006
-
26 août 2006 à 09:29
cs_Groov
Messages postés2Date d'inscriptionjeudi 5 février 2004StatutMembreDernière intervention28 août 2006
-
28 août 2006 à 09:09
Bonjour,
Je dois faire un truc "très simple"... : Je dois générer une liste à partir d'un fichier principal et de deux feuilles de "paramétres" (EXCEL)
J'ai 3 feuilles (donc deux tableaux)
- 1ère : tableau à 2 colonnes (dont "Nom adhérent" et "Date de naissance") et x lignes
- 2ème : tableau à 5 colonnes (dont "Nom adhérent", "2006"; "2005" ; "2004"; "2003")
- 3ème : tableau à 2 colonnes (dont "Année d'adhésion", "Montant quotisation")
- 4ème fichier d'exportation des données consolidées ("Nom adhérent" et "Date de naissance" "Année d'adhésion"; "Cotisation versée") l'idée est donc de générer autant de lignes contenant le nom de chaque adhérent par année de quotisation en important les sommes versées.
Exemple : Fichier 1 : Nom Date de naissance (fichier d'entré) TOTO 12/04/1956
TITI 25/06/1972
Fichier 2 : Nom Année 1 Année 2 Année 3 Année 4 (fichier source 1)
TOTO 2003 2004 2005 2006
TITI 2004 2005
Fichier 4 : Nom Année Cotisation versée (fichier destination) TOTO 2003 15?
TOTO 2004 16?
TOTO 2005 16?
TOTO 2006 19?
TITI 2004 16?
TITI 2004 16?
Je sais faire celà avec un algo basique qui
- Feuille 1 : pointe sur la première ligne "Nom" (ici TOTO) (boucle A)
- Feuille 2 : va chercher la valeur "Nom" (ici TOTO)
- Feuille 2 : lit la valeur de la "1ère année de cootisation" attachée au nom en question (ici 2003) (Boucle B)
- Feuille 3 : va chercher la valeur "1ère année de cootisation" (ici 2003)
- Feuille 3 : lit la valeur du montant de la cotisation correspondante (ici 15?)
- Feuille 4 exporte toutes les données sur une ligne
>Fini la boucle B
>Fini la boucle A
Bref... basique mais efficace...
Existe-t-il une manière plus sioux de faire ça ?
Merci d'avance pour vos lumières !!!
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 28 août 2006 à 09:01
Salut,
Déja ce que tu peux faire c'est avec une boucle (faite avant tout le traitement), Remplir un objet de Type collection Ce qui te permettra d'indexer le montant des cotisations en fonction de l'année (ObjCol.Add(Montant, "Année"))
De cette facon plus besoin d'aller une seul fois chercher les montant de coteisation sur la feuille 3 puis que tu les auras directement avec Montant = ObjCol.Item("2003") par exemple.