VBA pour copier valeur de 2 fichiers et coller dans 1 fichier

Fermé
Julio_AF Messages postés 4 Date d'inscription vendredi 2 octobre 2015 Statut Membre Dernière intervention 7 octobre 2015 - Modifié par Julio_AF le 2/10/2015 à 11:31
Julio_AF Messages postés 4 Date d'inscription vendredi 2 octobre 2015 Statut Membre Dernière intervention 7 octobre 2015 - 7 oct. 2015 à 12:36
Bonjour,
J'ai un fichier excel: Fichier1 qui contient par exemple:

Colonne A Colonne B Colonne C

Valeur1(taille 5) valeur2(taille 4) Valeur3(taille 6)


J'ai également un autre fichier excel: Fichier2 qui contient par exemple:

Colonne A Colonne B Colonne C

Valeur4(taille 7) valeur5(taille 5) Valeur6(taille 3)

TailleN= c'est le type de variable et son nombre. Par exemple si le type c'est alphanumérique(il faut préciser le nombre de caractère(N) de alphanumérique).

Je voudrais importer ces deux fichiers dans une macro VBA afin de constituer un seul fichier avec les valeurs des deux cellules mais aussi avec une même taille de données par exemple le fichier que j'obtiendrai pourrai etre:

Colonne A Colonne B Colonne C
Valeur4(taille 7) valeur5(taille 5) Valeur6(taille 6)
Valeur1(taille 7) valeur2(taille 5) Valeur3(taille 6)

NB: je veux d'abord copier toutes les lignes du fichier 1 par la suite copier toutes les lignes de fichier 2. Sachant que les deux fichiers sources sont dans le même répertoire

Pouvez-vous m'aider à réaliser cette macro VBA?
Merci d'avance pour vos réponses
A voir également:

2 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 2/10/2015 à 10:54
Bonjour

Qu'entend tu par "TailleN" ? peut -^tre taille de vêtement ou alors type de variable: nombre, texte, date etc.

tu veux alterner ligne pas ligne les 2 fichiers ? si oui quel est le fichier 1° ligne?

les 2 fichiers source sont ils dans le m^me répertoire ? si non, quel est leur chemin ? nom de ces fichiers

nombre de lignes dans les 2 fichiers ?

Merci d'^tre précis et complet dans ta demande.

Transféré dans forum VBA

Michel
0
Julio_AF Messages postés 4 Date d'inscription vendredi 2 octobre 2015 Statut Membre Dernière intervention 7 octobre 2015
2 oct. 2015 à 11:04
Bonjour Michel

-Par tailleN j'entends justement le type de variable et son nombre. Par exemple si le type c'est alphanumérique(il faut préciser le nombre de caractère(N) de alphanumérique).
-Non je veux d'abord copier toutes les lignes du fichier 1 par la suite copier toutes les lignes de fichier 2.
-Oui les deux fichiers sources sont dans le même répertoire.
-Pret de 3000 lignes dans chaque fichier avec prêt de 11 colonnes à utiliser (même nombre dans chaque fichier).
Si je ne suis pas assez claire merci de me relancer
Merci d'avance pour votre réponse
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 3/10/2015 à 09:23
Bonjour,

ai je compris ?
il faut se baser sur la taille la + grande, c.a.d. nombre de caractères, de chaque colonne dans les 2 fichiers ?

si c'est cela, sans vba
tu copies les 2 tableaux l'un au dessus de l'autre
tu sélectionnes les 11 colonnes
puis ruban accueil-format- ajuster largeur de colonnes

si tu as besoin d'un automatisme (répétition de la manoeuvre par ex.), utilise l'enregistreur de macro et installe un bouton dans le classeur destinataire

Michel
0
Julio_AF Messages postés 4 Date d'inscription vendredi 2 octobre 2015 Statut Membre Dernière intervention 7 octobre 2015
3 oct. 2015 à 10:43
Bonjour Michel,
Tout d'abord merci pour ta réponse.
Le souci c'est que les champs ou colonnes du tableau ne sont pas dans le même ordre d'alignement. Je dois donc sélectionner une ligne choisir tout à tour les bonnes cellules dans les bon champs et les enregistrer dans le fichier qui contiendra les deux tableaux.
Donc il faut obligatoirement écrire une macro pour cela.
Merci d'avance pour ta réponse.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303 > Julio_AF Messages postés 4 Date d'inscription vendredi 2 octobre 2015 Statut Membre Dernière intervention 7 octobre 2015
3 oct. 2015 à 12:52
J'y comprend rien à ce que tu annonces !
Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
et coller le raccourci proposé (clic droit) dans le message de réponse
Dans l'attente
et explique clairement et complétement: ch'uis obtus
0
Julio_AF Messages postés 4 Date d'inscription vendredi 2 octobre 2015 Statut Membre Dernière intervention 7 octobre 2015 > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
7 oct. 2015 à 12:36
Voici le lien du classeur et en dessous les explications:

https://www.cjoint.com/c/EJhkD47md5S

Normalement pour mon travail j'aurai deux fichiers excel dont le contenu est dans chacune des feuilles du fichier publié:
-le fichier1 contient les informations de la feuille:programme_Previ
-le fichier2 contient les informations de la feuille: programme_Rea
  • Dans la feuille Programme_Previ les colonnes à selectionner son numéroté de X1,X2,...,X10,X11 (respectivement Colonnes: A;B;C;E;F;O;P;Q;S;Z;Y+BC;CB). Particulièrement pour X10 on doit prendre le contenu de la colonne Y qu'on doit additioner(opération addition) au contenu de la colonne BC.

On doit donc dans une nouvelle feuille afficher toutes les lignes(respectivement colonne: A;B;C;E;F;O;P;Q;S;Z;Y+BC;CB) du tableau de la feuille programme_Previ
ensuite juste en dessous on va chercher le contenu dans les colonnes appropriées du tableau de la feuille : programme_Rea pour les afficher dans la bonne colonne de la nouvelle feuille juste en dessous des lignes du tableau de la feuille programme_Previ
Précision: Le contenu de chaque colonne du tableau de la feuille programme_Rea doit etre converti au format du contenu de la colonne correspondante dans le tableau de la feuiile programme_Previ. par exemple Colonne A de la feuille programme_Previ est de type de données Date de la forme « YYYYMMAA » et la colonne A de la feuille programme_Rea est aussi de type de données Date de la forme « JJ/MM/AA », du coup en le copiant dans la nouvelle feuille on doit le convertir en format de type « YYYYMMAA ».
Je reste à votre disposition pour plus d'information
0