VBA exploser un tableau en plusieurs feuilles en fct d'une valeur - Logiciels - Windows & Software
Marsh Posté le 16-04-2018 à 11:51:55
Euh, je suis pas sûr de comprendre le but, mais à vue de nez un tableau croisé ferait la même chose. En beaucoup plus simple à maintenir et utiliser.
Marsh Posté le 17-04-2018 à 07:18:22
Bonjour,
Je suis conscient que la même chose pourrait être faite en tableau croisé mais les personnes qui vont utiliser les données ne savent pas utiliser ce genre d'outil. C'est pourquoi je me suis tourné vers une solution "automatique".
Si jamais ça intéresse des personnes voilà le code que j'ai obtenu aujourd'hui ainsi que les deux points sur lesquels je bute actuellement.
• Le code crée différentes feuilles en fonction des dates qui sont présentes en colonne A de la feuille sheet1 mais je souhaiterais copier sur chaque nouvelle feuille créée un entête présent sur la feuille sheet1. En me basant sur le nom de la feuille en question j'arrive à copier l'entête mais si demain je rajoute une date et donc une feuille nouvelle mon programme ne sera pas complet et certaines feuilles n'auront pas d'entête.
• Le code copie les données en fonction du mot clé (mois) dans des feuilles nouvelles mais je voudrais les copier dans les feuilles déjà créés auparavant. Par exemple si le mot clé trouvé est JAN 18 je voudrais que le code ouvre la feuille JAN 2018 déjà existante et copie la ligne entière à cet endroit là.
Bonne journée à tous.
Code :
|
Marsh Posté le 13-04-2018 à 07:35:29
Bonjour à tous,
Nouveau sur ce forum je suis à la recherche de quelqu'un pour m'aider sur le développement de mon code vba.
J'ai une feuille principale appelée "sheet1" sur laquelle je travaille quotidiennement.
La colonne A contient des valeurs telles que "JAN 2018", "FEB 2018", "MAR 2018", etc.
J'aimerais que mon code me permette de copier chaque ligne qui contient JAN 2018 en colonne A de la feuille sheet1 dans une feuille appelée "JAN 2018", FEB 2018 dans une feuille appelée "FEB 2018", etc.
L'idée est de faire une copie et non d'effacer les données de ma feuille principale de sorte que je puisse continuer à récolter quotidiennement mes données.
Grand débutant en vba j'ai trouvé un bout de code sur internet que j'essaie de modifier pour obtenir ce que je veux mais j'ai du mal. Je vous mets le code que j'ai actuellement.
Pour le développement je travaille avec des simplifications :
- JAN 2018 = aaa ; FEB 2018 = bbb, etc.
Pour être sûr de ne pas effacer mes données je commence par copier ma feuille.
Ensuite je définis les mots clés, je fais la recherche, je copie et je supprime pour éviter que mon code tourne en boucle. Pour finir je renomme mes feuilles avec mes mots clés. Le problème ici est que si j'ai créé puis supprimé plusieurs feuilles, mon renommage ne marchera pas car je serai peut-être en train de travailler avec des sheet22, sheet30 ou autre.
Il y a plusieurs choses que je n'arrive pas à faire :
- Si je n'ai pas suffisamment de feuilles créées le code ne marche pas.
- Je ne sais pas comment faire pour que les feuilles dans lesquelles se mettent les données s'appellent aaa, bbb, ccc, etc.
Quelques idées que j'ai pour dévier mon problème mais que je ne sais pas comment coder :
- Commencer par créer différentes feuilles appelées aaa, bbb, ccc, etc.
- Lancer ma recherche de mot clé et en fonction du résultat copier directement la ligne dans la feuille correspondante.
Comment pouvez-vous m'aider à résoudre mon problème ? J'espère avoir été suffisamment clair sinon n'hésitez surtout pas à me poser des questions.
Merci par avance.
Arnaud