IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Boucler macro excel 2007


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut Boucler macro excel 2007
    Bonjour à tous,

    Je vais essayer d'être le plus clair possible.
    J'ai un fichier qui lors de l'ouverture se lance automatiquement sur la page de démarrage "Loading" ensuite via macro il passe après 5 secondes sur la page 1... 5 secondes plus tard sur la page 2.... 5 secondes plus tard sur la page 3.
    Je voudrais savoir si il serait possible de "boucler" cela afin que lorsqu'il arrive à la page 3, il recommence en repassant sur la page loading et ainsi de suite.

    Je joins le fichier et vous remercie d'avance de votre contribution.

    Amicalement.
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code Module1 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub Page1()
     Sheets("Page1").Select
    essai
    End Sub
    Sub Page2()
     Sheets("Page2").Select
    essai
    End Sub
    Sub Page3()
     Sheets("Page3").Select
    essai
    End Sub
    Sub Loading()
    Sheets("Loading").Select
    essai
    End Sub
    Code Module2 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub essai()
    Static i As Integer
    t = Array("", "Page1", "Page2", "Page3", "Loading")
    i = i + 1
    If i > UBound(t) Then i = 1
    Application.OnTime Now + TimeSerial(0, 0, 5), t(i)
    End Sub
    autre possibilité!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub essai()
    Static i As Integer
    If i = 0 Then i = 1
    t = Array("", "Page1", "Page2", "Page3", "Loading")
    ThisWorkbook.Sheets(t(i)).Select
    i = i + 1
    If i > UBound(t) Then i = 1
    Application.OnTime Now + TimeSerial(0, 0, 5), "essai"
    End Sub
    Dernière modification par Invité ; 02/03/2016 à 13h02.

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Un tout grand merci Rdurupt ça fonctionne à merveille.
    Il ne me reste plus qu'à trouver comment arrêter cette macro pour pouvoir modifier le fichier.

    Super rapidité et efficacité.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Ajoute 2 boutons un start et un stop
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public arrête as boolean
    Sub essai()
    Static i As Integer
    If i = 0 Then i = 1
    t = Array("", "Page1", "Page2", "Page3", "Loading")
    ThisWorkbook.Sheets(t(i)).Select
    i = i + 1
    If i > UBound(t) Then i = 1
    If arrête= false then Application.OnTime Now + TimeSerial(0, 0, 5), "essai"
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    private sub start_click()
    arrête=false
    essai
    End sub
    Private sub stop_click()
    arrête=True
    End sub
    Pour modifier le fichier raccourci clavier [Alt] + [F11]

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Bonsoir,

    Très sympa de votre part mais je ne vois pas bien ou je dois placer ces nouveaux codes.

    Désolé mais je suis novice.

    Bonne fin de soirée

  6. #6
    Invité
    Invité(e)
    Par défaut
    Je suis pas sur d'avoir compris ta question.
    Si tu veux juste modifier ton code alors le raccourci clavier t'emmènera vers to projet.

    Si tu veux des bouton pour démarrer ou arrêté ta macro je t'expliquerai mais avant précises ce que tu veux exactement.

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Bonjour rdurupt,

    Ce que tu ma fourni fonctionne très bien cependant, j'aimerai avoir la possibilité d'avoir 2 boutons sur le sheet loading. 1 bouton qui me permettrai de stopper la macro "essai" afin d'apporter des modifications sur les sheets et 1 second bouton qui me permettrai de relancer cette macro.
    Cela en conservant comme c'est déjà le cas le lancement automatique de la macro au démarrage du fichier.
    J'espère être le plus clair possible

    Je te remercie d'avance de ton support.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Fichiers attachés Fichiers attachés

  9. #9
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Bonjour,

    C'est parfait !
    Exactement ce qu'il me fallait.
    Encore un tout grand merci rdurupt.

    Cordialement

  10. #10
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Bonjour Rdurupt, bonjour à tous...

    Je viens de me rendre compte que tout fonctionne bien sauf lorsque j'ouvre un autre fichier excel.
    J'ai un message d'erreur dans le module 2( le code ci dessous est en jaune).

    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Sheets(t(i)).Select

  11. #11
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Teste comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Sheets(t(i)).activate
    Si non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    on error resume next
    ThisWorkbook.Sheets(t(i)).Select
    Err.clear
    On error goto 0

  12. #12
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Re,

    Voici le module mais je vais paraitre débile mais je le place ou le code que tu viens de me fournir.

    Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public arrête As Boolean
    Sub défilement()
    Static i As Integer
    If arrête = True Then i = 0: Exit Sub
    If i = 0 Then i = 1
    t = Array("", "Loading", "Page1", "Page2", "Page3")
    ThisWorkbook.Sheets(t(i)).Activate
    i = i + 1
    If i > UBound(t) Then i = 1
    If arrête = False Then Application.OnTime Now + TimeSerial(0, 0, 5), "défilement"
     
    End Sub

    Ps:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Sheets(t(i)).activate
    me relance le fichier en cours mais ne résouds pas le problème.

  13. #13
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Public arrête As Boolean
    Sub défilement()
    Static i As Integer
    If arrête = True Then i = 0: Exit Sub
    If i = 0 Then i = 1
    t = Array("", "Loading", "Page1", "Page2", "Page3")
    On error resume Next 'ici c'est pas grave de gérer les erreurs par l'absurde!
    ThisWorkbook.Sheets(t(i)).select
    Err.clear
    On error goto 0
    i = i + 1
    If i > UBound(t) Then i = 1
    If arrête = False Then Application.OnTime Now + TimeSerial(0, 0, 5), "défilement"
     
    End Sub

  14. #14
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2014
    Messages : 9
    Par défaut
    Bonjour Rdurupt,

    Malgré la modification du code cela ne fonctionne pas.
    Ouverture du fichier seul ok fermeture de celui-ci ok.
    Lorsqu'un second fichier est ouvert en même temps, il est impossible de le sauvegarder (message erreur VBA end)
    Je joins le fichier et te remercie du suport que tu m'as fourni.
    Cordialement
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. enregistrement macro Excel 2007
    Par aladot dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 02/07/2009, 14h23
  2. Macro Excel 2007 dans VB.net 2005
    Par peregna2007 dans le forum VB.NET
    Réponses: 2
    Dernier message: 12/08/2008, 22h35
  3. signer une macro excel 2007
    Par alsimbad dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/12/2007, 05h43
  4. Activation de Macros, Excel 2007
    Par alec-- dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/07/2007, 10h13
  5. Probleme lancement macro excel 2007
    Par nico63vb dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/03/2007, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo