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 :

[E-07] TP sur Cellule et feuille active


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de perchman
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 199
    Par défaut [E-07] TP sur Cellule et feuille active
    Bonjour à tous,

    Joyeux Noël

    J'ai eu un TP de VBA Excel fin décembre avec 8 exos !

    Et je dois le faire chez moi car on a pas assez avancé pendant le TP (1 exo en 2h)...

    voici mon code !! les SUB colore_cellule_active, exercice1b fonctionnent très bien... malheureusement ce n'est pas le cas de exercice1c... et je ne vois pas l'erreur !!!

    Merci bien !

    (je risque de faire appel à vous pour les autres exos)

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Option Explicit
    Sub colore_cellule_active()
        Dim col As Integer
        Randomize
        col = Int(50 * Rnd) + 1
        ActiveCell.Interior.ColorIndex = col                'la cellule active est remplie avec une couleur
    End Sub
    
    Sub exercice1b()
        Dim colonne As Integer
        Dim ligne As Integer
    
        'Cells.Clear                                        'effacer le contenu des cellules
        Randomize                                           'activation une cellule au hasard
        colonne = Int(10 * Rnd) + 1
        ligne = Int(10 * Rnd) + 1
        Cells(ligne, colonne).Activate
    
        Application.Wait (Now + TimeValue("00:00:02"))      'attente de 2s
        Call colore_cellule_active                          'appel de la fonction colore_cellule
    End Sub
    
    Sub exercice1c()
        Dim x As Integer
        Dim fe As Integer
        x = Sheets.Count                    'compte le nombre de feuilles
        
        Randomize
        fe = Int(x * Rnd) + 1
        Worksheets(fe).Activate             'activation de la feuille n°X
        Call exercice1b
    End Sub

  2. #2
    Membre éprouvé Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Par défaut
    Bonjour,

    Qu'est ce qui ne marche dans ton code ? Quel est le résultat attendu ?
    Je l'ai fait tourné sur E-03 et je n'ai pas de message d'erreur.
    - une feuille est choisie au hazard
    - une cellule est choisie au hazard
    - cette cellule est coloriée avec une couleur aléatoire

    Quel est le problème donc ?

    Didier

  3. #3
    Membre confirmé Avatar de perchman
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 199
    Par défaut
    C'est ça !!

    mais moi, je n'arrive pas à la faire fonctionner !!

    ça affiche "erreur 400" !!!

  4. #4
    Membre éprouvé Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Par défaut
    Lance ta macro en pas-à-pas pour savoir où est-ce que cela coince.
    Peut-être qu'au lieu de "Activate", tu devrais utiliser "Select" ??

    Didier

  5. #5
    Membre confirmé Avatar de perchman
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 199
    Par défaut
    j'ai 1 soucis !! il n'y a plus que la 1ère qui marche !!

    j'ai l'erreur suivante: "erreur définie par l'application ou par l'objet" !!

    je n'ai pourtant rien touché !!

  6. #6
    Membre éprouvé Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Par défaut
    Execute ton code en mode pas-à-pas (F8 dans VBA) pour savoir où est le problème.

    Didier

Discussions similaires

  1. Un code de retour sur la dernière feuille active
    Par arkorrigan dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/06/2008, 17h53
  2. Réponses: 9
    Dernier message: 24/02/2008, 15h27
  3. memoriser une colonne de cellule d'une feuille sur les autres feuilles
    Par iturria64 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/12/2007, 01h33
  4. Copie d'une colonne de cellules sur une autre feuille
    Par maxou59 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/12/2006, 10h06
  5. effacer le contenu d'une feuille active en préservant des cellules
    Par Jerez62 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/11/2006, 19h24

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