Données à injecter par macro dans autre feuille

Aloha

XLDnaute Accro
Bonjour,

J'ai un projet qui me tient très à coeur, puisqu'il faciliterait de beaucoup la tâche de plusieurs personnes.

Il s'agit de la comptabilité de plusieurs Foyers pour femmes et plus spécialement de la gestion des échanges d'argent entre la responsable et les femmes: la responsable donne à la femme des montants fixes pour p.ex. l'alimentation, les produits de nettoyage, le frais de santé, l'habillement. En contrepartie la femme doit céder certains de ses revenus.
Ces calculs se font sur une feuille par famille (la femme et ses enfants qui l'accompagnent) et par mois.

Ce qui manque, c'est que ces chiffres puissent être injectés, en appuyant sur un bouton, dans une feuille appelée "Saisie", à partir de la première ligne vide.

J'ai construit une simulation.

J'ai 2 classeurs; l'un comprend les données source, c.-à-d. les décomptes avec les femmes; l'autre la comptabilité de la maison, avec e.a. le fichier Saisie.

Il s'agit de transférer les chiffres à comptabiliser, dans la feuille Saisie.

Pour mieux faire comprendre comment, j'ai collé un modèle du tableau de la feuille Saisie sous le décompte-exemple, et ai marqué en couleur les reports dans Saisie, que j'ai faits ici par formule (2 opérations-exemples).


Un problème pour lequel je ne vois pas la solution, est la gestion des décomptes individuels qui risquent de ne pas tenir dans un seul classeur (s'il y a tous les mois 8 femmes, cela fait 8*12=96 feuilles de décompte).

Le mieux serait de produire à chaque fois, par VBA, les feuilles depuis un modèle et la liste des femmes, et de les enregistrer ou bien dans un classeur par femme ou bien toutes les femmes dans un classeur par mois.

J'en arrête là pour l'instant.

Si quelqu'un d'entre vous voulait bien m'aider dans la réalisation de ce projet, je pourrai fournir tous les détails requis.

A préciser que j'arrive tout juste à comprendre un code VBA "facile", et éventuellement à l'adapter (p.ex. changer le no d'une colonne), mais que je ne sais absolument pas programmer (Excel 2003).

Merci d'avance à tous ceux qui voudront se donner la peine de réfléchir à ce projet.

Aloha
 

Pièces jointes

  • Comptabilité 2008.xls
    15.5 KB · Affichages: 98
  • Décompte femme.xls
    23.5 KB · Affichages: 158
  • Comptabilité 2008.xls
    15.5 KB · Affichages: 103
  • Comptabilité 2008.xls
    15.5 KB · Affichages: 100

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonjour Guick,

Un grand merci.

Je me mets à découvrir ta solution.

A plus tard

Aloha

D'ailleurs, en ce qui concerne la remarque que cela ne fonctionnait pas sur PC: je suis sur Mac aussi, mais le projet est destiné à tourner sur PC
 

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonjour Gruick,

Sur mon Mac ton code fonctionne à la merveille (avec le léger bémol concernant la vitesse d'exécution); j'ai transféré les fichiers sur PC et le code bloque à l'instruction suivante:

ActiveCell.Offset(0,3) = Workbooks(fichier).ActiveSheet.Cells(i,1)

Je suppose que cette instruction est la même sur PC que sur Mac!

As-tu une idée pourquoi Excel se bloque à ce niveau?

Merci

Bonne journée

Aloha
 

Gruick

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonsoir Aloha.
Ca ne vient pas de la différence des machines, puisque j'ai finalisé ce programme sur PC, et envoyé par le PC, plus rapide chez moi aussi.
Quel est le type d'erreur ?
Les classeurs sont-il dans le même dossier ? Le PC a tendance à les mettre où il veut quand il sauvegarde un fichier, dans "Mes documents" par exemple.
Comme tout marche bien chez moi, je ne peux qu'émettre des hypothèses.
A toi,
Gruick
 

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Salut Gruick,

Les fichiers sont dans le même claseur, et ils sont ouverts tous les 2.

D'ailleurs, je viens de ré-appuyer sur le bouton déclenchant la macro et maintenant le code s'arrête déjà avant:

Worksheets("Saisie").Cells(65536, 3).End(xlUp)(2).Select

Erreur d'exécution 1004
Message: La méthode Select de la classe Range a échoué

La seule chose que j'ai changé, c'est renommer le fichier Comptabilité 2008 en Compta EHES 2008; j'ai également changé le nom dans le code (2 fois)

Mais: j'y pense: la vraie feuille "Saisie" comporte en réalité 5000 lignes avec formatage et formules et dans la ligne 5001 un sous-total pour débit et crédit. Si des fois cela pourrait jouer un rôle!

Et le classeur comporte encore d'autres feuilles.
Donc encore un autre problème.

A +

Aloha
 
Dernière édition:

Gruick

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonjour Aloha, et Stapple dont le profil a changé...

Aloha, tu es fort, tu as trouvé un "select" dans un code où je n'en ai pas mis....

Es-tu certain d'utiliser mon second programme ?
(je viens de le re-télécharger pour vérifier, et il ne bloque pas)

Gruick, quelque peu contrarié...
 

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Salut Gruick,

Ne sois pas contrarié stp. Si j'ai éventuellement fait une erreur, ce n'est pas intentionnel mais dû à un défaut de manipulation ou de concentration ou de compréhension.

Après re-vérification il me semble que ce n'est en effet pas le bon code. J'ai pourtant vérifié, hier encore, si j'utilisais bien la bonne version parce que je suis bien conscient qu'il faut bien faire attention à cela.
Je me rappelle avoir regardé la date pour savoir si c'était le bon et avoir constaté que c'était deux fois la même.
Je ne sais pas alors ce que j'ai fabriqué.

En prenant le bon code j'ai tout de même un problème: le code se bloque à la ligne:

Workbooks("Comptabilité 2008.xls").Worksheets("Saisie").Cells(65536, 3).End(xlUp).Offset(0, 3) = Workbooks(fichier).ActiveSheet.Cells(i, 1)

Erreur d'exécution 9
L'indice n'appartient pas à la sélection.

Désolé

Il est dommage que la taille des fichiers qu'on peut joindre est si restreinte, autrement j'aurais pu poster les fichiers réels anonymisés.

A plus tard

Aloha
 

Gruick

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Re,
Tu devrais bazarder tout, et télécharger les deux derniers fichiers que je t'ai envoyés.
Comme j'ai ajouté des noms, ça doit venir de là.
Je t'envoies un message personnel avec mon adresse e-mail si tu veux me joindre les "vrais" fichiers.
A plus,
Gruick
 

Gruick

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Guten Tag Herr Aloha,

Il y a des incompatibilités entre le nom des mois, qui sont des mots (String) dans la feuille des recettes, et celui qui est mis dans les fiches individuelles qui sont des nombres.
Il faudrait s'arranger pour avoir la même chose dans les deux documents, de l'un dépend l'autre.
J'ai également nommé certaines cellules stratégiques dans la feuille recettes qui doivent piloter ma macro. Je ne les ai pas vues dans le document que tu m'as posté. Pourquoi des noms ? Pour que ce soit indépendant de la transformation du document en cas de rajout d'une ligne ou autre.

Qu'est devenu le concepteur des macros ? Je ne vois pas ce qu'elles font, je n'ose pas les activer, mes notions d'allemand sont trop lointaines.
Je crains que si je change un truc, ça chamboule tout !

J'ai déjà suggéré de faire une fiche individuelle de 12 feuilles (une par mois), le nom une fois sauvé serait donc le nom de la femme et l'année, et les feuilles le nom des mois. (Dans un premier temps)

Tu vois, c'est pas du tout cuit.

Auf .. euh au revoir, tiens moi au courant de tes décisions.
 
Dernière édition:

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonjour Gruick, Je vais analyser et arranger l'histoire avec les noms et les mois.

En ce qui concerne les macros déjà présentes, elles ne sont pas utilisées parce que cela n'a pas fonctionné. Ton allemand est parfait (en tout cas les 3 mots que tu as écrits!). Cependant je ne comprends pas trop pourquoi la présence de mots allemands t'intrigue, parce qu'il ne peut s'agir que des commentaires. Mais au besoin je peux les traduire.

Une fiche annuelle par personne, c'est une bonne idée, avec une restriction: il se peut qu'une personne ne soit présente que pendant un seul mois, et de toute façon le but du centre est de les aider à être à même de le quitter le plus tôt possible.

Mais comment conçois-tu cela? D'office un fichier avec 12 feuilles pour chaque femme ou bien ajouter la feuille de chaque mois dans le fichier de la femme?

Bonne journée

Aloha
 

Gruick

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Salut Aloha,
Dans les macros "allemandes", je ne comprends que "Monat", natürlich, aber "Schalter", "Zähler", nicht verstehend !
Ce sont des variables du programme.
Peu m'en chaut me dis-tu. Simplement, j'ai peur de détruire un truc.

En ce qui concerne les fiches individuelles, je pense que ce sera plus facile et plus économe en mémoire d'avoir une fiche nominative, avec le(s) mois en feuille. Le mois sera créé automatiquement après remplissage donc pas de fiche vide. 3 ou 4 instructions suffisent. (j'ai testé)
Pour une création, on prendra la fiche prototype, et pour un complément mensuel, la fiche nominative, et comme ça on évite les erreurs de copie.

A plus,
Gruick
 

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Salut Gruick,

Schalter = bouton, disjoncteur
Zähler = Compteur

Je n'ai pas encore eu le temps pour regarder après les noms. Je le ferai tout à l'heure.
Maintenant je ne plus résister plus longtemps pour faire du vélo avec ma petite fille.

Bonne après-midi

Aloha
 

Aloha

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonjour,

Ce message juste pour préciser que je n'ai pas encore eu le temps de m'en occuper et que, si je tarde à donner de mes nouvelles, ce n'est absolument pas parce que j'aurais abandonné le projet.

A+

Aloha
 

Gruick

XLDnaute Accro
Re : Données à injecter par macro dans autre feuille

Bonjour Aloha,
Le succès du forum a repoussé ce sujet en page 4 en quelques jours.
Etant moins disponible qu'avant, j'ai profité d'un instant pour finaliser mon idée, et t'envoyer le résultat hors forum (trop gros).
Je mets à disposition la macro sur le forum, pour les amateurs.
Deux idées toutes bêtes :
- Sauvegarder un document d'après le contenu d'une cellule,
- Ajouter une feuille selon le contenu d'une (ou plus ici) cellule.
Bon, comme c'est l'été, je vais me balader....
A plus,
Gruick
 

Pièces jointes

  • Modèle décompte réel.xls.zip
    16.8 KB · Affichages: 26

Discussions similaires

Réponses
8
Affichages
147

Statistiques des forums

Discussions
312 172
Messages
2 085 932
Membres
103 050
dernier inscrit
HAMZA BKA