Exporter dans plusieurs fichier Excel en fonction de la valeur d'une cellul

Bonjour à toues et tous,

Je suis en train de créer mes premières macro ! J'adore ça maintenant je reste un vilain débutant et pour faire toujours de mieux en mieux mon fichier je suis confronté à des problèmes de plus en plus complexe pour moi ! J'ai déjà reçu énormément d'aide de ce forum alors je continue !!! un grand merci à vous !!!

J'explique la problématique actuelle (avec un fichier de teste et une base de donnée pour travailler).

J'ai un programme (que je vais appelé le programme supérieure) qui importe des fichiers excel dans sa programmation. Grossomodo il à besoin d'un fichier par module spécifique! (ça c'est pour donnée toutes les infos )

La structure du fichier qu'il à besoin d'importer je l'ai recréée dans une grosse base de donnée qui décortique tout et qui concatène les informations comme je les souhaite. Jusque là c'est fait.

A l'heure actuelle j'arrive à exporter un fichier .xlsm pour mon programme supérieure.

Mais ce que je souhaiterai c'est de pouvoir diviser ma base de donnée en un certain nombre de fichier (qui sera fonction du nombre de module spécifique).

Dans le fichier joint, je dois exporter les colonnes de A à J en fonction de la colonne L. Pour l'exemple j'ai 2 modules différents : TD HVAC SS-1 et TD HVAC R+8.

De ce que j'ai déjà cherché, j'ai 2 possibilités (la plus simple m'ira au mieux )

  1. Soit je crée un filtre sur la colonne L (qui devra se faire automatiquement en fonction du nombre de filtre possiblement applicable) et je garde mon programme derrière qui copie colle dans un autre fichier que je bouclerai en fonction du nombre de filtre à appliquer
  • Soit j'interroge à chaque ligne la valeur de la colonne L et j'ouvre un certain nombre de classeur et je sauvegarde tout a la fin

Il faut savoir que ça sera pour maximum 7-8 module spécifique donc 7-8 fichier différents! et le top ce sera de donner le nom du module spécifique à chaque fichier.

J'espère avoir était le plus claire possible mais je suis bien sur là si jamais je dois apporter des précisions! D'avance un tout grand merci pour les informations !

10test.xlsm (187.95 Ko)

bonjour

il semble que tu n'aies pas besoin du tout de VBA !

quel est le BUT de tout ton système de fichiers ?

récupérer quelles données venant d'où ?

fichier de test format csv, extrait d'un EVRP ?

traiter le fichier ?

supprimer des lignes inutiles ?

mettre des dates ?

envoyer à tes collègues des extraits du fichier pour qu'ils aient une liste de tests à faire ?

vont-ils te renvoyer les résultats ?

tu veux les accrocher à ton fichier général ?

les renvoyer dans ton EVRP ?

note : difficultésVBA = PUISSANCE ( K ; nombredelignestotaldanstonprojet )

même si K est faible et te permet de faire 10 ou 200 lignes, tu vois que dans 50 lignes de plus tu auras des problèmes...

c'est dû à l'intrication des macros, et au fait que si tu modifies d'une virgule un truc dans un coin, tout le reste flanche.

Bonjour Jmd,

Concrètement j'ai un programme (c'est un programme de domotique = le fameux programme supérieure) dans lequel on peut importer la configuration hardware et le fichier généré équivaut à ma configuration hardware.

Ensuite ce programme suppérieur crée une table ModBus que je réimporte et je retraite pour la rendre disponible pour un système de supervision. voila en gros tous le système.

Moi normalement je m'occupe de l'automatisation Domotique et de la supervision. Le problème est que j'ai une base de donnée que des collègue à moi remplisse et que j'importe dans ma base de donnée pour centraliser le tout. Je passe par le VBA car il faut que n'importe qui puisse le faire en cliquant sur un bouton => une macro derrière le bouton.

Cela dit je suis tout a fait ouvert si il est possible de le faire sans macro excel ! (les 3/4 de ma base de donnée est faite avec des fonctions complexe de excel) Malheureusement générer un fichier je ne sais pas le faire autrement que par une macro.

re

je n'ai pas compris !

peux-tu faire une explication:

  • fichier de départ = toto.fgh contenant ???
  • import dans MASTER.xlsx
  • calculs par formules dans MASTER.xlsx
  • export de la totalité (ou partielle...) au format xlsx, autre formats. contanant ????
....

J'ai un fichier général tout le projet passe par la (c'est mon chef qui le demande donc ce que chef veux chef aura ). De la je dois créer des fichiers parents avec une structure qui correspond aux différents programmes (domotique et supervisions).

Actuellement je cherche à extraire de mon fichier principale la configuration Hardware pour le programme domotique qui demande un fichier .xlsm et dedans il doit y avoir uniquement les colonne de A à J (pas toute la logique derrière ces cellules). Jusque la finalement c'est fait. Mais ma difficulté, c'est d'extraire dans plusieurs fichier Excel. En effet, je suis tenu d'avoir un fichier par module spécifique (ce sont des générateur d'adresse qui corresponde à un bus de communication donc les configurations doivent être séparées : ça c'est pour l'info ) donc dans ma colonne L j'ai le module correspondants à 1 fichier.

Actuellement je le fait sans être en automatiques c-à-d je filtre moi même la colonne L et puis je clique sur mon bouton (et je le fais 2 fois car j'ai 2 modules). le but serait donc d'automatiser cette tache

Donc pour répondre à :


  • Ma base de donné principale (dans ce cas ci c'est l'équivalent du fichier que j'ai donné en exemple (je le remet ci joint)
    0test.xlsm (186.97 Ko)

  • Les imports ne nous préoccupe pas pour l'instant en effet c'est juste les export que je cherche a faire (comme dans le fichier de test), j’essaie de segmenter au maximum mon boulot pour ma compréhension et celle des lecteurs je l'espère

  • Pareil ce n'est pas l'objet de la question c'est juste de l’extraction d'information du traitement de texte avec des fonctions de base de excel et de la concaténation dans les cellules à extraire de plus c'est fonctionnel dans le fichier principal

  • C'est la le nœud de mon problème c'est le but de cette demande. Je dois exporter les colonnes de A à J en fonction de la colonne L. Pour l'exemple j'ai 2 modules différents : TD HVAC SS-1 et TD HVAC R+8.
    Donc lorsque je clique sur mon bouton il doit créer 2 fichiers (et cela jusque maximum 8 fichier) les fichiers doivent porter le nom TD HVAC SS-1 et TD HVAC R+8
    Dans chaque fichier il devra y avoir les colonne de A à J ayant était filtré par la colonne L avec comme paramètre TD HVAC SS-1 ou TD HVAC R+8

Est ce plus claire ?

re

tu as un fichier Excel contenant un tableau de données et tu veux le subdiviser en plusieurs fichiers Excel (portant le nom du critère de subdivision).

c'est ça ?

ta question tient en 1 petite ligne

ma réponse est : c'est faisable avec VBA

mais je ne suis pas VBAiste

je leur passe la parole

pendant qu'ils s'échauffent, pour les guider, crée les 2 fichiers tels que tu les voudras après extraction de ton Test.xlm

joins à ton message Text.xlsm et les 2 autres.

bon travail.

Pas de problème jmd,

Voici en gros la version faite main :

7fichier-maitre.xlsm (187.95 Ko)
4td-hvac-r-8.xlsm (15.22 Ko)
3td-hvac-ss-1.xlsm (18.21 Ko)

Bonjour à toutes et tous,

Voilà j'ai avancé un peu dans mon coin, j'ai donc (par facilité), choisie le copié collé d'une plage de donnée filtré.

Je ne suis pas super super satisfait du résultat mais bon cela me permet d'avancer. Voici le fichier :

8fichier-maitre.xlsm (191.96 Ko)

Ce qui m'embête c'est qu'il faut entrer sois même le nom du tableau (avec tous les risques de mauvaise saisie que ça implique) Du coup j'ai un peu regarder et si je veux entrer une liste il faut que j'insère un userform (mais comme je débute en vba je ne connait pas trop) quelqu'un pour m'aider ? (je suis aussi tout a fait ouvert à l’optimisation de mon code )

P.S.: Dans mon vrai fichier, je n'ai pas de bug mais dans le fichier test le débogueur s'ouvre ici :

FSource.Cells(1, 1).AutoFilter Field:=12, Criteria1:=GenAdress

Mais je ne sais pas trop pourquoi

Rechercher des sujets similaires à "exporter fichier fonction valeur cellul"