Données importées

HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
Me voici bien embêtée ... Je dois faire un fichier Excel reprenant les données d'un import et suis bien trop novice en VB pour y arriver ...
Mon import se présente en txt brut. Je dois supprimer la colonne A et toutes les lignes vides afin d'obtenir les données à utiliser. Jusque là, j'ai trouvé (d'ailleurs dans mon fichier joint vous verrez qu'il n'y a plus de colonne A vide ni de ligne vide)
Une fois les données « brutes » les choses se présentent comme suit :
- Onglet « Page de garde » : Mon formulaire
- Onglet « Import » : mes données brutes
- Onglet « Statistiques » : le résultat final souhaité
- Onglet « Données statiques » : Correspondances entre les codes importés et les codes souhaités, entre les codes et intitulés, etc.
Je vous ai mis mon fichier en PJ
http://www.cjoint.com/c/EIvkyaKzXJJ
pour que ce soit plus clair car c'est bien compliqué à expliquer sans exemple visuel.
Histoire de compliquer le tout, je dois récupérer les données importées et les mettre dans la colonne correspondant au mois indiqué dans le formulaire de la page de garde.
Je dois donc :
Récupérer les données pour chacun des adhérents dont le numéro est en colonne (devenue) A de l'onglet « Import » et insérer dans mon 1er tableau (correspondant au 1er adhérent) les données de cet adhérent.
Sachant qu'en colonne B de l'onglet « Import » j'ai un code action (exemple : WX) qui correspond à un code filière dans l'onglet « Statistiques ». La correspondance entre les deux est indiquée dans un tableau sur le dernier onglet (exemple : WX correspond à TR) ...
Au « couple » adhérent + code j'indique le chiffre trouvé en colonne C de l'onglet « Import » dans la case correspondante (adhérent + code correspondant + mois indiqué) de l'onglet « Statistiques » puis le chiffre de la colonne D « Import » dans la case d'en dessous.....

Sur mon fichier c'est plus clair.... J'ai mis des codes couleurs.

2 réponses

Kuartz Messages postés 852 Date d'inscription   Statut Membre Dernière intervention   61
 
Bonjour,

Je n'ai pas tout compris... Pardon... En fait, il faut juste que le premier adhérent soit mis dans la page de garde?
0
HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Kuartz,
Non il faut parcourir toutes les lignes importées pour remplir le tableau des statistiques.
A un même adhérent correspond plusieurs lignes importées (pas forcément le même).
Il y a deux hics:
- A un adhérent correspond plusieurs codes filières et ce ne sont pas les mêmes d'une feuille à l'autre (code filière dans la 1ere, code domaine dans la 2nde => tableau des correspondances dans une 3 ème feuille ...)
- Les données importées sont sur une même ligne alors qu'elles doivent figurer sur 2 lignes dans mon tableau des statistiques.
0
HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention  
 
Et sur la page de garde il y a le mois que l'on souhaite obtenir (donc il faut aller dans le tableau des Statistiques mettre les chiffres dans les cases correspondantes au mois sélectionné) et le bouton qui lance la macro
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour a vous deux,

HellM:

Vous connaissez un peu le VBA ou vraiment pas du tout????

Principe du travail faire:
Une fois l'import effectue, il faut remplacer les codes importes par les codes equivalents dans l'onglet import. Ensuite, pour chaque code, chercher, dans l'onglet import, chaque ligne ou il y a ce code pour trouver le code adherent et les infos a copier. A chaque lignes trouvee, faire une recherche dans l'onglet Statistiques avec le couple code+adherent (ca fait moins de recherche) et ecrire NOMBRE DE MOUVEMENTS sur le meme ligne et NOMBRE D"ANNULATIONS sur la ligne du dessous, sous-entendu dans les bonnes cellules
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

Tout a fait Thierry, mais pouvez vous repondre a

f894009 - 21 sept. 2015 à 16:10

merci
0
HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Je peux en effet répondre mais je n'ai pas accès à Internet tout le temps et vous imaginez bien que si je pose toutes ces questions c'est que Non je ne connais pas VBA si ce n'est copier un fichier, ajouter un onglet, supprimer une colonne, renommer fichier et onglet et d'autres petites choses comme ça ... D'où ma demande d'aide ... :)
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

fichier modifie pour l'onglet Statistiques: https://www.cjoint.com/c/EIyqhEo3qof

Bouton bleu pour traitement de l'import

Faut-il faire pour l'onglet Donnees Statiques (bouton rouge)
0
HellM
 
Bonjour f894009,
Désolée de cette réponse très tardive, je n'avais plus accès à mon ordi. Je ne peux pas ouvrir depuis mon boulot les fichiers déposés sur cjoint mais le ferai ce soir depuis chez moi.
En tout cas un immense merci pour le temps passé sur mon problème!!!
HellM
0
HellM
 
Re-bonjour
La politique de l'entreprise a du changer car j'ai bien accès aux fichiers sur cjoint! Tant mieux. Tout fonctionne parfaitement, encore un très très grand merci! je vais maintenant m'atteler à comprendre le code :)
Très bonne journée
0
HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour f894009,
Me revoici ...
J'ai intégré ton code dans mon fichier, ai ajouté une ou deux macro et ai fait quelques tests sur un nombre restreint d'adhérents = Tout est ok
Ce matin j'ai vérifié en réel le fonctionnement et j'ai l'erreur suivante: Erreur d'execution "6", dépassement de capacité.
J'ai essayé de voir où était définie cette capacité et comment la changer mais je ne trouve pas...
Dans le fichier que j'avais mis sur Cjoint il y avait 4 adhérents je crois, là j'en ai 20 et il semblerait que de nouveaux adhérents soient à ajouter d'ici peu...
Une idée stp?
PI: lorsque je lance le débogueur j'ai la ligne NbMove = IIf(IsNumeric(Plage(x,2)), Plage(x,2),0):.... qui est surlignée (fonction Traitement_Données_Zones(Plage As Range)
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Dans
Sub Traitement_Donnees_Zones(Plage As Range)

remplacez
Dim NbMove As Integer, NbCancel As Integer

par
Dim NbMove As Long, NbCancel As Long
0
HellM Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Re,
J'ai une incompatibilité de type (même fonction mais ligne ValCherch = CInt(Plage(1,0))
J'ai regardé sur le forum et les cours sur Internet mais j'ai du mal à comprendre CInt...
Désolée de toutes ses demandes ...
0