automatiser une macro existante Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
m
mynameisjeff
Membre fidèle
Membre fidèle
Messages : 201
Inscrit le : 10 octobre 2014
Version d'Excel : 2007

Message par mynameisjeff » 27 novembre 2015, 10:55

Bonjour à tous,

J'ai un code que je souhaiterais automatiser, le voici :
Sub Image62_Clic()
Application.ScreenUpdating = False
Range("A40:K78").Select
ActiveWindow.ScrollRow = Selection.Row
ActiveWindow.ScrollColumn = Selection.Column
  ActiveWindow.Zoom = True
 Range("A40").Select
 Application.ScreenUpdating = True
End Sub
Je voudrais qu'au lieu de selectionner le range de A40 a A78 puis le range A40 a la fin de la macro trouver un automatisme.
Je voudrais mettre une variable i qui prendrait la dernière valeur enregistrée (ici le nombre 40) et ajouterais à ce nombre +38 et ferait ma macro activewindows.scoll... et le zoom.
Donc un moyen de garder en mémoire la valeur i

Je cherche un bouton en fait qui irait de page en page (chaque page comportant 39 lignes) jusqu'à la ligne 663.
Je commencerait en ligne 1 donc i=1
Si je clique sur mon bouton Image62_Clic je veux que ma macro aille sur i=40 (avec le reste de ma macro écrite ci-dessus).

Donc ce bouton image62_Clic serait un bouton permettant d'aller à la vision 40 lignes plus loin dans le fichier.
Si i depasse 663 alors revenir sur 625

Dans le même principe je voudrais aussi faire un bouton retour qui reviendrait de 40 lignes et s'il s'agit déjà de la première page, la reselectionner. Par contre le bouton retour imageclic_63 chercherait la valeur i de la feuille.
En fait il faut que les 2 boutons puissent obtenir la même valeur i même si une des deux macros a été lancée.

Merci à toute personne pouvant m'aider
Cordialement
m
mynameisjeff
Membre fidèle
Membre fidèle
Messages : 201
Inscrit le : 10 octobre 2014
Version d'Excel : 2007

Message par mynameisjeff » 27 novembre 2015, 14:22

J'ai trouvé, voici la solution si ça intéresse :
Option Explicit
Public Prems, Derns As Integer

Sub Image62_Clic()
Application.ScreenUpdating = False
If Prems = "" Then Prems = 1
If Prems < 1 Then Prems = 1
If Prems > 663 Them Prems = 625
Derns = Prems + 39
Range(Cells(Prems, "A"), Cells(Derns, "K")).Select
ActiveWindow.ScrollRow = Selection.Row
ActiveWindow.ScrollColumn = Selection.Column
  ActiveWindow.Zoom = True
 Range("A" & Prems).Select
 Prems = Prems + 39
 Application.ScreenUpdating = True

End Sub
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message