Salut a tous et a toutes,
je possède un fichier excel globale (Reporting) contenant des informations sur 3 personnes de mon groupe. Chacune de ses personnes possède aussi un modèle de ce fichier globale (c.a.d la meme structure au niveau des colonnes) avec ses données respectives.
ce que je souhiate faire est de pouvoir récupérer les données des fichiers individuels de ces 3 personnes et les ajouter dans le fichier globale dans les cellules respectives.
J'ai deja une macro qui fonctionne très bien capable de récupérer les données d'un classeur fermé. Cependant, il me récupère toutes les données de ce classeur fermé HORS moi, je désire récupérer seulement les données dans certaines colonnes et non pas toutes.
Mon code actuel qui récupère tout :
J'ai testé donc avec le fichier de Alan (Outil-Reporting(alan).xls) et je reussi avec cette macro a récupérer toutes les données de toutes les colonnes et les ajouter dans une nouvelle feuille de mon fichier globale Reporting.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 Sub Fichier_Alan() Dim Cn As ADODB.Connection Dim Fichier As String Dim NomFeuille As String, texte_SQL As String Dim Rst As ADODB.Recordset 'Définit le classeur fermé servant de base de données Fichier = "C:\Documents and Settings\kafami01\My Documents\Outil\Outil-Reporting(alan).xls" 'Nom de la feuille dans le classeur fermé NomFeuille = "Reporting" Set Cn = New ADODB.Connection '--- Connection 1--- With Cn .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=" & Fichier & _ ";Extended Properties=Excel 8.0;" .Open End With '----------------- 'Définit la requête. '/!\ Attention à ne pas oublier le symbole $ après le nom de la feuille. texte_SQL = "SELECT * FROM [" & NomFeuille & "$]" Set Rst = New ADODB.Recordset Set Rst = Cn.Execute(texte_SQL) 'Ecrit le résultat de la requête dans la cellule A2 Sheet6.Range("A2").CopyFromRecordset Rst '--- Fermeture connexion --- Cn.Close Set Cn = Nothing End Sub
Cependant, J'aimerais cela par exemple récupérer uniquement les données des colonnes A et C de ces fichiers individuels et les ajouter dans les colonnes A et C en fonction du nom de la personne de mon fichier globale Reporting. Comment modifier ce code pour faire ceci.
J'ai essayé plusieurs tentatives mais hélas, ca ne marche toujours pas.
Votre aide est grandement apprécié.![]()
Partager