Importer des lignes d'un classeur vers un autre sous condition
Résolu
Ippo
-
Le Pingou Messages postés 12638 Statut Contributeur -
Le Pingou Messages postés 12638 Statut Contributeur -
Bonjour,
J'ai beau chercher je ne trouve pas mon bonheur donc je tente ma chance. J'ai plusieurs plan d'action sur différent classeur et je voudrais pour importer sur un autre classeurs excel les lignes de mes classeurs ou une date est en approche (de 7 jours) ou dépassé.
Ex : j'ai un classeur nommé plan d'action 1 avec 20 lignes. Les lignes 7-8-9-10 on eu date dépassant celle d'aujourd'hui.
Sur un classeur nommé récap, je voudrais pour les copier (via une macro).
Merci de me dire si cela est possible.
J'ai beau chercher je ne trouve pas mon bonheur donc je tente ma chance. J'ai plusieurs plan d'action sur différent classeur et je voudrais pour importer sur un autre classeurs excel les lignes de mes classeurs ou une date est en approche (de 7 jours) ou dépassé.
Ex : j'ai un classeur nommé plan d'action 1 avec 20 lignes. Les lignes 7-8-9-10 on eu date dépassant celle d'aujourd'hui.
Sur un classeur nommé récap, je voudrais pour les copier (via une macro).
Merci de me dire si cela est possible.
A voir également:
- Importer des lignes d'un classeur vers un autre sous condition
- Votre appareil ne dispose pas des correctifs de qualité et de sécurité importants - Guide
- Excel cellule couleur si condition texte - Guide
- Importer favoris chrome - Guide
- Partager des photos en ligne - Guide
- Importer favoris firefox - Guide
21 réponses
Bonjour,
C'est tout à fait possible.
Le code à adapté
C'est tout à fait possible.
Le code à adapté
Sub copieversautreclas()
Set autrecla = Workbooks("NomAutreClasseur.xlsx")
Rows("7:10").Copy Destination:=autrecla.Sheets("Feuil1").Range("A" & Sheets("Feuil1").Range("A65536").End(xlUp).Row + 1)
End Sub
Bonjour et merci pour ta réponse,
J'ai cherché hier et je suis tombé sur un code qui fait exactement ce que je voudrais. Mlaheuresement quand j'essaye de l'adapter il y a une erreur d'éxécution code 9. Pourtant mon fichier se nomme bien rapatrimentaction. Avez-vous une idée d'ou cela peut venir ?
Merci
code :
Sub a()
Dim Référence As String, Fichier_traité As String, Feuille_traitée As String, DerLigFeuille_traitée As Integer, DerLigA_rapatrimentaction As Integer, DerLigN_rapatrimentaction As Integer
Dim i As Integer, j As Integer, k As Integer, Date_limite As Date
Dim a As String, b As Date, c As String, d As String, e As Currency
Application.ScreenUpdating = False
Call Effacer
Date_limite = Range("A1")
DerLigN_rapatrimentaction = ActiveSheet.Range("N" & Rows.Count).End(xlUp).Row
For i = 3 To DerLigN_rapatrimentaction
Référence = Range("N2")
Fichier_traité = Range("N" & i).Value
Workbooks.Open Filename:="\Branches\DACH535\FACILITY\Sécurité\Plan D'action Villeparisis\" & Référence & Fichier_traité 'CHEMIN YVOUILLE
'''Workbooks.Open Filename:="C:\ .............. & Référence 'CHEMIN AURELIEN
For j = 1 To Sheets.Count
Sheets(j).Activate
Feuille_traitée = Sheets(j).Name
DerLigFeuille_traitée = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
For k = 10 To DerLigFeuille_traitée
Range("A" & k).Select
If ActiveCell.Offset(0, 1) < Date_limite And ActiveCell.Offset(0, 7) <= 0 Then
a = ActiveCell.Offset(0, 0)
b = ActiveCell.Offset(0, 1)
c = ActiveCell.Offset(0, 2)
d = ActiveCell.Offset(0, 3)
e = ActiveCell.Offset(0, 6)
Windows("rapatrimentaction.xls").Activate DerLigA_rapatrimentaction = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
Range("A" & DerLigA_rapatrimentaction + 1) = Fichier_traité
Range("B" & DerLigA_rapatrimentaction + 1) = Feuille_traitée
Range("C" & DerLigA_rapatrimentaction + 1) = a
Range("D" & DerLigA_rapatrimentaction + 1) = b
Range("E" & DerLigA_rapatrimentaction + 1) = c
Range("F" & DerLigA_rapatrimentaction + 1) = d
Range("G" & DerLigA_rapatrimentaction + 1) = e
Windows(Référence & Fichier_traité & ".xls").Activate
End If
Next
Next
ActiveWorkbook.Close SaveChanges:=False
Next
ActiveWindow.SmallScroll Down:=-10000
Range("A1").Select
End Sub
J'ai cherché hier et je suis tombé sur un code qui fait exactement ce que je voudrais. Mlaheuresement quand j'essaye de l'adapter il y a une erreur d'éxécution code 9. Pourtant mon fichier se nomme bien rapatrimentaction. Avez-vous une idée d'ou cela peut venir ?
Merci
code :
Sub a()
Dim Référence As String, Fichier_traité As String, Feuille_traitée As String, DerLigFeuille_traitée As Integer, DerLigA_rapatrimentaction As Integer, DerLigN_rapatrimentaction As Integer
Dim i As Integer, j As Integer, k As Integer, Date_limite As Date
Dim a As String, b As Date, c As String, d As String, e As Currency
Application.ScreenUpdating = False
Call Effacer
Date_limite = Range("A1")
DerLigN_rapatrimentaction = ActiveSheet.Range("N" & Rows.Count).End(xlUp).Row
For i = 3 To DerLigN_rapatrimentaction
Référence = Range("N2")
Fichier_traité = Range("N" & i).Value
Workbooks.Open Filename:="\Branches\DACH535\FACILITY\Sécurité\Plan D'action Villeparisis\" & Référence & Fichier_traité 'CHEMIN YVOUILLE
'''Workbooks.Open Filename:="C:\ .............. & Référence 'CHEMIN AURELIEN
For j = 1 To Sheets.Count
Sheets(j).Activate
Feuille_traitée = Sheets(j).Name
DerLigFeuille_traitée = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
For k = 10 To DerLigFeuille_traitée
Range("A" & k).Select
If ActiveCell.Offset(0, 1) < Date_limite And ActiveCell.Offset(0, 7) <= 0 Then
a = ActiveCell.Offset(0, 0)
b = ActiveCell.Offset(0, 1)
c = ActiveCell.Offset(0, 2)
d = ActiveCell.Offset(0, 3)
e = ActiveCell.Offset(0, 6)
Windows("rapatrimentaction.xls").Activate DerLigA_rapatrimentaction = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
Range("A" & DerLigA_rapatrimentaction + 1) = Fichier_traité
Range("B" & DerLigA_rapatrimentaction + 1) = Feuille_traitée
Range("C" & DerLigA_rapatrimentaction + 1) = a
Range("D" & DerLigA_rapatrimentaction + 1) = b
Range("E" & DerLigA_rapatrimentaction + 1) = c
Range("F" & DerLigA_rapatrimentaction + 1) = d
Range("G" & DerLigA_rapatrimentaction + 1) = e
Windows(Référence & Fichier_traité & ".xls").Activate
End If
Next
Next
ActiveWorkbook.Close SaveChanges:=False
Next
ActiveWindow.SmallScroll Down:=-10000
Range("A1").Select
End Sub
Bonjour,
Sans détaillé votre code, cela m'étonne qu'il réalise ce que vous avez demandez au départ.... Soit copier les lignes choisies du classeur en cours vers un autre classeur!
Concernant l'erreur, sans savoir sur quelle ligne de code l'erreur s'est produite, je n'ai aucune chance de vous en dire plus.
Sans détaillé votre code, cela m'étonne qu'il réalise ce que vous avez demandez au départ.... Soit copier les lignes choisies du classeur en cours vers un autre classeur!
Concernant l'erreur, sans savoir sur quelle ligne de code l'erreur s'est produite, je n'ai aucune chance de vous en dire plus.
Pardon je n'avais pas précisé, c'est la ligne qui est en gras
(Windows("rapatrimentaction.xls").Activate)
L'arreur affiché est : erreur d'éxécution code 9
Pour l'instant il ne copie rien car j'ai l'erreur, ce qui a fonctionné c'est les fichiers ou ce code était mis.
L'avantage du code c'est que la copie ce ait sans ouvrir le classeur.
(Windows("rapatrimentaction.xls").Activate)
L'arreur affiché est : erreur d'éxécution code 9
Pour l'instant il ne copie rien car j'ai l'erreur, ce qui a fonctionné c'est les fichiers ou ce code était mis.
L'avantage du code c'est que la copie ce ait sans ouvrir le classeur.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Merci de préciser le nom du classeur de travail (celui ou vous copier les lignes) et le nom de celui ou vous coller ces lignes... !
Note : pour ceci : L'avantage du code c'est que la copie ce ait sans ouvrir le classeur.
Ce n'est pas possible avec le code que vous présentez et de plus il y a une instruction [Workbooks.Open Filename:="\Branches\DACH535\FACILITY............] qui justement ouvre un classeur
Merci de préciser le nom du classeur de travail (celui ou vous copier les lignes) et le nom de celui ou vous coller ces lignes... !
Note : pour ceci : L'avantage du code c'est que la copie ce ait sans ouvrir le classeur.
Ce n'est pas possible avec le code que vous présentez et de plus il y a une instruction [Workbooks.Open Filename:="\Branches\DACH535\FACILITY............] qui justement ouvre un classeur
Il est vrai que lorsque j'active la macro le fichier s'ouvre mais pas avec le code originel. Dispo ici : http://forum.excel-pratique.com/excel/recherche-donnees-dans-plusieurs-classeurs-et-onglets-t21464-10.html
Je cherche à copier les donnée d'un fichier nommé (2014_Plan d'action HSE Villeparisis) vers le classeur rapatrimentaction.xls
Merci pour votre aide.
Je cherche à copier les donnée d'un fichier nommé (2014_Plan d'action HSE Villeparisis) vers le classeur rapatrimentaction.xls
Merci pour votre aide.
Bonjour,
J'ai oublié une partie de ma réponse :
(Windows("rapatrimentaction.xls").Activate)
Si le nom du classeur est correct c'est une chose, mais il n'est pas possible d'activer un classeur qui n'est pas ouvert... !
J'ai oublié une partie de ma réponse :
(Windows("rapatrimentaction.xls").Activate)
Si le nom du classeur est correct c'est une chose, mais il n'est pas possible d'activer un classeur qui n'est pas ouvert... !
Ah j'ai mal formulé ma question au temps pour moi. L'objectif est de copier certaine ligne de fichier excel designés vers un autre.
A therme même si j'ai plusieurs macro je voudrais copier plusieurs ligne de plusieurs classeur vers un classeur unique.
Cela est il faisable ?
A therme même si j'ai plusieurs macro je voudrais copier plusieurs ligne de plusieurs classeur vers un classeur unique.
Cela est il faisable ?
Bonjour,
Oui tout à fait.
Mais pas avec le code présenté ..... certainement pas adapté à vos besoins qui eux ne sont pas précisées ou que partiellement.
Quelle est le critère de ligne ou partie de ligne qui sont à copier et ensuite ou les insérer dans le classeur [rapatrimentaction.xls] .... !
Probablement une procédure suffit voir 2 ... !
Ou se trouve votre macro principale...?
Salutations.
Le Pingou
Oui tout à fait.
Mais pas avec le code présenté ..... certainement pas adapté à vos besoins qui eux ne sont pas précisées ou que partiellement.
Quelle est le critère de ligne ou partie de ligne qui sont à copier et ensuite ou les insérer dans le classeur [rapatrimentaction.xls] .... !
Probablement une procédure suffit voir 2 ... !
Ou se trouve votre macro principale...?
Salutations.
Le Pingou
J'aimerai une macro qui va me chercher dans le classeur base (http://cjoint.com/?DLrquVnBQxO) toute les ligne ou il y a une date inférieure à la date d'aujourd'hui et me les copies sur le classeur récup (http://cjoint.com/?DLrqxjkAZJ0).
Si il le faut je peux préciser une colonne ou aller vérifier la date car elle ne bougera pas. Si possible j'aimerais éviter de devoir ouvir le classeur base pour faire la copie.
Merci pour le temps passé
Si il le faut je peux préciser une colonne ou aller vérifier la date car elle ne bougera pas. Si possible j'aimerais éviter de devoir ouvir le classeur base pour faire la copie.
Merci pour le temps passé
Bonjour,
Merci et bonjour....
Donc la procédure (macro) dans le classeur [recup] Oui / Non
Les 2 classeurs sont dans le même répertoire Oui / non
La colonne de choix/référence est la [D] ou la [G] ?
Les données sont toujours dans la feuille [Sheet1] du classeur [Base] oui / non
Dès réception des réponses je vous prépare une proposition.
Merci et bonjour....
Donc la procédure (macro) dans le classeur [recup] Oui / Non
Les 2 classeurs sont dans le même répertoire Oui / non
La colonne de choix/référence est la [D] ou la [G] ?
Les données sont toujours dans la feuille [Sheet1] du classeur [Base] oui / non
Dès réception des réponses je vous prépare une proposition.
Bonjour,
Donc la procédure (macro) dans le classeur [recup] Oui
Les 2 classeurs sont dans le même répertoire non
La colonne de choix/référence est la [D]
Les données sont toujours dans la feuille [Sheet1] du classeur [Base] oui
Je pourrais dupliquer la manipulation sur d'autre classeurs par la suite ?
Merci
Donc la procédure (macro) dans le classeur [recup] Oui
Les 2 classeurs sont dans le même répertoire non
La colonne de choix/référence est la [D]
Les données sont toujours dans la feuille [Sheet1] du classeur [Base] oui
Je pourrais dupliquer la manipulation sur d'autre classeurs par la suite ?
Merci
Bonjour,
Si possible j'aimerais éviter de devoir ouvir le classeur base pour faire la copie
Quelle en est la raison ... ?
Les 2 classeurs sont dans le même répertoire non
D'accord, mais dans ce cas il faut impérativement savoir ou se trouve le classeur....?
Je pourrais dupliquer la manipulation sur d'autre classeurs par la suite ?
Pourquoi......
Salutations.
Le Pingou
Si possible j'aimerais éviter de devoir ouvir le classeur base pour faire la copie
Quelle en est la raison ... ?
Les 2 classeurs sont dans le même répertoire non
D'accord, mais dans ce cas il faut impérativement savoir ou se trouve le classeur....?
Je pourrais dupliquer la manipulation sur d'autre classeurs par la suite ?
Pourquoi......
Salutations.
Le Pingou
Bonjour,
Si possible j'aimerais éviter de devoir ouvir le classeur base pour faire la copie
Quelle en est la raison ... ? Le but est d'avoir un synthèse assez rapide des actions en retard si j'ouvre le fichier je n'ai qu'a regarder dessus.
Les 2 classeurs sont dans le même répertoire non
D'accord, mais dans ce cas il faut impérativement savoir ou se trouve le classeur....?
Oui c'est possible, il ne changera pas de répertoire.
Je pourrais dupliquer la manipulation sur d'autre classeurs par la suite ?
Pourquoi......
J'aimerai dupliquer la copie d'autre fichier une fois celui la fini toujours sur mon classeur récup.
Merci,
Si possible j'aimerais éviter de devoir ouvir le classeur base pour faire la copie
Quelle en est la raison ... ? Le but est d'avoir un synthèse assez rapide des actions en retard si j'ouvre le fichier je n'ai qu'a regarder dessus.
Les 2 classeurs sont dans le même répertoire non
D'accord, mais dans ce cas il faut impérativement savoir ou se trouve le classeur....?
Oui c'est possible, il ne changera pas de répertoire.
Je pourrais dupliquer la manipulation sur d'autre classeurs par la suite ?
Pourquoi......
J'aimerai dupliquer la copie d'autre fichier une fois celui la fini toujours sur mon classeur récup.
Merci,
Bonjour,
Je vois à l'instant votre information.
Cependant j'ai déjà mis en place la proposition suivante :
Un classeur de commande qui permet de saisir les diverses références puis filtre les données à copier dans le classeur de base et ensuite créer un classeur avec le nom référencé plus un numéro incrémenté qui est enregistré dans le répertoire choisi. Donc pas de duplication nécessaire.... !
Je dois finaliser le tout, ayant d'autres priorités, se sera pour la fin de journée,
Je vois à l'instant votre information.
Cependant j'ai déjà mis en place la proposition suivante :
Un classeur de commande qui permet de saisir les diverses références puis filtre les données à copier dans le classeur de base et ensuite créer un classeur avec le nom référencé plus un numéro incrémenté qui est enregistré dans le répertoire choisi. Donc pas de duplication nécessaire.... !
Je dois finaliser le tout, ayant d'autres priorités, se sera pour la fin de journée,
Bonjour,
Pas de problème, c'est deja tres gentil à vous de répondre à ma problématique.
Bonne journée,
Pas de problème, c'est deja tres gentil à vous de répondre à ma problématique.
Bonne journée,
Bonjour,
J'ai un peu d'avance, voici la proposition à essayer selon indication sur la feuille du classeur [Ippo_ccm_CmdeRecup]....
La proposition : https://www.cjoint.com/?3LsljfIBnjt
J'ai un peu d'avance, voici la proposition à essayer selon indication sur la feuille du classeur [Ippo_ccm_CmdeRecup]....
La proposition : https://www.cjoint.com/?3LsljfIBnjt
vraiment c'est gentil de votre part. de donner de l'aide et c'est la raison pour laquelle je m'adresse à vous pour m'aider si ça vous dérange pas . j'ai à peu pret le meme projet mais la seule difference c'est que mon travail est dans le meme classeur et que le récap sera dans une nouvelle feuille de calcul du meme classeur .enfait je suis en train de faire le suivi de payement de nos clients et donc j'ai des reglements qui arrivent à leurs échéance et ne sont pas encore versé et je souhaite avoir un récap qui me permet d'avoir un visuel sur le nom du client, n° de facture et le montant non encaissé si la date d'échéance< date aujourd'hui et l'état de la facture est " en cours/pas encaissé" https://www.cjoint.com/?DLtoFTKJXp3 m6 pour votre collaboration d'avance et bonne continuation surtout
Bonjour,
Chapeau bas c'est impressionant. Le code marche à merveille. Merci.
Lorsque je lance la macro j'ai bien un nouveau fichier qui se crée, est il possible que la copie se fasse plutôt sur le feuil "RecupDuJour" du fichier Ippo_ccm_CmdeRecup ?
Merci beaucoup pour ce travail.
Chapeau bas c'est impressionant. Le code marche à merveille. Merci.
Lorsque je lance la macro j'ai bien un nouveau fichier qui se crée, est il possible que la copie se fasse plutôt sur le feuil "RecupDuJour" du fichier Ippo_ccm_CmdeRecup ?
Merci beaucoup pour ce travail.