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 :

Débutant pour VBA [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Par défaut Débutant pour VBA
    Bonjour à tous,

    j'ai cette macro ci-dessous afin de comptabiliser des cellules de couleur rouge sur une plage donnée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Presents010710()
        Dim rngCell         As Range
        Dim intNbCouleurs   As Integer
     
        For Each rngCell In Range("o12:o108").Cells
            If rngCell.Interior.ColorIndex = 3 Then
                intNbCouleurs = intNbCouleurs + 1
            End If
        Next
        MsgBox intNbCouleurs & " Present(s)"
    End Sub
    Je souhaite que la macro me demande le nom de la cellule qui se trouve en O11 afin de donner le résultat du comptage.

    En effet O11 étant la date du jour... donc vous l'aurez compris, O12 étant la date suivante, plage à comptabiliser sera de p12 à p108...

    Le fichier est un fichier de réservations. Par cette macro, j'arrive à connaitre le nombre de présents par date

    J'espère avoir été clair

    merci

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut et bienvenue sur le forum,

    ...
    J'espère avoir été clair
    ...
    Ben pas vraiment, qu'entend tu par:
    Je souhaite que la macro me demande le nom de la cellule qui se trouve en O11 afin de donner le résultat du comptage.
    De plus, tu dis que O12 contient la date suivante mais O12 fait partie de la plage dans laquelle tu vérifie les couleurs, c'est un peu confu tout ça.

    A+

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Par défaut
    Bonjour Fréderic,

    Effectivement ce n'est pas clair...

    Je reprends.

    O11 est la date du jour. Il fallait lire P11 pour la date suivante... je me suis trompé dans l'indication de la cellule... désolé.

    Donc la macro me demanderait la date souhaitée.
    Je positionne le curseur sur la date située en colonne O et la macro sort le résultat des cellules comptabilisées entre les lignes 12 et 108.

    Est ce plus clair ?

    Dernière précision.
    Le tableau est un planning d'occupation de chambres. Les lignes comprises entre 12 et 108 sont le nombre de chambre et la couleur rouge des cellules indique qu'une chambre est occupée.

    Encore merci pour le temps qui tu as pris à lire ce message.

    A+

  4. #4
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,

    C'est du coup beaucoup plus compréhensible.
    On part du principe, que la macro compte le nombre de chambre occupée en fonction de la cellule sélectionnée (si sur ligne 11).
    Ce n'est certainement pas la meilleure méthode ni la plus "sympa" mais je te laisserai te renseigner sur le DTpicker.

    Donc pour adapter ta macro pour ce que tu veux, on va modifier la manière de définir le Range en utilisant Cells.
    ells fonctionne avec deux arguments, le premier pour numéro de ligne, le second pour le numéro de colonne.
    Par exemple, Range("B3") = Cells(3,2). Et Range("A1:B3") = range(cells(1,1),cells(3,2))

    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
    Sub PresentsSelonCell()
        Dim rngCell         As Range
        Dim intNbCouleurs   As Integer
        Dim MaCol as long 'Variable pour récupérer le numéro de colonne de la cellule active
     
    If activecell.row <> 11 then exit sub 'sort de la procédure si la cellule sélectionnée n'est pas en ligne 11
        MaCol = Activecell.column 'Récupère le numéro de colonne de la cellule active
     
        For Each rngCell In Range(cells(12,MaCol),cells(108,MaCol)).Cells
            If rngCell.Interior.ColorIndex = 3 Then
                intNbCouleurs = intNbCouleurs + 1
            End If
        Next
        MsgBox intNbCouleurs & " Present(s)"
    End Sub
    Je t'avoue ne pas avoir testé donc j'espère ne pas avoir fait de coquille.

    A+

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 3
    Par défaut Merci
    C'est exactement ce que je souhaitais...

    Merci beaucoup Frédéric pour cette aide précieuse.

    Concernant le Dtpicker, je le garde pour plus tard et vais en premier lieu disséquer cette macro-ci...

    Bonne journée


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

Discussions similaires

  1. [WD-2007] Information pour un débutant sur VBA
    Par Sceeji82500 dans le forum VBA Word
    Réponses: 5
    Dernier message: 18/08/2010, 21h44
  2. Débutante - Code VBA pour MsgBox avec actions multiples
    Par kisscool35 dans le forum Access
    Réponses: 5
    Dernier message: 22/08/2006, 17h43
  3. Cherche débutant pour débuter avec moi ;)
    Par systemofaxav dans le forum OpenGL
    Réponses: 6
    Dernier message: 24/02/2006, 11h13
  4. Aide débutant instruction VBA tableau Excell
    Par damien33 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/09/2005, 10h31
  5. débutant en VBA je n'arrive pas à finir ma macro excel
    Par jeanpierreco dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/01/2005, 12h20

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