Regrouper des données de deux fichiers dans un seul grâce à un i
Résolu
Nacim59
Messages postés
22
Date d'inscription
Statut
Membre
Dernière intervention
-
nacim59 -
nacim59 -
A voir également:
- Regrouper des données de deux fichiers dans un seul grâce à un i
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment ouvrir un fichier bin ? - Guide
- Comment regrouper plusieurs pdf en un seul - Guide
- Impossible de supprimer un fichier - Guide
2 réponses
Bonjour
pas très clair ton exposé
tu veux récupérer quoi exactement ? juste les lots ou bien...?
combien as tu de lignes dans le fichier "extraction étude.xls"
version Excel ?
pour être efficace
joints tes fichier dans un zip et envie les nous
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
pas très clair ton exposé
tu veux récupérer quoi exactement ? juste les lots ou bien...?
combien as tu de lignes dans le fichier "extraction étude.xls"
version Excel ?
pour être efficace
joints tes fichier dans un zip et envie les nous
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
Bonjour Michel et merci pour ta réponse, je vais essayer d'être plus explicite, je reprends à zéro .
Actuellement, les ingénieurs de l'entreprise où je passe mon stage travaillent sur la plateforme Sharepoint 2010, ils ont créé une liste sur Sharepoint afin d'ajouter leurs études, cette liste est reliée à un fichier Excel (extractionetude.xls).
Lorsque une étude est ouverte les ingénieurs font des sous études(Lots) sur cette étude , on peut aussi exporter ces données dans un fichier Excel (lotissement.xls)
Aujourd'hui, la responsable qui s'occupe du suivi des activités remplit manuellement tout le tableau.
Je veux créer un nouveau fichier "suivi-des-activités.xls" qui se trouvera dans un dossier "Suivi Etude", lorsque la responsable veut voir le suivi des activités des salariés, elle enregistre dans ce dossier le fichier "extractionétude.xls" extrait du Sharepoint ainsi que "lotissement" et lorsque je rentre sur le fichier "suivi-des-activités.xls" il va me remplir mon tableau grâce aux deux fichiers.
les différents champs sont les suivants :
Titre de l'affaire
Type d'affaire
Titre du lot
Nom responsable du lot
Ressources prévisionnelles engagées du lot
Date de début du lot
Date probable fin du lot
Date effective fin du lot
Commentaire du lot
Dans le 1er fichier il y a que les renseignements sur l'étude, c'est le 2ème fichier qui contient les lots.
Je veux afficher toutes les études du 1er fichier et dès qu'il retrouve le même titre de l'affaire dans le 2éme fichier, il m'ajoute le Titre du lot , Nom responsable du lot, Ressources prévisionnelles engagées du lot, Date de début du lot, Date probable fin du lot, Date effective fin du lot, commentaire du lot.
Aujourd'hu,i il y a dans les 1000 lignes dans "extractionetude.xls" et beaucoup moins dans "lotissement.xls"
Je travaille sur Excel 2007
Merci d'avance
https://www.cjoint.com/?CFAnxRFQlkb
Actuellement, les ingénieurs de l'entreprise où je passe mon stage travaillent sur la plateforme Sharepoint 2010, ils ont créé une liste sur Sharepoint afin d'ajouter leurs études, cette liste est reliée à un fichier Excel (extractionetude.xls).
Lorsque une étude est ouverte les ingénieurs font des sous études(Lots) sur cette étude , on peut aussi exporter ces données dans un fichier Excel (lotissement.xls)
Aujourd'hui, la responsable qui s'occupe du suivi des activités remplit manuellement tout le tableau.
Je veux créer un nouveau fichier "suivi-des-activités.xls" qui se trouvera dans un dossier "Suivi Etude", lorsque la responsable veut voir le suivi des activités des salariés, elle enregistre dans ce dossier le fichier "extractionétude.xls" extrait du Sharepoint ainsi que "lotissement" et lorsque je rentre sur le fichier "suivi-des-activités.xls" il va me remplir mon tableau grâce aux deux fichiers.
les différents champs sont les suivants :
Titre de l'affaire
Type d'affaire
Titre du lot
Nom responsable du lot
Ressources prévisionnelles engagées du lot
Date de début du lot
Date probable fin du lot
Date effective fin du lot
Commentaire du lot
Dans le 1er fichier il y a que les renseignements sur l'étude, c'est le 2ème fichier qui contient les lots.
Je veux afficher toutes les études du 1er fichier et dès qu'il retrouve le même titre de l'affaire dans le 2éme fichier, il m'ajoute le Titre du lot , Nom responsable du lot, Ressources prévisionnelles engagées du lot, Date de début du lot, Date probable fin du lot, Date effective fin du lot, commentaire du lot.
Aujourd'hu,i il y a dans les 1000 lignes dans "extractionetude.xls" et beaucoup moins dans "lotissement.xls"
Je travaille sur Excel 2007
Merci d'avance
https://www.cjoint.com/?CFAnxRFQlkb
Re.
Le classeur résultat est bien l'exemple que je veux avoir, je n'ai pas mis la même mise en forme pour te monter que les colonnes en bleu sont des colonnes de "extractionetude.xls" et en blanc "lotissement.xls"
Lorsque'une nouvelle affaire est signée elle s'ajoute dans "extractionetude.xls" par ordre Alaphabitique
Le classeur résultat est bien l'exemple que je veux avoir, je n'ai pas mis la même mise en forme pour te monter que les colonnes en bleu sont des colonnes de "extractionetude.xls" et en blanc "lotissement.xls"
Lorsque'une nouvelle affaire est signée elle s'ajoute dans "extractionetude.xls" par ordre Alaphabitique
Re.
j'ai réussi à écrire une macro, mais j'ai pas encor mon résultat
Sub RequeteClasseurFerme()
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 1 fermé servant de base de données
Fichier = "F:\recup\lotissement.xls"
'Définit le classeur 2 fermé servant de base de données
Fichier = "F:\recup\extractionetude.xls"
'Nom de la feuille dans le classeur fermé
NomFeuille = "Feuil1"
Set Cn = New ADODB.Connection
'--- Connection ---
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.
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
Range("A2").CopyFromRecordset Rst
'--- Fermeture connexion ---
Cn.Close
Set Cn = Nothing
End Sub
j'ai réussi à écrire une macro, mais j'ai pas encor mon résultat
Sub RequeteClasseurFerme()
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 1 fermé servant de base de données
Fichier = "F:\recup\lotissement.xls"
'Définit le classeur 2 fermé servant de base de données
Fichier = "F:\recup\extractionetude.xls"
'Nom de la feuille dans le classeur fermé
NomFeuille = "Feuil1"
Set Cn = New ADODB.Connection
'--- Connection ---
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.
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
Range("A2").CopyFromRecordset Rst
'--- Fermeture connexion ---
Cn.Close
Set Cn = Nothing
End Sub
Re,
En fait si on utilise ADO, le plus élégant serait de faire une jointure entre les 2 fichiers mais ce n'est pas forcément évident question Syntaxe SQL.... j'ai ça dans mon grenier mais c'est vieux
quelques petites remarques
utilises plutôt cette syntaxe pour les déclarations
Dim Cn as object, Rst as object
puis set Cn=createobject("ADODB.connection")
et set Rrst=createobject("ADODB.recordset")
cela évite d'aller cocher les références
mais si tu maintiens ta syntaxe il faut aussi que tu fermes et annule le recordset
avec le systeme createobject, ces fermetures (connection et recordset) sont annulées sans threads à la fin du code
je n'ai pas compris
'Définit le classeur 1 fermé servant de base de données
Fichier = "F:\recup\lotissement.xls"
'Définit le classeur 2 fermé servant de base de données
Fichier = "F:\recup\extractionetude.xls"
qui veut dire que tu travailles sur le fichier extraction ?
Pour ma part comme on travaille sur 2 fichiers, je me disais qu'on ouvrirait les 2 fichiers pour travailler à moins qu'ils ne soient très lourds (environ combien ?)
Je suis absent demain toute la journée....
En fait si on utilise ADO, le plus élégant serait de faire une jointure entre les 2 fichiers mais ce n'est pas forcément évident question Syntaxe SQL.... j'ai ça dans mon grenier mais c'est vieux
quelques petites remarques
utilises plutôt cette syntaxe pour les déclarations
Dim Cn as object, Rst as object
puis set Cn=createobject("ADODB.connection")
et set Rrst=createobject("ADODB.recordset")
cela évite d'aller cocher les références
mais si tu maintiens ta syntaxe il faut aussi que tu fermes et annule le recordset
avec le systeme createobject, ces fermetures (connection et recordset) sont annulées sans threads à la fin du code
je n'ai pas compris
'Définit le classeur 1 fermé servant de base de données
Fichier = "F:\recup\lotissement.xls"
'Définit le classeur 2 fermé servant de base de données
Fichier = "F:\recup\extractionetude.xls"
qui veut dire que tu travailles sur le fichier extraction ?
Pour ma part comme on travaille sur 2 fichiers, je me disais qu'on ouvrirait les 2 fichiers pour travailler à moins qu'ils ne soient très lourds (environ combien ?)
Je suis absent demain toute la journée....