Regrouper des données de deux fichiers dans un seul grâce à un i
Résolu/Fermé
Nacim59
Messages postés
22
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
13 août 2013
-
26 juin 2013 à 09:23
nacim59 - 1 juil. 2013 à 10:22
nacim59 - 1 juil. 2013 à 10:22
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 regrouper plusieurs pdf en un seul - Guide
- Ouvrir un fichier .bin - Guide
- Impossible de supprimer un fichier - Guide
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 310
26 juin 2013 à 10:22
26 juin 2013 à 10:22
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
Nacim59
Messages postés
22
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
13 août 2013
Modifié par Nacim59 le 26/06/2013 à 13:34
Modifié par Nacim59 le 26/06/2013 à 13:34
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
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
26 juin 2013 à 14:35
26 juin 2013 à 14:35
Re,
Merci pour les PJ
Le classeur "résultat" est il bien l'exemple de ce que tu voudrais avoir ?
lorsqu'une nouvelle affaire est signée, est elle à la suite dans les tableaux ou sur la première ligne ?
et ou la place t'on: en première ou dernière ligne dans le classeur "suivi résultat" ?
Merci pour les PJ
Le classeur "résultat" est il bien l'exemple de ce que tu voudrais avoir ?
lorsqu'une nouvelle affaire est signée, est elle à la suite dans les tableaux ou sur la première ligne ?
et ou la place t'on: en première ou dernière ligne dans le classeur "suivi résultat" ?
Nacim59
Messages postés
22
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
13 août 2013
26 juin 2013 à 15:09
26 juin 2013 à 15:09
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
Nacim59
Messages postés
22
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
13 août 2013
26 juin 2013 à 15:31
26 juin 2013 à 15:31
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
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
26 juin 2013 à 16:32
26 juin 2013 à 16:32
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....
Nacim59
Messages postés
22
Date d'inscription
mercredi 26 juin 2013
Statut
Membre
Dernière intervention
13 août 2013
26 juin 2013 à 16:50
26 juin 2013 à 16:50
Re,
Actuellement le fichier extractionetude.xls fait 407 Ko
j'ai l'habitude de travailler sur Oracle pour les requêtes, mais avec Excel on dirait que c'est différent.
Actuellement le fichier extractionetude.xls fait 407 Ko
j'ai l'habitude de travailler sur Oracle pour les requêtes, mais avec Excel on dirait que c'est différent.