Macro l'une après l'autre

Le
Guy72
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres macros
toutes en même temps, c'est pas ce que je souhaite, je ne sais pas si c'est
possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire démarrer
QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire démarrer QUE
la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etcjusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..
Merci de votre aide
--
Cordialement
Guy
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacky
Le #17413041
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6 Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne sais pas
si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire démarrer
QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy



Guy72
Le #17413731
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me copie
le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6 Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne sais pas
si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire démarrer
QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy







Jacky
Le #17414281
Re...
Mmmvvouin....
'-----------
Sub controle()
For i = 1 To 16
MsgBox "Ici la question " & i & " ou le lancement de la macro question " & i
MsgBox "Resultat du test: " & i
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
Next
End Sub
'-----------
--
Salutations
JJ


"Guy72" %
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me
copie le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6 Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne sais
pas si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire démarrer
QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy











Guy72
Le #17414761
Non c'est pas ça encore pas facile à expliquer.
Voir cet exemple.

http://cjoint.com/?kdwHScbRAB

--
Cordialement
Guy
"Jacky" u$
Re...
Mmmvvouin....
'-----------
Sub controle()
For i = 1 To 16
MsgBox "Ici la question " & i & " ou le lancement de la macro question " &
i
MsgBox "Resultat du test: " & i
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
Next
End Sub
'-----------
--
Salutations
JJ


"Guy72" %
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me
copie le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6
Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne sais
pas si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire démarrer
QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy















Jacky
Le #17415861
Bonjour,
Essaie ceci:
'--------------
Sub controle()
Static compte As Integer
compte = compte + 1
'MsgBox "Resultat du test: " & compte
x = 45 - (compte * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
If compte = 16 Then
MsgBox "Fin des tests"
compte = 0
End If
End Sub
'-------------------

--
Salutations
JJ


"Guy72" e$
Non c'est pas ça encore pas facile à expliquer.
Voir cet exemple.

http://cjoint.com/?kdwHScbRAB

--
Cordialement
Guy
"Jacky" u$
Re...
Mmmvvouin....
'-----------
Sub controle()
For i = 1 To 16
MsgBox "Ici la question " & i & " ou le lancement de la macro question "
& i
MsgBox "Resultat du test: " & i
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
Next
End Sub
'-----------
--
Salutations
JJ


"Guy72" %
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me
copie le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6
Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne sais
pas si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy



















Guy72
Le #17415981
Bonjour Jacky

Oui c'est çà,

Mais, il y a un problème.

Quand je vais jusqu'à 16, j'efface tout et je recommence, mais en faisant
les essais je me suis aperçu:

Quand je ne vais pas jusqu'à 16, j'efface ce qui a été copié et là ça
redémarre après l'endroit ou je me suis arrêté.

Je pense que cela est normal puisque je n'ai pas été jusqu'à 16 (je n'avais
pas prévu ce cas) ?

Est-il possible de refaire démarrer toujours à 1 ?

Ci-joint http://cjoint.com/?keim2SdSte




--
Cordialement
Guy
"Jacky"
Bonjour,
Essaie ceci:
'--------------
Sub controle()
Static compte As Integer
compte = compte + 1
'MsgBox "Resultat du test: " & compte
x = 45 - (compte * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
If compte = 16 Then
MsgBox "Fin des tests"
compte = 0
End If
End Sub
'-------------------

--
Salutations
JJ


"Guy72" e$
Non c'est pas ça encore pas facile à expliquer.
Voir cet exemple.

http://cjoint.com/?kdwHScbRAB

--
Cordialement
Guy
"Jacky" u$
Re...
Mmmvvouin....
'-----------
Sub controle()
For i = 1 To 16
MsgBox "Ici la question " & i & " ou le lancement de la macro question "
& i
MsgBox "Resultat du test: " & i
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
Next
End Sub
'-----------
--
Salutations
JJ


"Guy72" %
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me
copie le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6
Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne sais
pas si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy























Jacky
Le #17416171
Re...
Est-il possible de refaire démarrer toujours à 1 ?


http://cjoint.com/?kejkIgysfX

Beurgggg!! une sélection
>Range("U13:AG43").Select
> Selection.ClearContents

Range("U13:AG43").ClearContents

--
Salutations
JJ


"Guy72" %
Bonjour Jacky

Oui c'est çà,

Mais, il y a un problème.

Quand je vais jusqu'à 16, j'efface tout et je recommence, mais en faisant
les essais je me suis aperçu:

Quand je ne vais pas jusqu'à 16, j'efface ce qui a été copié et là ça
redémarre après l'endroit ou je me suis arrêté.

Je pense que cela est normal puisque je n'ai pas été jusqu'à 16 (je
n'avais pas prévu ce cas) ?

Est-il possible de refaire démarrer toujours à 1 ?

Ci-joint http://cjoint.com/?keim2SdSte




--
Cordialement
Guy
"Jacky"
Bonjour,
Essaie ceci:
'--------------
Sub controle()
Static compte As Integer
compte = compte + 1
'MsgBox "Resultat du test: " & compte
x = 45 - (compte * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
If compte = 16 Then
MsgBox "Fin des tests"
compte = 0
End If
End Sub
'-------------------

--
Salutations
JJ


"Guy72" e$
Non c'est pas ça encore pas facile à expliquer.
Voir cet exemple.

http://cjoint.com/?kdwHScbRAB

--
Cordialement
Guy
"Jacky" u$
Re...
Mmmvvouin....
'-----------
Sub controle()
For i = 1 To 16
MsgBox "Ici la question " & i & " ou le lancement de la macro question
" & i
MsgBox "Resultat du test: " & i
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
Next
End Sub
'-----------
--
Salutations
JJ


"Guy72" %
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me
copie le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6
Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne
sais pas si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy



























Guy72
Le #17416751
Bonjour Jacky,
Quoi Beurgggg!! mon code te plaît pas ?
Je l'ai fais avec l'éditeur de macro, mais je préfère de loin ta solution
simplifiée.
Quand à la macro, c'est au poil, exactement ce que je voulais.
--
Cordialement
Guy

"Jacky" %
Re...
Est-il possible de refaire démarrer toujours à 1 ?


http://cjoint.com/?kejkIgysfX

Beurgggg!! une sélection
>Range("U13:AG43").Select
> Selection.ClearContents

Range("U13:AG43").ClearContents

--
Salutations
JJ


"Guy72" %
Bonjour Jacky

Oui c'est çà,

Mais, il y a un problème.

Quand je vais jusqu'à 16, j'efface tout et je recommence, mais en faisant
les essais je me suis aperçu:

Quand je ne vais pas jusqu'à 16, j'efface ce qui a été copié et là ça
redémarre après l'endroit ou je me suis arrêté.

Je pense que cela est normal puisque je n'ai pas été jusqu'à 16 (je
n'avais pas prévu ce cas) ?

Est-il possible de refaire démarrer toujours à 1 ?

Ci-joint http://cjoint.com/?keim2SdSte




--
Cordialement
Guy
"Jacky"
Bonjour,
Essaie ceci:
'--------------
Sub controle()
Static compte As Integer
compte = compte + 1
'MsgBox "Resultat du test: " & compte
x = 45 - (compte * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
If compte = 16 Then
MsgBox "Fin des tests"
compte = 0
End If
End Sub
'-------------------

--
Salutations
JJ


"Guy72" e$
Non c'est pas ça encore pas facile à expliquer.
Voir cet exemple.

http://cjoint.com/?kdwHScbRAB

--
Cordialement
Guy
"Jacky" u$
Re...
Mmmvvouin....
'-----------
Sub controle()
For i = 1 To 16
MsgBox "Ici la question " & i & " ou le lancement de la macro question
" & i
MsgBox "Resultat du test: " & i
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
Next
End Sub
'-----------
--
Salutations
JJ


"Guy72" %
Bonjour Jacky,
Non, c'est pas tout à fait ça.
Exemple :
Le 1er questionnaire fini, je clic sur OK, ça me copie le résultat .
"Range("AL43:AV43").Copy Destination:=Range("V43")
et je passe au suivant.
Le deuxième questionnaire fini, je clic sur OK (le même bouton, ça me
copie le résultat.
"Range("AL41:AV41").Copy Destination:=Range("V41")
(et je passe au suivant.
etc............
--
Cordialement
Guy

"Jacky"
Re...
En 1 seule macro peut-être
'-----------------
Sub controle()
For i = 1 To 16
If MsgBox("Lancement de la copie " & i, 4, Application.UserName) = 6
Then
x = 45 - (i * 2)
Range("AL" & x & ":AV" & x).Copy Range("V" & x)
End If
Next
End Sub
'-----------------

--
Salutations
JJ


"Guy72"
Bonjour,
Avec un bouton, la macro "Sub Controles()", fait démarrer les
autres
macros toutes en même temps, c'est pas ce que je souhaite, je ne
sais pas si c'est possible de faire la chose suivante.

Je souhaiterais, avec un clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 1,
et avec un deuxième clic sur le bouton "Sub Controles()" faire
démarrer QUE la macro 2.
Et ainsi de suite jusqu'à 16.
Voici les codes actuel

Sub Controles()
Call Controle_1
Call Controle_2
Call Controle_3
End Sub
etc............jusqu'à 16

Sub Controle_1()
Range("AL43:AV43").Copy Destination:=Range("V43")
End Sub

Sub Controle_2()
Range("AL41:AV41").Copy Destination:=Range("V41")
End Sub

Sub Controle_3()
Range("AL39:AV39").Copy Destination:=Range("V39")
End Sub
etc..............
Merci de votre aide
--
Cordialement
Guy

































Publicité
Poster une réponse
Anonyme