Mon problème est le suivant :
Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai
besoin de trouver la dernière ligne écrite pour créer une facture sur une
autre feuille du même fichier. A partir de là, si cette ligne contient un X
dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L),
copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au
fichier original (Liste) et me déplacer
d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour -
un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10).
Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 -
N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert()
'sélection de la colonne J
Columns("J:J").Select
'recherche de la première cellule vide dans la colonne J
Range("J2").Activate
Selection.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:=False).Activate
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 2 cellules)
Range("L5").Select
Selection.Copy
Sheets("DCI").Select
Range("D19:I19").Select
ActiveSheet.Paste
Sheets("Liste").Select
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 1 cellule)
Range("M5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DCI").Select
Range("D16:I16").Select
ActiveSheet.Paste
Sheets("Liste").Select
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 1 cellule)
Range("N5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DCI").Select
Range("D10:I10").Select
ActiveSheet.Paste
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Elliac
Bonjour,
Sub transfert()
Range("j50000").End(XlUp).Offset(1).Select ActiveCell.Offset(,1).Copy Sheets("DCI").Range("D19:I19") ActiveCell.Offset(,2).Copy Sheets("DCI").Range("D16:I16") ActiveCell.Offset(,3).Copy Sheets("DCI").Range("D10:I10") End Sub
Camille
"Congelator" wrote:
Salut à tous
Mon problème est le suivant : Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai besoin de trouver la dernière ligne écrite pour créer une facture sur une autre feuille du même fichier. A partir de là, si cette ligne contient un X dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L), copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au fichier original (Liste) et me déplacer d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour - un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10). Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 - N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert() 'sélection de la colonne J Columns("J:J").Select 'recherche de la première cellule vide dans la colonne J Range("J2").Activate Selection.Find(What:="", After:¬tiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:úlse).Activate 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 2 cellules) Range("L5").Select Selection.Copy Sheets("DCI").Select Range("D19:I19").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("M5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D16:I16").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("N5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D10:I10").Select ActiveSheet.Paste End Sub
Merci d'avance pour le coup de main.
PS : j'ai également mis cette question sous "VBA"
-- Céd / Lausanne
Bonjour,
Sub transfert()
Range("j50000").End(XlUp).Offset(1).Select
ActiveCell.Offset(,1).Copy Sheets("DCI").Range("D19:I19")
ActiveCell.Offset(,2).Copy Sheets("DCI").Range("D16:I16")
ActiveCell.Offset(,3).Copy Sheets("DCI").Range("D10:I10")
End Sub
Camille
"Congelator" wrote:
Salut à tous
Mon problème est le suivant :
Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai
besoin de trouver la dernière ligne écrite pour créer une facture sur une
autre feuille du même fichier. A partir de là, si cette ligne contient un X
dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L),
copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au
fichier original (Liste) et me déplacer
d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour -
un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10).
Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 -
N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert()
'sélection de la colonne J
Columns("J:J").Select
'recherche de la première cellule vide dans la colonne J
Range("J2").Activate
Selection.Find(What:="", After:¬tiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Activate
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 2 cellules)
Range("L5").Select
Selection.Copy
Sheets("DCI").Select
Range("D19:I19").Select
ActiveSheet.Paste
Sheets("Liste").Select
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 1 cellule)
Range("M5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DCI").Select
Range("D16:I16").Select
ActiveSheet.Paste
Sheets("Liste").Select
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 1 cellule)
Range("N5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DCI").Select
Range("D10:I10").Select
ActiveSheet.Paste
End Sub
Range("j50000").End(XlUp).Offset(1).Select ActiveCell.Offset(,1).Copy Sheets("DCI").Range("D19:I19") ActiveCell.Offset(,2).Copy Sheets("DCI").Range("D16:I16") ActiveCell.Offset(,3).Copy Sheets("DCI").Range("D10:I10") End Sub
Camille
"Congelator" wrote:
Salut à tous
Mon problème est le suivant : Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai besoin de trouver la dernière ligne écrite pour créer une facture sur une autre feuille du même fichier. A partir de là, si cette ligne contient un X dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L), copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au fichier original (Liste) et me déplacer d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour - un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10). Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 - N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert() 'sélection de la colonne J Columns("J:J").Select 'recherche de la première cellule vide dans la colonne J Range("J2").Activate Selection.Find(What:="", After:¬tiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:úlse).Activate 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 2 cellules) Range("L5").Select Selection.Copy Sheets("DCI").Select Range("D19:I19").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("M5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D16:I16").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("N5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D10:I10").Select ActiveSheet.Paste End Sub
Merci d'avance pour le coup de main.
PS : j'ai également mis cette question sous "VBA"
-- Céd / Lausanne
Congelator
Salut Camille,
Un grand MERCI !! ça marche !! Ce qui me tue, ce de voir qu'on peut le faire en 4 ligne et ça fonctionne alors que j'en fais des livres entiers et que ça plante... :-))
Il y a ceux qui savent et il y a les autres dont je fais partie :-((
Encore merci -- Céd / Lausanne
Bonjour,
Sub transfert()
Range("j50000").End(XlUp).Offset(1).Select ActiveCell.Offset(,1).Copy Sheets("DCI").Range("D19:I19") ActiveCell.Offset(,2).Copy Sheets("DCI").Range("D16:I16") ActiveCell.Offset(,3).Copy Sheets("DCI").Range("D10:I10") End Sub
Camille
"Congelator" wrote:
Salut à tous
Mon problème est le suivant : Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai besoin de trouver la dernière ligne écrite pour créer une facture sur une autre feuille du même fichier. A partir de là, si cette ligne contient un X dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L), copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au fichier original (Liste) et me déplacer d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour - un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10). Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 - N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert() 'sélection de la colonne J Columns("J:J").Select 'recherche de la première cellule vide dans la colonne J Range("J2").Activate Selection.Find(What:="", After:¬tiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:úlse).Activate 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 2 cellules) Range("L5").Select Selection.Copy Sheets("DCI").Select Range("D19:I19").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("M5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D16:I16").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("N5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D10:I10").Select ActiveSheet.Paste End Sub
Merci d'avance pour le coup de main.
PS : j'ai également mis cette question sous "VBA"
-- Céd / Lausanne
Salut Camille,
Un grand MERCI !! ça marche !! Ce qui me tue, ce de voir qu'on peut le faire
en 4 ligne et ça fonctionne alors que j'en fais des livres entiers et que ça
plante... :-))
Il y a ceux qui savent et il y a les autres dont je fais partie :-((
Encore merci
--
Céd / Lausanne
Bonjour,
Sub transfert()
Range("j50000").End(XlUp).Offset(1).Select
ActiveCell.Offset(,1).Copy Sheets("DCI").Range("D19:I19")
ActiveCell.Offset(,2).Copy Sheets("DCI").Range("D16:I16")
ActiveCell.Offset(,3).Copy Sheets("DCI").Range("D10:I10")
End Sub
Camille
"Congelator" wrote:
Salut à tous
Mon problème est le suivant :
Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai
besoin de trouver la dernière ligne écrite pour créer une facture sur une
autre feuille du même fichier. A partir de là, si cette ligne contient un X
dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L),
copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au
fichier original (Liste) et me déplacer
d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour -
un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10).
Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 -
N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert()
'sélection de la colonne J
Columns("J:J").Select
'recherche de la première cellule vide dans la colonne J
Range("J2").Activate
Selection.Find(What:="", After:¬tiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:= _
False, SearchFormat:úlse).Activate
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 2 cellules)
Range("L5").Select
Selection.Copy
Sheets("DCI").Select
Range("D19:I19").Select
ActiveSheet.Paste
Sheets("Liste").Select
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 1 cellule)
Range("M5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DCI").Select
Range("D16:I16").Select
ActiveSheet.Paste
Sheets("Liste").Select
'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN
MOUVEMENT (move right 1 cellule)
Range("N5").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DCI").Select
Range("D10:I10").Select
ActiveSheet.Paste
End Sub
Un grand MERCI !! ça marche !! Ce qui me tue, ce de voir qu'on peut le faire en 4 ligne et ça fonctionne alors que j'en fais des livres entiers et que ça plante... :-))
Il y a ceux qui savent et il y a les autres dont je fais partie :-((
Encore merci -- Céd / Lausanne
Bonjour,
Sub transfert()
Range("j50000").End(XlUp).Offset(1).Select ActiveCell.Offset(,1).Copy Sheets("DCI").Range("D19:I19") ActiveCell.Offset(,2).Copy Sheets("DCI").Range("D16:I16") ActiveCell.Offset(,3).Copy Sheets("DCI").Range("D10:I10") End Sub
Camille
"Congelator" wrote:
Salut à tous
Mon problème est le suivant : Dans un fichier Excel qui va être rempli tout au long de l'année, j'ai besoin de trouver la dernière ligne écrite pour créer une facture sur une autre feuille du même fichier. A partir de là, si cette ligne contient un X dans la colonne J, je veux me déplacer de 2 cellules vers la droite (L), copier son contenu et le coller dans l'autre onglet (DCI- D19), revenir au fichier original (Liste) et me déplacer d'une cellule vers la droite (M) - copier - coller (DCI- D16) - retour - un nouveau déplacement vers la droite (N) - copier - coller (DCI- D10). Dans le code que j'ai créé, la cellule est toujours définie (L15 - M15 - N15) alors que ce ne sera pas toujours la ligne 15... d'où mon SOS !!
Si quelqu'un à une solution, ça m'intéresse. Voilà le code que j'ai créé :
Sub transfert() 'sélection de la colonne J Columns("J:J").Select 'recherche de la première cellule vide dans la colonne J Range("J2").Activate Selection.Find(What:="", After:¬tiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:úlse).Activate 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 2 cellules) Range("L5").Select Selection.Copy Sheets("DCI").Select Range("D19:I19").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("M5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D16:I16").Select ActiveSheet.Paste Sheets("Liste").Select 'séletion de la cellule - NE DEVRAIT PAS CONTENIR DE REFERENCE MAIS UN MOUVEMENT (move right 1 cellule) Range("N5").Select Application.CutCopyMode = False Selection.Copy Sheets("DCI").Select Range("D10:I10").Select ActiveSheet.Paste End Sub