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 :

Impossible modifier feuille excel quand UserForm ouvert [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 123
    Par défaut Impossible modifier feuille excel quand UserForm ouvert
    Bonjour,

    je mets une macro en pause en ouvrant un UserForm en Modal 0 pour pouvoir modifier manuellement le contenu de ma feuille Excel.
    Lorsque c'est terminé, un click dans un le UserForm relance la macro.

    Ce qui cloche, c'est que je ne peux pas modifier la feuille alors que le UserForm est ouvert. Je peux cliquer dans les cellules, mais rien ajouter/supprimer.

    voici les codes. merci

    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
    16
    17
     
    Public Pause As String
     
    Sub user_form_pause()
     
    Pause = 1
     
    Cmd_1.Show 0
     
    Do While Pause = 1
     
    DoEvents 'ici je fais les modifs que souhaite dans la feuille excel. C'est ici que ça coince, le sablier se met en route et ne s'arrête que lorsque je clique sur mon UserForm. La modif n'est pas faite.
     
    Loop
     
     
    End Sub
    Une fois les modifs terminé, je clique sur OK de mon userform.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Cmd_Click_Click()
     
    Pause = 0
    Unload Cmd_1
     
    End Sub

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Essaie comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Pause As Boolean
     
    Sub user_form_pause()
     
    Pause = True
     
    Cmd_1.Show 0
     
    Do While Pause = True
     
    DoEvents 'ici je fais les modifs que souhaite dans la feuille excel. C'est ici que ça coince, le sablier se met en route et ne s'arrête que lorsque je clique sur mon UserForm. La modif n'est pas faite.
     
    Loop
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Cmd_Click_Click()
     
    Pause = False
    Unload Cmd_1
     
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Novembre 2008
    Messages : 123
    Par défaut
    Salut Fring,

    j'ai essayé ta proposition, mais cela n'a tien changé.

    par contre j'ai remarqué en faisant du mode pas à pas que je pouvais bien modifier ma feuille excel !
    J'ai donc décidé de placer un temps de pause avant d'entrer dans la boucle. Et cela fonctionne bien mais je ne sais pas pourquoi.

    voici le code.

    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
    16
    Sub user_form_pause()
     
    Pause = True
     
     
     
    Cmd_1.Show 0
    'petite pause d'une seconde avant d'entrer dans la boucle afin d'avoir la main sur le fichier Excel.
    Application.Wait (Now + TimeValue("0:00:01"))
     
    Do While Pause = True
     
    DoEvents
    Loop
     
    End Sub
    merci A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. pas d'accè à ma feuille de calcul quand userform ouvert
    Par bigmousse69 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/04/2009, 13h53
  2. [XL-2003] Naviguer entre des feuilles excel par UserForm
    Par P96O1004 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/04/2009, 09h15
  3. Feuille excel dans userform
    Par vinssieux dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/05/2008, 08h56
  4. [VBA-E] Afficher une feuille excel pour la modifier
    Par z980x dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 30/05/2006, 22h21
  5. [VBA]Userform mobile dans une feuille excel
    Par fikren dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 28/10/2005, 15h45

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