MACRO - Importer des données

a_loic

XLDnaute Junior
Bonjour à tous,

Je viens demander une aide sur la création d'une macro afin de faciliter le travail qui est fait actuellement quotidiennement manuellement.

Je reconnais que je n'ai aucune idée de comment faire car mes connaissances en macro sont bien trop faibles :(

Je vais essayé de vous expliquer ce dont j'ai besoin :

Il y a deux fichiers : Mon récapitulatif mensuel et mes extractions quotidiennes (issues d'un logiciel spécifique)
Mon but : intégrer les données de mes extractions dans mon récapitulatif mensuel.

- Les extractions quotidiennes ressemblent à cela :


Je dois récupérer le n° de client (colonne A), la date (cellule B1) et le montant de la différence globale (ici la cellule I5 >>> en fait il s'agit de la première ligne du n° du client et la colonne I).
Il y a, bien evidemment, d'autres n° de clients à suivre...


- Mon récapitulatif ressemble à ça :


Pour reprendre l'exemple, il doit apparaitre en A8 le client "11" et en L8 la valeur "0"
Concrètement il faut, d'après la date, inclure dans la colonne correspondante la valeur de la différence.

Je bloque également pour éviter les doublons.
Par exemple, si le client "11" a déjà été présent sur la journée du 9, il faut ajouter la différence du 10 à la colonne du 10 sans créer de nouvellle ligne... (je suis clair là ? :))



Pouvez vous m'aider ?
Je vous joins des fichiers si ca peut être plus parlant :)


Un énrme merci par avance !!!

Bonne soirée,
Loïc
 

Pièces jointes

  • 03.01.17.xlsx
    14.7 KB · Affichages: 34
  • 10.01.17.xlsx
    12.7 KB · Affichages: 40
  • Suivi Diff.xlsm
    117.9 KB · Affichages: 31

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour a_loic,

Je n'ai pas tout compris:

Dans les fichiers 'extraction quotidienne', il y a plusieurs lignes avec le même client. Par ailleurs vous écrivez
en fait il s'agit de la première ligne du n° du client et la colonne I).
Il y a, bien evidemment, d'autres n° de clients à suivre...

Comment interpréter?:
  • du fichier 'extraction quotidienne', on ne prend en compte que la première apparition d'un client
  • du fichier 'extraction quotidienne', on prend en compte toutes les lignes relatives à un client
  • encore autre chose


Dans le fichier 'Suivi Diff', vous semblez n'avoir qu'un seul mois. Comment faites vous pour les autres mois (autre fichier ou autre onglet ou autre encore chose ) ?
 
Dernière édition:

a_loic

XLDnaute Junior
Bonjour,

Avant tout, merci pour votre réponse :)

En fait il ne faut prendre en compte que la première ligne de chaque client (celle qui n'a aucune zone géographique)

Et oui, nous utilisons un document "vierge" mensuellement.


Merci encore pour votre aide,

Très bonne journée,

Loïc
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re, salutsousou ;)

Les courses du matin étant achevées,

Ce que fait le programme:
  • demande à l'utilisateur d'ouvrir un fichier d'extraction quotidienne
  • efface la colonne correspondant au jour d'extraction dans le fichier Suivi Diff
  • remplit la colonne correspondant au jour et au client du fichier Suivi Diff avec la valeur de la colonne J (différence) du fichier d'extraction quotidienne pour le même client
  • si un client du fichier extraction n'existe pas dans le fichier Suivi Diff alors il y est rajouté

nota:
  • suppression des cellules fusionnées dans le fichier Suivi Diff
  • puis suppression de la colonne vide B du fichier Suivi Diff
  • ajout d'une MFC sur la colonne AH du fichier Suivi Diff
 

Pièces jointes

  • a_loic- Suivi Diff- v1.xlsm
    128 KB · Affichages: 34

a_loic

XLDnaute Junior
Re,

Vraiment désolé pour le temps de réponse mais j'ai fait quelques tests avant de revenir vers vous deux.

Tout est parfait :)

J'ai même essayé de relancer une journée avec une seconde feuille qui inclut des modifications et tout est ok.


J'ai une dernière question qui n'est pas obligatoire du tout et qui, peut être, et déjà prise en compte par la macro, mais je n'ai pas de fichier d'exemple avec moi pour tester.

Si mon extraction comprend plusieurs journées, la macro peut elle traiter le document?


Un immense merci pour le travail accompli !

Excellente soirée,

Loic
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,
(...) Si mon extraction comprend plusieurs journées, la macro peut elle traiter le document? (...)

Je m'en doutais un peu :rolleyes:

Ma macro a pris en compte le fait qu'un fichier extraction est relatif à une journée et une seule (comme précisé dans l'énoncé).
  • dans le fichier Suivi Diff, on commence par effacer toute la colonne relative à la journée d'extraction (cellule B1 du fichier extraction)
  • puis on lit le fichier extraction, pour mettre les données de ce fichier dans la colonne précédemment effacée
Il est possible d'adapter ma macro à votre demande à condition:
  • d'indiquer quelque part dans le fichier SuiviDiff le mois qu'on suit (pour n'y placer que données relative au mois suivi au cas où le fichier extraction serait à cheval sur deux mois). La remarque entre parenthèses est d'ailleurs aussi valable pour la macro actuelle. Si vous traiter un fichier du mois suivant ou précédent que celui suivi, la macro incorpore les données sans autre forme de procès
  • d'être certain que chaque journée présente dans le fichier extraction est entièrement comprise dans le fichier (autrement dit, une journée de données est entièrement comprise dans un seul fichier extraction - ce qui devrait être le cas si vous ne traitez que des journées antérieures à la date du jour)
  • de se rappeler que le dernier fichier traité aura effacé toute les colonnes relatives aux jours présents dans le fichier extraction avant d'y replacer les valeurs du fichier extraction courant
Je vais vous proposer une autre version.
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour a_loic, sousou,

Voici la version v2 qui permet des fichiers 'extraction' comprenant plusieurs journées différentes.

il faut respecter les conditions suivantes:

  • saisir une date pour le mois suivi dans la cellule R2 (cellules fusionnées R2 à Z2)
  • une journée d'extraction doit être complètement contenue dans un seul fichier extraction. En effet, dès qu'une journée d'extraction est dans le mois de référence, la colonne de ce jour est d'abord vidée des données existantes avant de traiter le fichier extraction.

Le code se trouve dans trois modules:

  • module1 -> code principal
  • module de code de la feuille 'Feuil1' -> code pour traiter le changement de date de référence
  • module de code de 'ThisWorkbook' -> code pour sauvegarder le mois de référence à l'ouverture du fichier

On a aussi ajouté:

  • la possibilité de refermer le fichier 'extraction' en cas de succès du traitement
  • la possibilité de trier le suivi par client

Le fichier extraction joint comprend des données pour les journées du 27 déc 2016, 3 janv 2017, 6 janv 2017, 10 janv 2017 et 2 fév 2017. On pourra donc tester au moins les mois de référence déc 2016, janv 2017 et fév 2017.

Ne plus utiliser la version V1.







 

Pièces jointes

  • a_loic- Suivi Diff- v2.xlsm
    144.5 KB · Affichages: 41
  • du 27 déc 2016 au 02 fév 2017.xlsx
    22.2 KB · Affichages: 34

a_loic

XLDnaute Junior
Bonjour à tous,

Je viens de nouveau demander une petite fonctionnalité sur le tableau créé par l'incroyable @mapomme :)

Je souhaite savoir s'il est possible, lors de l'importation qu'en cas de différence supérieure à 0, un commentaire s'ajoute avec le détail des régions.

Par exemple :

J'ai une différence de 15€
En commentaire je trouve :
"Ouest : 5€
Est : -10€
Nord : 0€
Sud : 20€"


Est ce techniquement possible ?

Ca me dépasse, je l'avoue :)


Un grand merci encore et un autre encore plus grand par avance ;)

Excellente journée,
Loïc
 

ChTi160

XLDnaute Barbatruc
Bonsoir a_loic
Bonsoir le fil 'mapomme" ,Le Forum
je sais pas si j'ai compris , en regardant le très beau travail de mapomme.
j'ai constaté que seule la première ligne rencontrée est prise en compte .
exemple : 25212 Le 03/01 ,alors que 6 lignes concernent cette Date , seule la première est prise en compte soit "-4,01".
Pourquoi alors faire la liste des différences ?
Très beau travail !
Merci par avance
Bonne fin de Soirée
Amicalement
Jean marie
 

a_loic

XLDnaute Junior
Bonsoir,

Merci pour ta réponse :)
Je reconnais que le travail de mapomme est excellent ! Encore merci à lui !

En fait, lorsqu'il y a une différence, je dois regarder quelle région à une erreur.
Donc actuellement, je garde le doc ouvert et je navigue entre les deux pour vérifier.

Si cela s'ajoute en commentaire, c'est un gain de temps considérable.
D'où ma demande :)
Ce qui doit se mettre en commentaire c'est les lignes suivantes.
La première se met toujours dans le tableau comme actuellement et toutes celles dessous qui correspondent à ce client sur cette journée s'ajoutent en commentaire.


Merci encore pour l'aide,

Bonne soirée
Loïc

EDIT : j'ai ajouté en pièce jointe le document qui présente le résultat souhaité :)
 

Pièces jointes

  • 03.01.17.xlsx
    14.7 KB · Affichages: 31
  • Suivi Diff v3.xlsm
    144.9 KB · Affichages: 28
Dernière édition:

Discussions similaires

Réponses
4
Affichages
304
Réponses
3
Affichages
289

Statistiques des forums

Discussions
312 103
Messages
2 085 316
Membres
102 860
dernier inscrit
fredo67