Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

AIDE SUR MACRO

1 réponse
Avatar
Nicoh
Bonjour à tous,

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

1 réponse

Avatar
Mousnynao
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))

essayer :
Feuil2.Cells(Target.Row, mycol(k)) = Feuil1.Cells(Target.Row, mycol(k))

Target.Row étant une valeur de type Long !

mousnynao


Bonjour à tous,

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