J'utilise la macro ci-dessous (développée par Bruno) qui consiste à
copier/coller ou couper/coller certaines cellules d'une feuil1 pour les
mettre en feuil2. Les deu feuilles sont identiques.
Mon soucis est que le collage en feuil2 se fait que sur la première ligne au
lieu de se faire ligne 93 puis ligne 95 (si ligne 93 n'est pas vide, ...).
Ainsi j'écrase toujours la première ligne.
Quelqu'un peut-il m'aider à remédier à ce problème ?
D'avance merci, la macro est ci-dessous
If Target.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
If Not Intersect(Target,
Range("AM93,AM95,AM97,AM99,AM101,AM103,AM105,AM107,AM109,AM111")) Is Nothing
Then
question = MsgBox("Est-ce un NEW ?", vbYesNo, Application.UserName)
If question = vbYes Then
question = MsgBox("La facturation se fait-elle sur 12 mois ?",
4, Application.UserName)
If question = 7 Then
Cells(Target.Row + 1, Target.Column) = "NEW": Exit Sub
Else
Application.EnableEvents = False
For lig = 93 To 112 Step 2
If Feuil2.Cells(lig, 2) = "" Then Exit For
Next
If lig > 112 Then MsgBox "complet": Application.EnableEvents
= True: Exit Sub
mycol = Array(0, 1, 9, 24, 39, 63, 65)
For k = 1 To 6
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row,
mycol(k))
If Feuil1.Range("AF" & Target.Row) = "" Then
Feuil1.Cells(Target.Row, mycol(k)) = ""
Next
Target.Value = ""
End If
Application.EnableEvents = True
End If
End If
J'utilise la macro ci-dessous (développée par Bruno) qui consiste à copier/coller ou couper/coller certaines cellules d'une feuil1 pour les mettre en feuil2. Les deu feuilles sont identiques. Mon soucis est que le collage en feuil2 se fait que sur la première ligne au lieu de se faire ligne 93 puis ligne 95 (si ligne 93 n'est pas vide, ...). Ainsi j'écrase toujours la première ligne.
Quelqu'un peut-il m'aider à remédier à ce problème ?
D'avance merci, la macro est ci-dessous If Target.Count > 1 Then Exit Sub If Target.Value = "" Then Exit Sub
If Not Intersect(Target, Range("AM93,AM95,AM97,AM99,AM101,AM103,AM105,AM107,AM109,AM111")) Is Nothing Then question = MsgBox("Est-ce un NEW ?", vbYesNo, Application.UserName) If question = vbYes Then question = MsgBox("La facturation se fait-elle sur 12 mois ?", 4, Application.UserName) If question = 7 Then Cells(Target.Row + 1, Target.Column) = "NEW": Exit Sub Else Application.EnableEvents = False For lig = 93 To 112 Step 2 If Feuil2.Cells(lig, 2) = "" Then Exit For Next If lig > 112 Then MsgBox "complet": Application.EnableEvents = True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 63, 65) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" End If Application.EnableEvents = True End If End If
NICOH
Bonjour,
Pourquoi utiliser une variable pour cibler la copie puisque les feuilles
sont identiques !
au lieu de :
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k))
J'utilise la macro ci-dessous (développée par Bruno) qui consiste à
copier/coller ou couper/coller certaines cellules d'une feuil1 pour les
mettre en feuil2. Les deu feuilles sont identiques.
Mon soucis est que le collage en feuil2 se fait que sur la première ligne au
lieu de se faire ligne 93 puis ligne 95 (si ligne 93 n'est pas vide, ...).
Ainsi j'écrase toujours la première ligne.
Quelqu'un peut-il m'aider à remédier à ce problème ?
D'avance merci, la macro est ci-dessous
If Target.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
If Not Intersect(Target,
Range("AM93,AM95,AM97,AM99,AM101,AM103,AM105,AM107,AM109,AM111")) Is Nothing
Then
question = MsgBox("Est-ce un NEW ?", vbYesNo, Application.UserName)
If question = vbYes Then
question = MsgBox("La facturation se fait-elle sur 12 mois ?",
4, Application.UserName)
If question = 7 Then
Cells(Target.Row + 1, Target.Column) = "NEW": Exit Sub
Else
Application.EnableEvents = False
For lig = 93 To 112 Step 2
If Feuil2.Cells(lig, 2) = "" Then Exit For
Next
If lig > 112 Then MsgBox "complet": Application.EnableEvents
= True: Exit Sub
mycol = Array(0, 1, 9, 24, 39, 63, 65)
For k = 1 To 6
Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row,
mycol(k))
If Feuil1.Range("AF" & Target.Row) = "" Then
Feuil1.Cells(Target.Row, mycol(k)) = ""
Next
Target.Value = ""
End If
Application.EnableEvents = True
End If
End If
J'utilise la macro ci-dessous (développée par Bruno) qui consiste à copier/coller ou couper/coller certaines cellules d'une feuil1 pour les mettre en feuil2. Les deu feuilles sont identiques. Mon soucis est que le collage en feuil2 se fait que sur la première ligne au lieu de se faire ligne 93 puis ligne 95 (si ligne 93 n'est pas vide, ...). Ainsi j'écrase toujours la première ligne.
Quelqu'un peut-il m'aider à remédier à ce problème ?
D'avance merci, la macro est ci-dessous If Target.Count > 1 Then Exit Sub If Target.Value = "" Then Exit Sub
If Not Intersect(Target, Range("AM93,AM95,AM97,AM99,AM101,AM103,AM105,AM107,AM109,AM111")) Is Nothing Then question = MsgBox("Est-ce un NEW ?", vbYesNo, Application.UserName) If question = vbYes Then question = MsgBox("La facturation se fait-elle sur 12 mois ?", 4, Application.UserName) If question = 7 Then Cells(Target.Row + 1, Target.Column) = "NEW": Exit Sub Else Application.EnableEvents = False For lig = 93 To 112 Step 2 If Feuil2.Cells(lig, 2) = "" Then Exit For Next If lig > 112 Then MsgBox "complet": Application.EnableEvents = True: Exit Sub mycol = Array(0, 1, 9, 24, 39, 63, 65) For k = 1 To 6 Feuil2.Cells(lig, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k)) If Feuil1.Range("AF" & Target.Row) = "" Then Feuil1.Cells(Target.Row, mycol(k)) = "" Next Target.Value = "" End If Application.EnableEvents = True End If End If