Macro-Boucle-Variable

Bonjour à tous !

Je viens demander votre aide sur des créations des macros sous Excel.

J’ai une base de données alphabétique (dans la feuille 1) de 3’000 personnes qui sont reparties sous 30 départements (feuille 2).

Je dois imprimer les données personnelles de la feuille 1, personne par personne, en les triant par département, dans un formulaire spécial (Feuille 3).

Merci d'avance de votre aide.

Bonjour Bonvin, bonjour le forum,

Peut-être clair pour toi mais moi, je n'ai rien compris. Un fichier exemple serait, comme toi, le bienvenu...

Voici mon tableau.

Il y a une base de données (BD). Je l’ai simplifié peut-être un peu trop, et les autres fichiers aussi. En réalité ils sont presque 3'000 personnes sur 29 département.

Premier pas dans la macro : il faut trier cette BD par département (dernier colonne de BD), les afficher sur « Total par département » et l’imprimer.

Deuxième pas : selon ce total, imprimer la déclaration personnelle, personne par personne ou tous à la fois, si possible.

Merci.

9classeur1.xlsx (12.86 Ko)

Bonsoir Bonvin, bonsoir le forum,

Toi tu es comme le... À consommer avec modération !...

Comment veux-tu que l'on devine, dans la base de données, ce que sont les :

  • Nº de contribuable
  • Nom et Prénom (ça encore j'ai une vague idée...)
  • Code déclaration
  • Date de naissance

Si tu ne fournis pas des explications claires et on ne peut pas t'aider !... Fais un effort.

Bonjour à tous.

Désolé, mais ça je pourrais corriger après.

J'ai déjà créé la macro pour la première personne.

Mais, je n'arrive pas faire la boucle.

Nom et prénom plus date de naissance sera assez.

C'est au milieu du tableau.

Le reste, je me débrouille.

Important, c'est la boucle.

Merci.

Re,

Désolé mais si je ne comprends pas moi-même, je ne peux pas aider. Tu dis que tu as déjà créé la macro mais tu ne daignes même pas la fournir... Marre des gens qui ont besoin d'aide mais sont incapables d'expliquer ce qu'il veulent. Je passe la main.

Bonsoir ThauTheme, bonsoir à tous,

Ne vous fâchez pas, j’ai expliqué comme je pouvais.

Voici mes macros, mais elles sont fausses.

Ce n’est pas ça que j’ai besoin.

Je n’arrive pas faire la boucle pour reprendre la personne suivante.

Donc, j’ai tout effacé. While…

Et en plus, quand j’ai copie le fichier, les macros disparaissent. Je comprend pas.

Bref…

Avec le bouton 1 j’aimerais imprimer la liste des employés de la base de données qui appartiennent à un des départements (Colonne N de la base de données).

Et après, selon cette liste, avec le bouton 2 imprimer la déclaration personnelle des employés figurant sur cette liste.

Est-ce que c’est faisable ?

Mais, ça c’est mon idée à moi.

Si vous pouvez proposer une autre solution, elle est toujours la bienvenue.

Essentiel de pouvoir imprimer les déclarations.

Parce qu’il y a 3'000 déclarations à imprimer, au total.

Et je suis seulement stagiaire dedans.

J’espère avoir bien explique maintenant.

Merci d’avance de votre aide.

Et pardonnez-moi si je vous ai offensé sans faire exprès.

6classeur1.xlsx (19.77 Ko)

Pardon, j’ai finalement réussi de copier les macros.

10classeur1.xlsm (28.42 Ko)

Bonsoir Bonvin, bonsoir le forum,

En pièce jointe ton fichier modifié. Le Bouton1 ne ne trouve plus dans l'onglet Total par département, qui maintenant sert de modèle, mais dans l'onglet Base-donnèes.

En cliquant sur ce bouton, autant d'onglets qu'il y a de département sont créés automatiquement après l'onglet Déclaration. Ils portent comme nom "Dept_" et le numéro du département (Dept_458 pour Genève, Dept_956 pour Van Chien et Dept_265 pour Evian). Les données correspondant à chaque département sont dispatchées dans leur onglet respectif.

Une question : où se trouvent dans la base de donnée le Code de déclaration et le Numéro mentionnés dans le tableau de l'onglet Total par département ? Sont-ils remplis manuellement ?

Pour le Bouton2, désolé mais je n'ai pas bien compris ce que tu voulais faire... Je pense que tu veux renvoyer dans l'onglet Déclaration chaque contribuable, finir de remplir sa déclaration manuellement, imprimer, passer au contribuable suivant. C'est ça ?

Une dernière fois, essaie d'être clair dans tes explications...

En pièce jointe ton fichier modifier. Code commenté.

20bonvin-v01.xlsm (36.04 Ko)

Bonsoir, ThauThème. Bonsoir le forum.

Magnifique. Merci beaucoup.

Plus tard, je vais essayer de comprendre les formules que vous avez tapées.

Pour le code-déclaration prenez la colonne B svp.

Pour N° : c’est le numéro de département, ou plutôt le numéro du gestionnaire qui gère son dép.

Pour le Bouton 2 : il est pour imprimer les déclarations selon les onglets que vous avez créés avec le bouton 1.

N° contr. : colonne A ; Gest. : colonne N ; Contribuable : Nom + prénom (c’est colonnes E et F) …

Si jamais, je pense que je pourrais ajouter des infos dans la macro existante.

Mille merci encore une fois.

Re,

Voici la version 2 avec les modifications apportées... Pour le Bouton2, désolé mais je passe la main. Je ne peux pas passer mon temps à essayer d'obtenir des informations... Bonne chance !

11bonvin-v02.xlsm (37.25 Ko)

Bonjour, ThauThème. Bonjour le forum.

Je vous remercie infiniment, mais ne me laisser pas comme ça.

Ces macros sont trop difficiles pour moi. Je vais pas y arriver tout seul.

Bien que les commentaires sont au top.

J’ai pensé d’avoir répondu pour le bouton2.

Il sert à imprimer les déclarations selon les onglets que vous avez créés avec le bouton 1. (Dept_XXX)

Oui, veux renvoyer dans l'onglet Déclaration chaque contribuable et l’imprimer.

Voici les données de BD : N° contr.: colonne A dans la BD; Gest. : colonne N ; Contribuable : Nom + prénom (c’est colonnes E et F) ; Date naiss. : colonne G…

Et après passer au contribuable suivant.

C’est toujours les mêmes données que pour le bouton1 seulement liés aux départements.

Le "Total par département" sert à contrôler l’ensemble des déclarations imprimées.

J’espère d’avoir bien expliqué cette fois-ci et vous pourriez finir les macros.

Milles merci de votre aide.

Re,

Mais p... de b... de m... (Purée de Bananes Mexicaines) ! Où se trouvent :

  • L'État Civil
  • Nationalité (Colonne L ?)
  • L'adresse au 31/12/2015
  • Le Placement en situation
  • Le conjoint
  • La date de naissance du conjoint
  • La nationalité du conjoint
C'est quand même pas moi qui ait inventé ces données dans l'onglet Déclaration. Je les récupère où, dans la base de données ?

Comment veux-tu imprimer la déclaration si il manque la moitié de données !? Je t'ai demandé si tu allais remplir ces données manquantes manuellement et tu n'as même pas répondu... Tu ne fais aucun effort mais tu sais pleurer pour demander de l'aide. Puisque tu postes sans vergogne sur d'autre forums, adresse-toi à eux, ou, une dernière fois, fournis des explications détaillées, sans aucun doute possible...

Re,

J’ai voulu ne pas vous trop charger avec toutes ces données, et les ajouter plus tard. Mais, ça marche pas.

D’accord. Demain, je vais demander de copier le vrai fichier au travail et je vous le transmets via message prive, car c’est vraiment confidentiel. Je m’excuse, mais je n’ai rien à la maison.

Mais, à partir de Conjoint, on ne remplit plus rien. Sauf, le montant du solde qui est un peu plus bas, si je me souviens bien. Le reste est à la main.

Et c’est tout.

Merci d’avance. A demain.

Bonjour ThauThème,

Comme prévu, je vous transmets ce fichier par message privé.

Merci de le retourner aussi en privé. C’est pas pour tout le monde.

Il y a toutes les données dans la feuille 1 « BD TAMIQLIK PP ». C’est ça la base de données.

La feuille « Total par département » est remplacé par « Extraction ».

La feuille « Déclaration°» est remplacé par « FORMULE FF ».

Les autres sont là juste pour compléter la BD

Pardon, mais j’ai déjà commencé à corriger votre macro pour avancer un peu le travail.

Mais, y avait trop de chose à faire et j’ai pas fini.

J’ai osé de désactivé la colonne de « Code de déclaration » car ces données sont de 2015. Donc, elles sont fausses. On remplit seulement les colonnes A, B, D et E et on laisse vide la colonne 3.

Code de gestionnaire à 3 chiffres est le même que le numéro de département. Vous pouvez consultez « Table TC », c'est les gestionnaires. Le chef veut voir plutôt « Gest_XXX ». Si, il n’y a pas de code-gestionnaire il faut pas créer d’onglet. Et une fois les onglets sont créé, est-ce qu’on peut les trie par ordre croissant svp. De 242 à 469. 26 au total.

Pour « FORMULE FF » :

On remplit que :

N° contr.: colonne 37

Gest. : colonne 60

Tél.: colonne 62

Contribuable : colonnes 7+8

Date Naiss : colonne 13

Etat civil : colonne 16

Nationalité : colonne 18

Adresse au 31.12.2016: colonnes 49+52+53

Placement en institution : colonne 48, s’il en a un

Plus, à la ligne 70 « REVENUS BANCAIRES » : colonne 63

Les boutons je n’ai pas copié. Je pense que mettre Bouton1 sur la feuille « Extraction » c’est plus logique.

Et Bouton2 sur chaque feuille « Gest_XXX ». Ou, comment vous voyez ça ? Que-ce qui est mieux ?

Je vous laisse choisir. En fait, peu importe comment. Essentiel, c’est de pouvoir finalement imprimer toutes ces déclarations.

J’espère j’ai rien oublié.

Merci de votre aide.

Re,

le fichier ?...

Le fichier est trop gros, la taille maximum autorisée est 1 Mio.

Et il est à 3mio.

Quoi faire?

Regardez votre messagerie privé svp

Bonjour

Pour le bouton2 d’impression des onglets créés d’Extraction :

Pour ne pas créer 26 boutons d’impression de FORMULE FF pour chaqu’un des gestionnaires, est-ce que on peut faire apparaitre un InputBox pour entrer le code de gestionnaire et selon ce code imprimer les FORMULE FF des gens qui lui appartiens, tous ensemble ou en choisissant une seule personne.

Merci d’avance.

Rechercher des sujets similaires à "macro boucle variable"