Bonjour à tous et à toutes,
Je me permets de vous contacter à nouveau pour ce délicat problème:
Présentation : Le but de ce document est de comparer l’estimation donnée par la finance à celle fournie par l’atelier.
On obtiendra ainsi un document de 12 pages (une par mois) avec 5 colonnes chacune (SO, Project Name, Finance, Workshop, % of difference).
Objectif : -Mettre en valeur l’existence de certaines références projet (SO) dans un fichier et pas dans l’autre.
-Mettre en évidence les écarts de plus de 10% entre les deux fichiers.
Documents :
-Finance : Un document Excel avec un relevé au mois des quantités de matière dédiées à chaque projet.
-Atelier : Un document de 13 pages (une page par mois et une pour l’annuel).
-Un fichier récapitulatif de 12 pages (une par mois).
Les 3 fichiers seront regroupés dans le même dossier pour plus de facilité.
Pages/Programme d’intérêt d’après mes recherches :
Après quelques recherches, j’ai trouvé ce post : https://www.excel-downloads.com/thr...iltres-variables-fichiers-fermes-acces.92374/
Exporter la Feuil1 d'un classeur fermé, dans un fichier texte (pour le fichier venant de la finance)
Sub excelVersFichierTexte()
Dim Rs As New ADODB.Recordset
Dim Fichier As String, Feuille As String
Dim xConnect As String, xSql As String
Fichier = "C:\Documents and Settings\michel\monClasseur.xls"
Feuille = "Feuil1"
xConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Fichier & ";" & _
"Extended Properties=Excel 8.0;"
xSql = "SELECT * FROM [" & Feuille & "$];"
Set Rs = New ADODB.Recordset
Rs.Open xSql, xConnect, adOpenForwardOnly, adLockReadOnly, adCmdText
Open "C:\Documents and Settings\michel\essai.txt" For Output As #1
Do Until Rs.EOF
Print #1, Rs.getString(, 600, ";", vbCrLf, ""); 'exemple avec séparateur ";" (point virgule)
Loop
Close #1
End Sub
Importer les feuilles complètes de plusieurs classeurs fermés (pour l’atelier)
Fichier trouvé sur le même post :
Lien supprimé
Pour calculer le % de différence entre les deux valeurs :
1ère colonne : SO
2ème colonne : Project Name
3ème colonne : Données de la finance
4ème colonne : Données de l’atelier.
Donc les valeurs seront dans les colonnes C et D d’où la formule dans la colonne E :
=ABS(C2-D2)/MAX(C2;D2)*100 et j’étire tout du long.
Puis mise en forme conditionnelle pour mettre en avant les différences supérieures à 10% par exemple.
Voici un autre lien que j’ai trouvé intéressant : https://www.excel-downloads.com/thr...ier-excel-dans-un-autre-fichier-excel.177527/
Questions :
-Tout d’abord, est-ce faisable ?
-Est-il intéressant de passer par la fonction « Docmd.TransfertSpreadSheet » pour importer ma table .xlsm ou cela n’est pas nécessaire ?
-Exporter les différentes feuilles n’est pas intéressant et il vaut mieux que je me concentre pour prélever directement les colonnes des différentes pages, non ?
-Dois-je bien fonder mes requêtes sur les tables et non pas sur les divers TCD pour le fichier atelier ?
-Comment attitre automatiquement une nouvelle page pour chaque mois ?
-S’il vaut mieux travailler sur les TCD, puis-je utiliser la requête Query donnée par Chris :
“ SELECT `January$`.Date, `January$`.Kg, `January$`.Project, `January$`.SO FROM `January$` `January$` where date is not null union SELECT `February$`.Date, `February$`.Kg, `February$`.Project, `February$`.SO, FROM `February$` `February$` where date is not null union… .”
Si vous avez des idées/suggestions/remarques/fichiers, vous êtes les bienvenus
Et merci d'avance pour votre contribution
ps: j'ai juste réalisé à la main le fichier "comparaison" donc uniquement pour le mois de janvier
Je me permets de vous contacter à nouveau pour ce délicat problème:
Présentation : Le but de ce document est de comparer l’estimation donnée par la finance à celle fournie par l’atelier.
On obtiendra ainsi un document de 12 pages (une par mois) avec 5 colonnes chacune (SO, Project Name, Finance, Workshop, % of difference).
Objectif : -Mettre en valeur l’existence de certaines références projet (SO) dans un fichier et pas dans l’autre.
-Mettre en évidence les écarts de plus de 10% entre les deux fichiers.
Documents :
-Finance : Un document Excel avec un relevé au mois des quantités de matière dédiées à chaque projet.
-Atelier : Un document de 13 pages (une page par mois et une pour l’annuel).
-Un fichier récapitulatif de 12 pages (une par mois).
Les 3 fichiers seront regroupés dans le même dossier pour plus de facilité.
Pages/Programme d’intérêt d’après mes recherches :
Après quelques recherches, j’ai trouvé ce post : https://www.excel-downloads.com/thr...iltres-variables-fichiers-fermes-acces.92374/
Exporter la Feuil1 d'un classeur fermé, dans un fichier texte (pour le fichier venant de la finance)
Sub excelVersFichierTexte()
Dim Rs As New ADODB.Recordset
Dim Fichier As String, Feuille As String
Dim xConnect As String, xSql As String
Fichier = "C:\Documents and Settings\michel\monClasseur.xls"
Feuille = "Feuil1"
xConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Fichier & ";" & _
"Extended Properties=Excel 8.0;"
xSql = "SELECT * FROM [" & Feuille & "$];"
Set Rs = New ADODB.Recordset
Rs.Open xSql, xConnect, adOpenForwardOnly, adLockReadOnly, adCmdText
Open "C:\Documents and Settings\michel\essai.txt" For Output As #1
Do Until Rs.EOF
Print #1, Rs.getString(, 600, ";", vbCrLf, ""); 'exemple avec séparateur ";" (point virgule)
Loop
Close #1
End Sub
Importer les feuilles complètes de plusieurs classeurs fermés (pour l’atelier)
Fichier trouvé sur le même post :
Lien supprimé
Pour calculer le % de différence entre les deux valeurs :
1ère colonne : SO
2ème colonne : Project Name
3ème colonne : Données de la finance
4ème colonne : Données de l’atelier.
Donc les valeurs seront dans les colonnes C et D d’où la formule dans la colonne E :
=ABS(C2-D2)/MAX(C2;D2)*100 et j’étire tout du long.
Puis mise en forme conditionnelle pour mettre en avant les différences supérieures à 10% par exemple.
Voici un autre lien que j’ai trouvé intéressant : https://www.excel-downloads.com/thr...ier-excel-dans-un-autre-fichier-excel.177527/
Questions :
-Tout d’abord, est-ce faisable ?
-Est-il intéressant de passer par la fonction « Docmd.TransfertSpreadSheet » pour importer ma table .xlsm ou cela n’est pas nécessaire ?
-Exporter les différentes feuilles n’est pas intéressant et il vaut mieux que je me concentre pour prélever directement les colonnes des différentes pages, non ?
-Dois-je bien fonder mes requêtes sur les tables et non pas sur les divers TCD pour le fichier atelier ?
-Comment attitre automatiquement une nouvelle page pour chaque mois ?
-S’il vaut mieux travailler sur les TCD, puis-je utiliser la requête Query donnée par Chris :
“ SELECT `January$`.Date, `January$`.Kg, `January$`.Project, `January$`.SO FROM `January$` `January$` where date is not null union SELECT `February$`.Date, `February$`.Kg, `February$`.Project, `February$`.SO, FROM `February$` `February$` where date is not null union… .”
Si vous avez des idées/suggestions/remarques/fichiers, vous êtes les bienvenus
Et merci d'avance pour votre contribution
ps: j'ai juste réalisé à la main le fichier "comparaison" donc uniquement pour le mois de janvier