Importer des lignes d'un classeur vers un autre sous condition
Résolu/Fermé
Ippo
-
16 déc. 2014 à 15:10
Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 - 19 déc. 2014 à 17:23
Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 - 19 déc. 2014 à 17:23
A voir également:
- Importer des lignes d'un classeur vers un autre sous condition
- Excel cellule couleur si condition texte - Guide
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Importer favoris chrome - Guide
- Importer favoris firefox - Guide
- Importer contact carte sim - Guide
21 réponses
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
16 déc. 2014 à 22:48
16 déc. 2014 à 22:48
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
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
17 déc. 2014 à 14:43
17 déc. 2014 à 14:43
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
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
17 déc. 2014 à 15:10
17 déc. 2014 à 15:10
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.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
17 déc. 2014 à 15:43
17 déc. 2014 à 15:43
Bonjour,
Merci pour l'information.
Cependant encore une fois, votre code (idem au code du lien de votre message), ne réalise en aucun cas ce que vous avez demandez au départ.... Soit copier les lignes classeur en cours vers un autre classeur!
Salutations.
Le Pingou
Merci pour l'information.
Cependant encore une fois, votre code (idem au code du lien de votre message), ne réalise en aucun cas ce que vous avez demandez au départ.... Soit copier les lignes classeur en cours vers un autre classeur!
Salutations.
Le Pingou
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
17 déc. 2014 à 15:29
17 déc. 2014 à 15:29
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 ?
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
Modifié par Le Pingou le 17/12/2014 à 16:09
Modifié par Le Pingou le 17/12/2014 à 16:09
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é
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
17 déc. 2014 à 16:35
17 déc. 2014 à 16:35
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
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
Modifié par Le Pingou le 17/12/2014 à 16:52
Modifié par Le Pingou le 17/12/2014 à 16:52
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,
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
18 déc. 2014 à 09:07
18 déc. 2014 à 09:07
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,
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
18 déc. 2014 à 11:02
18 déc. 2014 à 11:02
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
SABHARZALI
Messages postés
21
Date d'inscription
mercredi 17 décembre 2014
Statut
Membre
Dernière intervention
28 janvier 2016
19 déc. 2014 à 14:25
19 déc. 2014 à 14:25
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
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
>
SABHARZALI
Messages postés
21
Date d'inscription
mercredi 17 décembre 2014
Statut
Membre
Dernière intervention
28 janvier 2016
19 déc. 2014 à 15:55
19 déc. 2014 à 15:55
SABHARZALI
Messages postés
21
Date d'inscription
mercredi 17 décembre 2014
Statut
Membre
Dernière intervention
28 janvier 2016
>
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
19 déc. 2014 à 16:44
19 déc. 2014 à 16:44
y a pas de mal.j espère que rien de grave pour ne pas pouvoir me répondre.
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.
Bonjour,
C'est bon j'ai supprimé quelque ligne du code est ça marche. Encore un très grand merci à vous pour votre aide qui m'a été très précieuse.
Bonne journée et à bientôt.
C'est bon j'ai supprimé quelque ligne du code est ça marche. Encore un très grand merci à vous pour votre aide qui m'a été très précieuse.
Bonne journée et à bientôt.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
18 déc. 2014 à 22:15
18 déc. 2014 à 22:15
Bonjour,
Merci, content pour vous.
Merci, content pour vous.