J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le
recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le
faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je
n'arrive pas à adapter son code :
...
If Not Intersect(Target, [AF37]) 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
[AF38] = "NEW": Exit Sub
End If
End If
End If
If Not Intersect(Target, [AF39]) 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
[AF40] = "NEW": Exit Sub
End If
End If
End If
...
J'ai essayé ceci en vain car Line ne doit pas exister :
...
If Not Intersect(Target, Range
("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub
End If
End If
End If
...
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
Jacky
Re.........
J'ai essayé ceci en vain car Line ne doit pas exister :
Si tu regardes bien dans le code proposé cette nuit, tu trouveras la réponse. ;o)) Colonne = yyyy.Column Ligne = xxxx.Row -- Salutations JJ
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
Re.........
J'ai essayé ceci en vain car Line ne doit pas exister :
Si tu regardes bien dans le code proposé cette nuit, tu trouveras la
réponse. ;o))
Colonne = yyyy.Column
Ligne = xxxx.Row
--
Salutations
JJ
"Nicoh" <Nicoh@discussions.microsoft.com> a écrit dans le message de news:
A3987E26-E050-4490-B23F-2A2F7BB4AA37@microsoft.com...
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le
recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de
le
faire sur des plages en colonne, mais là, c'est une plage sur une ligne et
je
n'arrive pas à adapter son code :
...
If Not Intersect(Target, [AF37]) 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
[AF38] = "NEW": Exit Sub
End If
End If
End If
If Not Intersect(Target, [AF39]) 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
[AF40] = "NEW": Exit Sub
End If
End If
End If
...
J'ai essayé ceci en vain car Line ne doit pas exister :
...
If Not Intersect(Target, Range
("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub
End If
End If
End If
...
J'ai essayé ceci en vain car Line ne doit pas exister :
Si tu regardes bien dans le code proposé cette nuit, tu trouveras la réponse. ;o)) Colonne = yyyy.Column Ligne = xxxx.Row -- Salutations JJ
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
RV
Bonjour Nicoh Peut-être ce code répondra-t-il à la demande:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
For x = 37 To 55 Step 2 If Not Intersect(Target, Cells(x, "AF")) 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(x + 1, "AF") = "NEW": Exit Sub End If End If End If Next
End Sub
Bon dimanche, RV
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
Bonjour Nicoh
Peut-être ce code répondra-t-il à la demande:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
For x = 37 To 55 Step 2
If Not Intersect(Target, Cells(x, "AF")) 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(x + 1, "AF") = "NEW": Exit Sub
End If
End If
End If
Next
End Sub
Bon dimanche,
RV
"Nicoh" <Nicoh@discussions.microsoft.com> a écrit dans le message de news:
A3987E26-E050-4490-B23F-2A2F7BB4AA37@microsoft.com...
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le
recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de
le
faire sur des plages en colonne, mais là, c'est une plage sur une ligne et
je
n'arrive pas à adapter son code :
...
If Not Intersect(Target, [AF37]) 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
[AF38] = "NEW": Exit Sub
End If
End If
End If
If Not Intersect(Target, [AF39]) 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
[AF40] = "NEW": Exit Sub
End If
End If
End If
...
J'ai essayé ceci en vain car Line ne doit pas exister :
...
If Not Intersect(Target, Range
("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub
End If
End If
End If
...
Bonjour Nicoh Peut-être ce code répondra-t-il à la demande:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
For x = 37 To 55 Step 2 If Not Intersect(Target, Cells(x, "AF")) 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(x + 1, "AF") = "NEW": Exit Sub End If End If End If Next
End Sub
Bon dimanche, RV
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
MichDenis
Je ne sais pas ce que tu cherches exactement, il pourrait y avoir ceci : '--------------------------------- Private Sub Worksheet_SelectionChange(ByVal Target As Range) Select Case Target.Address(0, 0) Case Is = "AF37", "AF39", "AF41", "AF43", "AF45", _ "AF47", "AF49", "AF51", "AF53", "AF55" Application.EnableEvents = False If MsgBox("Est-ce un NEW ?", vbYesNo, _ Application.UserName) = vbYes Then If MsgBox("La facturation se fait-elle sur 12 " & _ "mois Print ", 4, Application.UserName) = vbYes Then Target = "NEW" End If End If Application.EnableEvents = True End Select
End Sub '---------------------------------
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
Je ne sais pas ce que tu cherches exactement, il pourrait y avoir ceci :
'---------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Address(0, 0)
Case Is = "AF37", "AF39", "AF41", "AF43", "AF45", _
"AF47", "AF49", "AF51", "AF53", "AF55"
Application.EnableEvents = False
If MsgBox("Est-ce un NEW ?", vbYesNo, _
Application.UserName) = vbYes Then
If MsgBox("La facturation se fait-elle sur 12 " & _
"mois Print ", 4, Application.UserName) = vbYes Then
Target = "NEW"
End If
End If
Application.EnableEvents = True
End Select
End Sub
'---------------------------------
"Nicoh" <Nicoh@discussions.microsoft.com> a écrit dans le message de news:
A3987E26-E050-4490-B23F-2A2F7BB4AA37@microsoft.com...
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le
recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le
faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je
n'arrive pas à adapter son code :
...
If Not Intersect(Target, [AF37]) 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
[AF38] = "NEW": Exit Sub
End If
End If
End If
If Not Intersect(Target, [AF39]) 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
[AF40] = "NEW": Exit Sub
End If
End If
End If
...
J'ai essayé ceci en vain car Line ne doit pas exister :
...
If Not Intersect(Target, Range
("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub
End If
End If
End If
...
Je ne sais pas ce que tu cherches exactement, il pourrait y avoir ceci : '--------------------------------- Private Sub Worksheet_SelectionChange(ByVal Target As Range) Select Case Target.Address(0, 0) Case Is = "AF37", "AF39", "AF41", "AF43", "AF45", _ "AF47", "AF49", "AF51", "AF53", "AF55" Application.EnableEvents = False If MsgBox("Est-ce un NEW ?", vbYesNo, _ Application.UserName) = vbYes Then If MsgBox("La facturation se fait-elle sur 12 " & _ "mois Print ", 4, Application.UserName) = vbYes Then Target = "NEW" End If End If Application.EnableEvents = True End Select
End Sub '---------------------------------
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
Nicoh
Merci Jacky,
J'avais la solution depuis le début. C'est dans le Range que j'avais des erreurs, j'ai donc changé Cells(Target,...) à tort. Au final, je m'y suis perdu. Maintenant, je vais pouvoir attaquer la partie très complexe du reste de la macro. Le plus dur sera d'être clair dans ma demande.
Bon dimanche,
Nicoh P.S. : merci à RV pour sa réponse.
Re.........
J'ai essayé ceci en vain car Line ne doit pas exister :
Si tu regardes bien dans le code proposé cette nuit, tu trouveras la réponse. ;o)) Colonne = yyyy.Column Ligne = xxxx.Row -- Salutations JJ
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...
D'avance merci pour votre aide
Nicoh
Merci Jacky,
J'avais la solution depuis le début. C'est dans le Range que j'avais des
erreurs, j'ai donc changé Cells(Target,...) à tort. Au final, je m'y suis
perdu.
Maintenant, je vais pouvoir attaquer la partie très complexe du reste de la
macro. Le plus dur sera d'être clair dans ma demande.
Bon dimanche,
Nicoh
P.S. : merci à RV pour sa réponse.
Re.........
J'ai essayé ceci en vain car Line ne doit pas exister :
Si tu regardes bien dans le code proposé cette nuit, tu trouveras la
réponse. ;o))
Colonne = yyyy.Column
Ligne = xxxx.Row
--
Salutations
JJ
"Nicoh" <Nicoh@discussions.microsoft.com> a écrit dans le message de news:
A3987E26-E050-4490-B23F-2A2F7BB4AA37@microsoft.com...
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le
recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de
le
faire sur des plages en colonne, mais là, c'est une plage sur une ligne et
je
n'arrive pas à adapter son code :
...
If Not Intersect(Target, [AF37]) 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
[AF38] = "NEW": Exit Sub
End If
End If
End If
If Not Intersect(Target, [AF39]) 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
[AF40] = "NEW": Exit Sub
End If
End If
End If
...
J'ai essayé ceci en vain car Line ne doit pas exister :
...
If Not Intersect(Target, Range
("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub
End If
End If
End If
...
J'avais la solution depuis le début. C'est dans le Range que j'avais des erreurs, j'ai donc changé Cells(Target,...) à tort. Au final, je m'y suis perdu. Maintenant, je vais pouvoir attaquer la partie très complexe du reste de la macro. Le plus dur sera d'être clair dans ma demande.
Bon dimanche,
Nicoh P.S. : merci à RV pour sa réponse.
Re.........
J'ai essayé ceci en vain car Line ne doit pas exister :
Si tu regardes bien dans le code proposé cette nuit, tu trouveras la réponse. ;o)) Colonne = yyyy.Column Ligne = xxxx.Row -- Salutations JJ
"Nicoh" a écrit dans le message de news:
Bonjour à tous,
J'ai besoin d'aide pour simplifier le code suivant et ainsi éviter de le recopier 10 fois de suite ;un grand merci à Jacky qui m'a déjà permis de le faire sur des plages en colonne, mais là, c'est une plage sur une ligne et je n'arrive pas à adapter son code :
... If Not Intersect(Target, [AF37]) 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 [AF38] = "NEW": Exit Sub End If End If End If If Not Intersect(Target, [AF39]) 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 [AF40] = "NEW": Exit Sub End If End If End If ...
J'ai essayé ceci en vain car Line ne doit pas exister :
... If Not Intersect(Target, Range ("AF37,AF39,AF41,AF43,AF45,AF47,AF49,AF51,AF53,AF55")) 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.Line) = "NEW": Exit Sub End If End If End If ...