Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

ronan1108

XLDnaute Nouveau
Bonjour,

je souhaiterais intégrer des écritures de comptabilité automatiquement.

dans un fichier A, j'ai beaucoup de données.
je voudrais recopier certaines celulles et créer un nouveau fichier avec uniquement les colonnes qui m'intéresse.


le fichier B devrait s'inspirer d'un modèle de tableau à 8 colonnes.
je pensais enregistrer dans un fichier C mon modèle de tableau pour que quand le fichier B se crée, il s'inspire du nouveau

est-ce possible ?

cordialement
 

gosselien

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Bonjour,

tout est possible ou presque mais avec un fichier exemple CLAIR :)

P.
 

camarchepas

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Bonjour Ronan,

@ Bonjour Gosselien , une affinité pour les même sujets j'ai l'impression , c'est plutot sympa ...

Bienvenue sur XLd ,

Oui , c'est surement possible , surement avec du vba ,

Il faudrait un exemple avec des données non confidentielles ou maquillées de ton 1er classeur,

Quelle sont les colonnes à retenir ?

Pour le fichier C , il ne serait là que pour contenir la macro de ''Transfert'' des données

Quel est ta connaissance en VBA ,

Sur les variables ,les fichiers , les boucles, et le transfert de données ?
 

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

bonjour,

je vais expliquer ce que je souhaite faire pour être plus clair.
je travaille dans la grande distribution et je souhaite intégrer mes écritures de caisse par excel pour gagner du temps.
sur le fichier A, on saisit tous les jours nos caisses (1 journée par onglet).
donc je souhaite créer un bouton par journée qui me créerait le fichier B.
sachant que pour intégrer mes écritures, le fichier a intégrer doit "suivre la trame" qui est dans le fichier C (le tableau).

j'espère que c'est plus clair

je vous joins les deux fichiers A ET C.
le C me servirait de modèle pour la création du B.

Malheureusement, je maîtrise pas du tout le vba, je viens de découvrir le forum, et je lis ce qui parle de la vba.
 

Fichiers joints

camarchepas

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Re ,

Dans le fichier de synthése , je ne vois pas de colonne pour le numéro de caisse , car si j'ai bien compris 1 ligne synthése correspond à 1 caisse ?
 

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Re,

dans le fichier C, le numéro de caisse n'a pas besoin d'apparaître.
dans la colonne, DATE, il faudra recopier la date de la journée présente sur l'onglet.
dans le fichier A, j'ai mis en rouge ce qui devra être recopié mais j'ai oublié de mettre la date présente en haut du fichier qui devra être recopié dans le nouveau fichier.

je réponds à ta question ?

est-ce qu'il y a un tuto sur la vba sur le forum ?
 

camarchepas

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Regardes dans l'onglet Accueil de ce site .

Mais, y'a pas de baguette magique , il faut prendre le temps ,

Si tu veux faire pour demain , reviens dans un an .

Bon dans un premier temps tu peux faire un tableau nous permettant de localiser les infos dans le fichiers A et à quel endroit on doit les mettre dans le fichier C .

Repéres les cellules A12 ou C15 par exemple :

et une lettre minuscule pour le fichier :

a.1.d38 =>c.feuil1.B2

cela pour chaque infos désirée, fais le modéle uniquement pour la caisse 1 ,

ensuite c'est une boucle qui se chargera du changement d'onglet pour le fichier a et le changement de ligne pour le fichier c.

Bon courage
 

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

OK, je regarderais, merci pour le coup de main.
je vais commencer par revoir le fichier de base pour le simplifier et je ferais le tableau de correspondance.
il s'agit de mon fichier de caisse station et j'ai également celui du magasin qui est beaucoup plus grand.
je vais essayer de faire ça avant la fin de la semaine.

bonne journée
 

camarchepas

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Ok Ronan,

C'est sage en effet comme décision , Excel est magique mais ne fait pas tout , donc , plus les données seront propres et bien rangées , plus la synthèse sera facile à faire.

Juste pour te mettre le doigt dans VBA,

évites le select qui certe au début est trés démonstratif , devient vite trés lourd .

Voici un exemple de code de transfert de données :

L'on transfert la valeur de la cellule A5 de la feuille 2 du classeur a vers la cellule A1 de la feuille "Synthèse" du classeur C

Workbooks("C").worksheets("Synthèse").range("A1") = Workbooks("A").worksheets("Feuil2").range("A5").value

Voilà , ensuite , y'a plus qu'a l'insérer dans une boucle et de paramètrer un peu et presque tout est fait

A bientôt
 

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

bonjour,

on a changé un peu le fichier A.
je vous joins les deux fichiers et le tableau de correspondance.
par contre, le fichier qui sera créé devra avoir le format csv et pas xls. est-ce toujours possible ?

j'ai également un autre soucis, le fichier A pourra il être renommé ?
car tous les mois, on prend le modèle de base, on le copie et on le renomme (un fichier par mois qu'on conserve sur notre réseau).

de plus, le fichier créé, pourra-t-il est créé sur le bureau ou dans un dossier particulier ?

bonne journée
 

Fichiers joints

camarchepas

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Bonjour ,

voici une premiere version,

cela permettra déjà de valider le transfert des données .

Donc , il faut mettre les 3 fichiers dans le même dossier .

Eventuellement changer le nom des fichier accessible depuis les cellule A2 , b2 dans le fichier Tableau de correspondance

un appui bouton et toc , un nouveau fichier sera créé et sauvegardé pour le moment un xls.

Pour ce qui est du csv , quel séparatif " ," ou ";" ou autre as tu besoin ?
 

Fichiers joints

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

bonjour,
il faut le séparateur point virgule.
c'est encore plus pratique que je pensais car j'imaginais que le bouton serait sur la journée de caisse mais sur le fichier de correspondance, c'est encore mieux car ils sont tous créés d'un coup.

Je viens de penser que je peux créer mes fichiers csv par journée nommée 01.csv 02.csv 03.csv etc
Est-il possible que au lieu de créer un fichier avec toutes les journées sur plusieurs feuilles du même fichier, quand je clic sur le bouton import résultat, la journée 1 se copie sur le fichier 01.csv, la journée 2 se copie sur le fichier 02.csv, etc

Pour l'intégration automatique, il faut une seule feuille sur le fichier. je viens de le découvrir en faisant le test (j'ignorais ce problème).

un grand merci à toi en tout cas pour le travail déjà accompli. je vais gagner énormément de temps.

bonne journée
 

Fichiers joints

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Bonjour,

je viens de le tester et cela fonctionne !!!
un grand merci à toi,

j'ai la même problématique pour les caisses du magasin, je vais faire le tableau de correspondance, et le fichier de base.

j'ai une question, est-ce que je peux changer un compte dans le fichier c ? selon le mois, le numéro 412102 en c1 varie (412103 , 412104, etc) ce n'est pas très gênant car je peux intégrer comme ca et faire le changement dans la compta.
mais je voulais savoir si je peux faire le changement en début de mois quand j'intègre un nouveau mois.

un grand merci à toi, je vais gagner énormément de temps.
 
Dernière édition:

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Voici les éléments pour mes caisses magasin
est-il possible d'appeller les fichiers créés 001.csv 002.csv etc pour les différencier de ceux de la station (01.csv 02.csv etc)?

bonne journée
 

Fichiers joints

Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

Bonsoir ,

j'ai conservé le même classeur tableau correspondances .

Il y à maintenant un onglet Station et un Magasin .

Le code était le même .

J'ai juste revu la sauvegarde et les nom des variables.

Voilà

A oui pour la substitution , je pensais mettre 2 cellules en dessous le bouton , Ancienne valeur et nouvelle valeur

Qu'en penses -tu
 

Fichiers joints

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

bonjour,

je viens de faire le test, ça ne fonctionnait pas car j'avais inversé dans la tableau de correspondance, les cellule a recopier du fichier d était dans la colonne modèle magasin et inversement.
pour les fichiers, c'est nikel, je pourrais pas faire d'inversion.

je comprends ta question pour la substitution...
on parle bien de modifier le numéro d'un compte dans le fichier c ou dans le fichier d ?

si c'est ça, j'ai pas besoin de garder l'historique du précédent, je veux juste savoir si je peux le modifier, enregistrer et sauvegarder.

un grand merci à toi, car ça fonctionne, et j'aurais jamais réussi à faire ça tout seul ^^

on m'avait parlé de ce forum en bien, et je confirme, c'est vraiment énorme ce que vous arrivez à faire.
 

ronan1108

XLDnaute Nouveau
Re : Macro- Recopier certaines données d'une feuille en créant une nouvelle feuille

bonjour,

oui il faut la même chose pour le magasin. ça marche très bien, encore merci car c'est plus rapide que ce que je croyais. tous les fichiers se font en une seule fois, alors que je pensais que je devrais lancer la création pour chaque journée manuellement.
 

Discussions similaires


Haut Bas