Rechercher première ligne vide d'un fichier et ecrire
Résolu
Baloo24700
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
baloo24 -
baloo24 -
A voir également:
- Rechercher première ligne vide d'un fichier et ecrire
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
43 réponses
Bon, pour faire simple, complète les informations ci dessous:
Ce que tu veux copier se trouve dans le fichier B (celui qui est fermé au départ) :
1- Nom de ce fichier avec l'extension (ex : Classeur1.xlsx)
2- Chemin d'accès à ce fichier (ex : C:/User/MonNom/Travail/Fichiers Excel/) [si tu veux anonymiser ce chemin remplace ce qui doit l'être par des xxxxx, tu feras l'inverse dans le code]
3- Nom de la feuille ou se trouvent les données à importer
4- Adresse des cellules à importer (ex : AN7:BG7)
Tu veux copier ces données dans le fichier A (celui qui est ouvert au départ) :
5- ou? Si j'ai bien compris, tu veux copier les données à importer dans la première ligne vide à partir de la colonne A, confirme le.
6- subsidiaire : est ce obligatoire, pour toi, d'ouvrir le fichier B?
Si je me trompe sur toute la ligne, réponds moi en indiquant exactement ton souhait.
Ce que tu veux copier se trouve dans le fichier B (celui qui est fermé au départ) :
1- Nom de ce fichier avec l'extension (ex : Classeur1.xlsx)
2- Chemin d'accès à ce fichier (ex : C:/User/MonNom/Travail/Fichiers Excel/) [si tu veux anonymiser ce chemin remplace ce qui doit l'être par des xxxxx, tu feras l'inverse dans le code]
3- Nom de la feuille ou se trouvent les données à importer
4- Adresse des cellules à importer (ex : AN7:BG7)
Tu veux copier ces données dans le fichier A (celui qui est ouvert au départ) :
5- ou? Si j'ai bien compris, tu veux copier les données à importer dans la première ligne vide à partir de la colonne A, confirme le.
6- subsidiaire : est ce obligatoire, pour toi, d'ouvrir le fichier B?
Si je me trompe sur toute la ligne, réponds moi en indiquant exactement ton souhait.
Merci Mike-31 de votre réponse ! Alors pour tenter d'être plus clair :
a) dans le fichier A j'ai des cellules avec infos (ex : A4; C7; L25; G6 etc...)
b) j'aimerai que la macro :
- ouvre le fichier B
- se positionne sur la première ligne vide de B (par exemple la ligne 47) et inscrive A47=A4, B47=C7, C47=L25, D47=G6 etc ...)
Ai-je été plus clair ? Merci d'avance de votre aide,
A+, Baloo
a) dans le fichier A j'ai des cellules avec infos (ex : A4; C7; L25; G6 etc...)
b) j'aimerai que la macro :
- ouvre le fichier B
- se positionne sur la première ligne vide de B (par exemple la ligne 47) et inscrive A47=A4, B47=C7, C47=L25, D47=G6 etc ...)
Ai-je été plus clair ? Merci d'avance de votre aide,
A+, Baloo
Re,
Je découvre ta réponse , ce qui me gène c'est que les cellule à copier ne sont pas contiguës
ex : A4; C7; L25; G6 etc...)
on peut écrire un code relativement court pour copier les lignes de A4 à G26 ou les lignes 4, 7, 25, 6, etc mais pour copier une cellule par ci par la, il va falloir trouver un élément commun déclencheur
Peux tu mettre ton fichier à notre disposition que l'on voit sa structure, que tu peux joindre avec ce lien
https://www.cjoint.com/
Je découvre ta réponse , ce qui me gène c'est que les cellule à copier ne sont pas contiguës
ex : A4; C7; L25; G6 etc...)
on peut écrire un code relativement court pour copier les lignes de A4 à G26 ou les lignes 4, 7, 25, 6, etc mais pour copier une cellule par ci par la, il va falloir trouver un élément commun déclencheur
Peux tu mettre ton fichier à notre disposition que l'on voit sa structure, que tu peux joindre avec ce lien
https://www.cjoint.com/
Bonjour et merci Mike-31 pour votre réponse mais je ne comprends rien à rien ! Boeuf je suis, boeuf je reste ....
Cependant suite à votre remarque, j'ai créé sur A une ligne qui rapatrie les infos dispersées sur la feuille de A.
Maintenant je coince sur le fait de faire écrire cette ligne créée sur la première ligne vide de B ...
Vous serait-il possible de m'adresser le code complet pour opérer cette macro ? désolé de vous paraître aussi nul mais je ne connais pas du tout le vba et pensais que c'était plus simple ... Mais j'ai un besoin urgent because je dois présenter ce fichier à mes boss jeudi !!!Pour l'envoi des fichiers, délicat car dossier pro et de plus + de 5 MO ...
d'avance merci et excellente journée sous le soleil ... j'espère pour Vous !
Baloo
Cependant suite à votre remarque, j'ai créé sur A une ligne qui rapatrie les infos dispersées sur la feuille de A.
Maintenant je coince sur le fait de faire écrire cette ligne créée sur la première ligne vide de B ...
Vous serait-il possible de m'adresser le code complet pour opérer cette macro ? désolé de vous paraître aussi nul mais je ne connais pas du tout le vba et pensais que c'était plus simple ... Mais j'ai un besoin urgent because je dois présenter ce fichier à mes boss jeudi !!!Pour l'envoi des fichiers, délicat car dossier pro et de plus + de 5 MO ...
d'avance merci et excellente journée sous le soleil ... j'espère pour Vous !
Baloo
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
Je pense que le mieux est de commencer par mettre à notre disposition ton fichier sans notes confidentielles.
Pour cela commence par cliquer sur ce lien
https://www.cjoint.com/
Ensuite sur parcourir, puis sur créer le lien. Un lien sera généré en haut de la page, colle le dans un prochain post de la discussion
Je pense que le mieux est de commencer par mettre à notre disposition ton fichier sans notes confidentielles.
Pour cela commence par cliquer sur ce lien
https://www.cjoint.com/
Ensuite sur parcourir, puis sur créer le lien. Un lien sera généré en haut de la page, colle le dans un prochain post de la discussion
Bonjour Mike 31 !
Désolé mais je ne peux pas mettre ces fichiers en ligne car pro et de plus j'aurai plus de temps à défaire les liens car sur des serveurs différents et à "banaliser" les fichiers. Mais je repose ma dernière question :
Après avoir "recentré" sur une seule ligne toutes les infos que je veux transférer du fichier A vers le fichier B, je demandais simplement le code complet pour assurer ce transfert. Merci de votre aide. Bien sincèrement,
Désolé mais je ne peux pas mettre ces fichiers en ligne car pro et de plus j'aurai plus de temps à défaire les liens car sur des serveurs différents et à "banaliser" les fichiers. Mais je repose ma dernière question :
Après avoir "recentré" sur une seule ligne toutes les infos que je veux transférer du fichier A vers le fichier B, je demandais simplement le code complet pour assurer ce transfert. Merci de votre aide. Bien sincèrement,
Bonjour
Vu le poids de 5 Mo, solution sans ouvrir le classeur source: remplacer source.xls par le nom réel
macro dans le classeur cible
Demo:
https://www.cjoint.com/c/CDpkdfdn58T
Vu le poids de 5 Mo, solution sans ouvrir le classeur source: remplacer source.xls par le nom réel
macro dans le classeur cible
Sub lire_ferme() Dim chemin As String ligvide = Cells.Find("*", , , , , xlPrevious).Row + 1 chemin = ThisWorkbook.Path ' A ADAPTER For cptr = 1 To 4 Cells(ligvide, 3) = ExecuteExcel4Macro("'" & chemin & "\[source.xls]Feuil1'!R1C1") 'R1C1=A3 Cells(ligvide, 4) = ExecuteExcel4Macro("'" & chemin & "\[source.xls]Feuil1'!R2C2") Cells(ligvide, 5) = ExecuteExcel4Macro("'" & chemin & "\[source.xls]Feuil1'!R5C3") '=C5 Cells(ligvide, 6) = ExecuteExcel4Macro("'" & chemin & "\[source.xls]Feuil1'!R7C4") Next End Sub
Demo:
https://www.cjoint.com/c/CDpkdfdn58T
Bonjour à Toutes et Tous !
Toujours coincé par cette macro ...
Voilà le code que j'ai transcris ! Merci de votre aide :
Sub CodifOpe()
'
' CodifOpe Macro
'Selection de la ligne à copier
LigneSource = ThisWorkbook.Sheets("Prospect").Range("AN7:BG7").End(xlUp).Row
'Ouverture du fichier destination
Workbooks.Open Filename:="X:\EROLA\Opérations.xlsx"
ActiveWindow.SplitRow = 0
Application.FormulaBarHeight = 12
Application.FormulaBarHeight = 1
'Recherche de la première ligne vide Opérations
LigneDestination = Sheets("Patrimoine").Range("B").End(xlUp).Row + 1
'Ecrire ligne sur Opérations
ThisWorkbook.Sheets("Patrimoine").Rows(LigneSource).Copy
Workbooks("Erola-6.xlsx").Sheets("Prospect").Range ("B" & LigneDestination)
End Sub
Toujours coincé par cette macro ...
Voilà le code que j'ai transcris ! Merci de votre aide :
Sub CodifOpe()
'
' CodifOpe Macro
'Selection de la ligne à copier
LigneSource = ThisWorkbook.Sheets("Prospect").Range("AN7:BG7").End(xlUp).Row
'Ouverture du fichier destination
Workbooks.Open Filename:="X:\EROLA\Opérations.xlsx"
ActiveWindow.SplitRow = 0
Application.FormulaBarHeight = 12
Application.FormulaBarHeight = 1
'Recherche de la première ligne vide Opérations
LigneDestination = Sheets("Patrimoine").Range("B").End(xlUp).Row + 1
'Ecrire ligne sur Opérations
ThisWorkbook.Sheets("Patrimoine").Rows(LigneSource).Copy
Workbooks("Erola-6.xlsx").Sheets("Prospect").Range ("B" & LigneDestination)
End Sub
Bonjour à tous,
Désolé pour l'incruste, je ne fais que passer...
tu ne serais pas en train de confondre source et destination???
Relis ton code tranquillement...
LigneSource = ThisWorkbook.Sheets("Prospect").blablabla
Or tu copies (lignesource) dans la feuille patrimoine :
ThisWorkbook.Sheets("Patrimoine").Rows(LigneSource).Copy
LigneDestination = Sheets("Patrimoine").blablabla
Or tu colles (lignedestination) dans la feuille prospect :
Workbooks("Erola-6.xlsx").Sheets("Prospect").Range ("B" & LigneDestination)
N'y aurait il pas confusion?
Désolé pour l'incruste, je ne fais que passer...
tu ne serais pas en train de confondre source et destination???
Relis ton code tranquillement...
LigneSource = ThisWorkbook.Sheets("Prospect").blablabla
Or tu copies (lignesource) dans la feuille patrimoine :
ThisWorkbook.Sheets("Patrimoine").Rows(LigneSource).Copy
LigneDestination = Sheets("Patrimoine").blablabla
Or tu colles (lignedestination) dans la feuille prospect :
Workbooks("Erola-6.xlsx").Sheets("Prospect").Range ("B" & LigneDestination)
N'y aurait il pas confusion?
Bonjour Pijaku !
Je ne comprends pas votre remarque désolé ...
Ma sélection à copier ligne source se trouve dans Erola feuille Prospect de la cellule AN7 à BG7.
LigneSource = ThisWorkbook.Sheets("Prospect").Range("AN7:BG7").End(xlUp).Row
la première ligne vide de destination se trouve dans Opérations feuille Patrimoine
LigneDestination = Sheets("Patrimoine").Range("B").End(xlUp).Row + 1
et j'aimerai que la copie se fasse à partir de la colonne B ...
Où me serai-je planté ? Je comprends plus rien ! Merci d'avance
Je ne comprends pas votre remarque désolé ...
Ma sélection à copier ligne source se trouve dans Erola feuille Prospect de la cellule AN7 à BG7.
LigneSource = ThisWorkbook.Sheets("Prospect").Range("AN7:BG7").End(xlUp).Row
la première ligne vide de destination se trouve dans Opérations feuille Patrimoine
LigneDestination = Sheets("Patrimoine").Range("B").End(xlUp).Row + 1
et j'aimerai que la copie se fasse à partir de la colonne B ...
Où me serai-je planté ? Je comprends plus rien ! Merci d'avance
1- as tu essayé le code de Michel_M?
2- si oui, comment l'as tu adapté?
3- Est ce que le code de Michel_M fonctionne?
4- S'il ne "fonctionne pas", dis nous ce qui ne te va pas et ce que surligne (en jaune) le débogage.
5- dans mon précédent message, je te dis simplement que tu as inversé ta source et ta destination... Relis ton code.
Et, puisque tu ne sembles pas habitué des forums :
6- lorsque tu obtiens une réponse, si tu n'arrives pas à la faire fonctionner, demande des précisions à celui qui t'as aidé. Ne passes pas d'une aide à une autre sans tenir compte des avis qui ont précédés.
Pour info Mike31 et michel_m sont des pontes en VBA Excel (entres autres).
2- si oui, comment l'as tu adapté?
3- Est ce que le code de Michel_M fonctionne?
4- S'il ne "fonctionne pas", dis nous ce qui ne te va pas et ce que surligne (en jaune) le débogage.
5- dans mon précédent message, je te dis simplement que tu as inversé ta source et ta destination... Relis ton code.
Et, puisque tu ne sembles pas habitué des forums :
6- lorsque tu obtiens une réponse, si tu n'arrives pas à la faire fonctionner, demande des précisions à celui qui t'as aidé. Ne passes pas d'une aide à une autre sans tenir compte des avis qui ont précédés.
Pour info Mike31 et michel_m sont des pontes en VBA Excel (entres autres).
Pijaku, Michel et Mickaël
Désolé d'avoir froissé quique ce soi ce n'était pas mon intention ... Veuillez accepter mes plus plates excuses ... et l'invitation tien toujours !!!
Pour revenir à mon souci et ma découverte du fonctionnement d'un forum, j'ai parlé de 5Mo de fichiers (un ensemble de 3 fichiers liés).
Pijaku, oui je viens de tester le code de Michel M ... J'ai juste un problème c'est que mon fichier A (Erola) est ouvert lorsque je lance le code de Michel qui ouvre le fichier B. Ce qui fait qu'il m'ouvre l'explorateur a la recherche d'un fichier A à ouvrir alors qu'il l'est déjà en fait ...
Mon idée initiale était qu'en lançant le fichier Erola dans lequel je saisis une foultitude d'infos, je puisse rapatrier à travers une macro sur le fichier B (Opérations) une synthèse d'une dizaine de cellules ... C'était "tout" en fait ... Mais pour moi d'une complexité extrême ! Merci de votre aide !
Désolé d'avoir froissé quique ce soi ce n'était pas mon intention ... Veuillez accepter mes plus plates excuses ... et l'invitation tien toujours !!!
Pour revenir à mon souci et ma découverte du fonctionnement d'un forum, j'ai parlé de 5Mo de fichiers (un ensemble de 3 fichiers liés).
Pijaku, oui je viens de tester le code de Michel M ... J'ai juste un problème c'est que mon fichier A (Erola) est ouvert lorsque je lance le code de Michel qui ouvre le fichier B. Ce qui fait qu'il m'ouvre l'explorateur a la recherche d'un fichier A à ouvrir alors qu'il l'est déjà en fait ...
Mon idée initiale était qu'en lançant le fichier Erola dans lequel je saisis une foultitude d'infos, je puisse rapatrier à travers une macro sur le fichier B (Opérations) une synthèse d'une dizaine de cellules ... C'était "tout" en fait ... Mais pour moi d'une complexité extrême ! Merci de votre aide !
On va y arriver ... je pense sauf que c'est l'inverse, ce que je veux copier est dans A (Erola-6.xslm) !
a) C'est le fichier A (Erola) qui comporte les infos que je veux copier qui est ouvert donc pour répondre à vos questions dans l'ordre :
1- Nom : Erola-6.xslm
2- Chemin : "X:/Partage/Erola/Erola-6.xslm"
3- Nom de la Feuille : "Prospect"
4- Plage des cellules à exporter : "Prospect" (AN7:BG7)
5- Nom du Fichier de destination : Opérations.xslx
5'- Feuille : "Patrimoine"
Plage du fichier où doivent être copiées (ou importer) les cellules : de la colonne B(première ligne vide) à la colonne U(première ligne vide)
6- Oui je suis obligé d'ouvrir le fichier "Opérations.xslx" car j'ai des infos à consulter.
Ai-je été plus clair ? D'avance merci ! Cordialement,
JPierre
a) C'est le fichier A (Erola) qui comporte les infos que je veux copier qui est ouvert donc pour répondre à vos questions dans l'ordre :
1- Nom : Erola-6.xslm
2- Chemin : "X:/Partage/Erola/Erola-6.xslm"
3- Nom de la Feuille : "Prospect"
4- Plage des cellules à exporter : "Prospect" (AN7:BG7)
5- Nom du Fichier de destination : Opérations.xslx
5'- Feuille : "Patrimoine"
Plage du fichier où doivent être copiées (ou importer) les cellules : de la colonne B(première ligne vide) à la colonne U(première ligne vide)
6- Oui je suis obligé d'ouvrir le fichier "Opérations.xslx" car j'ai des infos à consulter.
Ai-je été plus clair ? D'avance merci ! Cordialement,
JPierre
D'accord ! Alors le chemin
"Y/Partage/Opérations/Opérations.xslx"
Est-ce votre attente ? Merci quand même de votre aide !
Bonne soirée et bien sincèrement
JPierre
"Y/Partage/Opérations/Opérations.xslx"
Est-ce votre attente ? Merci quand même de votre aide !
Bonne soirée et bien sincèrement
JPierre
Bonjour,
Ma proposition du jour, à placer dans le Classeur Erola et à tester :
Ma proposition du jour, à placer dans le Classeur Erola et à tester :
Sub exporter() Dim FichierA As Workbook, FichierB As Workbook, Lign As Long, Tb() Set FichierA = ThisWorkbook Tb = FichierA.Sheets("Prospect").Range("AN7:BG7").Value ' !!! A ADAPTER \ au lieu de / il me semble... Set FichierB = Workbooks.Open("Y:/Partage/Opérations/Opérations.xslx") With FichierB With .Sheets("Patrimoine") Lign = .Range("B" & Rows.Count).End(xlUp).Row + 1 .Range("B" & Lign).Resize(1, UBound(Tb, 2)) = Tb End With End With End Sub
Bonjour Franck et Merci ! Cela fonctionne bien avec le code suivant :
Sub CodifOp()
'
'a) je souhaite copier la plage AN7:BG7 de la feuille "Prospect" du fichier "Erola".
'b) vers la plage (B(première ligne vide) à U(première ligne vide)) de la feuille
'"Patrimoine" du fichier "Opérations".
' CodifOpe Macro
Dim Wks As Worksheet
Dim LigneDestination As Long
Set Wks = ThisWorkbook.Sheets("Prospect")
'Ouverture du fichier destination
Workbooks.Open Filename:="X:\EROLA\Opérations.xlsx"
'Recherche de la première ligne vide Opérations
LigneDestination = Sheets("Patrimoine").Cells(Rows.Count, "B").End(xlUp).Row + 1
'Ecrire ligne sur Opérations
Wks.Range("AN7:BG7").Copy
Sheets("Patrimoine").Range("B" & LigneDestination).PasteSpecial Paste:=xlPasteValues
End Sub
Par contre, sans vouloir abuser, est-il possible d'introduire une notion de recherche si cette copie de cellules n'a pas déjà été faite, ceci afin d'éviter les doublons dans Opérations ? D'avance merci pour Tout
Sub CodifOp()
'
'a) je souhaite copier la plage AN7:BG7 de la feuille "Prospect" du fichier "Erola".
'b) vers la plage (B(première ligne vide) à U(première ligne vide)) de la feuille
'"Patrimoine" du fichier "Opérations".
' CodifOpe Macro
Dim Wks As Worksheet
Dim LigneDestination As Long
Set Wks = ThisWorkbook.Sheets("Prospect")
'Ouverture du fichier destination
Workbooks.Open Filename:="X:\EROLA\Opérations.xlsx"
'Recherche de la première ligne vide Opérations
LigneDestination = Sheets("Patrimoine").Cells(Rows.Count, "B").End(xlUp).Row + 1
'Ecrire ligne sur Opérations
Wks.Range("AN7:BG7").Copy
Sheets("Patrimoine").Range("B" & LigneDestination).PasteSpecial Paste:=xlPasteValues
End Sub
Par contre, sans vouloir abuser, est-il possible d'introduire une notion de recherche si cette copie de cellules n'a pas déjà été faite, ceci afin d'éviter les doublons dans Opérations ? D'avance merci pour Tout
sans vouloir abuser
Sans vouloir abuser à mon tour, est il possible d'avoir toutes les informations dès maintenant?
Pour comparer les doublons, encore faut il savoir quelles données comparer...
Si la comparaison, par exemple, de la cellule AN7 avec toute la colonne B de la feuille Patrimoine suffit à éviter les doublons, s'il faut, a contrario, comparer toutes les cellules de AN7:BG7 avec le contenu des cellules de la feuille Patrimoine.........
Sans vouloir abuser à mon tour, est il possible d'avoir toutes les informations dès maintenant?
Pour comparer les doublons, encore faut il savoir quelles données comparer...
Si la comparaison, par exemple, de la cellule AN7 avec toute la colonne B de la feuille Patrimoine suffit à éviter les doublons, s'il faut, a contrario, comparer toutes les cellules de AN7:BG7 avec le contenu des cellules de la feuille Patrimoine.........
Oui bien sûr ... Désolé mais j'ai du mal à fonctionner sur le forum ... Il est bien évident que vous n'êtes pas dans ma réflexion .. Il faut que je m'y fasse ! Encore mille excuses !
Donc les cellules à comparer sont les cellules AN7,AO7,AP7,AE7 d'Erola-6.xlsm avec respectivement les colonnes B,C, D, E d'Opérations.xlsx !
D'avance merci de votre aide !
Donc les cellules à comparer sont les cellules AN7,AO7,AP7,AE7 d'Erola-6.xlsm avec respectivement les colonnes B,C, D, E d'Opérations.xlsx !
D'avance merci de votre aide !
687 lignes occupées aujourd'hui toute la feuille à terme .... excel 2007 soit 1 048 576 ... si possible !
ok.
Bon alors mon bon conseil du jour : n'utilise pas Excel.
Pour exemple, un fichier, possédant une feuille remplit de données (de type string avec un max de 9 caractères dans les cellules) sur 20 colonnes et 1 000 000 de lignes, "pèse" 86,1 Mo (90 335 903 octets). Je viens de tester.
Rien que pour enregistrer une petite modif, avec mon pc qui est pourtant une foudre de guerre, j'en ai eu pour plus de 45 secondes.....
A ouvrir, manipuler d'autres fichiers, tout cela via un réseau... C'est le plantage assuré!
Pour faire ce que tu souhaites, utilise une véritable base de données, pas un classeur Excel.
Bon alors mon bon conseil du jour : n'utilise pas Excel.
Pour exemple, un fichier, possédant une feuille remplit de données (de type string avec un max de 9 caractères dans les cellules) sur 20 colonnes et 1 000 000 de lignes, "pèse" 86,1 Mo (90 335 903 octets). Je viens de tester.
Rien que pour enregistrer une petite modif, avec mon pc qui est pourtant une foudre de guerre, j'en ai eu pour plus de 45 secondes.....
A ouvrir, manipuler d'autres fichiers, tout cela via un réseau... C'est le plantage assuré!
Pour faire ce que tu souhaites, utilise une véritable base de données, pas un classeur Excel.
Après réflexion ... non 2000 lignes maxi ... Cela fera 10 ans et d'ici là la quille j'espère !!! Et toute la boite bosse sur Excel ... Alors je suis obligé d'y mordre malgré mes nombreuses sollicitations à changer !
Je ne suis pas là cet aprème, donc une solution demain.
Par contre, passer de 1000000 de lignes à 2000 c'est radical!
Ah oui, j'oubliais, n'y a t'il pas une erreur ici :
Donc les cellules à comparer sont les cellules AN7,AO7,AP7,AE7 d'Erola-6.xlsm avec respectivement les colonnes B,C, D, E d'Opérations.xlsx !
AE7??? Pas AQ7 par hasard???............
Par contre, passer de 1000000 de lignes à 2000 c'est radical!
Ah oui, j'oubliais, n'y a t'il pas une erreur ici :
Donc les cellules à comparer sont les cellules AN7,AO7,AP7,AE7 d'Erola-6.xlsm avec respectivement les colonnes B,C, D, E d'Opérations.xlsx !
AE7??? Pas AQ7 par hasard???............
Oui ... C'est moi qui avait m... par contre je n'ai pas le résultat escompté ... Pourquoi :
a) Mon fichier de base s'appelle Erola,
b) Après création de répertoire, il s'enregistre sous le nom de "323- Lille" par exemple.
c) Quand j'ouvre Lola, je dois pouvoir non plus aller chercher dans Erola les infos nécessaires mais dans "323-Lille"! Voilà pourquoi j'avais pensé passer par un fichier intermédiaire qui enregistrait le "323-Lille" comme variable que je rapatriais ensuite dans Lola pour faire fonctionner les formules grâce à Indirect() et l'enregistrer grâce au code que vous m'avez fourni ce matin ... A moins qu'il y ait une possibilité directe ????
a) Mon fichier de base s'appelle Erola,
b) Après création de répertoire, il s'enregistre sous le nom de "323- Lille" par exemple.
c) Quand j'ouvre Lola, je dois pouvoir non plus aller chercher dans Erola les infos nécessaires mais dans "323-Lille"! Voilà pourquoi j'avais pensé passer par un fichier intermédiaire qui enregistrait le "323-Lille" comme variable que je rapatriais ensuite dans Lola pour faire fonctionner les formules grâce à Indirect() et l'enregistrer grâce au code que vous m'avez fourni ce matin ... A moins qu'il y ait une possibilité directe ????
Oui .... Heureusement que vous suivez ... C'est bien AQ7 et non AE7 ! Oui passer à 2000 lignes est radical mais à raison de 15à20 lignes par an cela laisse de la marge à mes successeurs .... Et d'ici là peut-être les boss auront-ils voulu abandonner excel au profit d'access ... Bon après-midi, profitez du beau temps si vous le pouvez et bien à Vous !
JPierre
JPierre