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 :

Recherche dans une feuille Excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 132
    Par défaut Recherche dans une feuille Excel
    Bonjour à tous,

    Je vois déjà beaucoup de personnes grogner par rapport à la simplicité de ma requete.
    Mais ça me semble complexe car je suis très novice sous Excel.

    En effet, je voudrais compter le nombre de cellules qu'une valeur (chiffres ou caractères) occupe dans une feuille.
    Sachant qu'une valeur peut être inscrite sur une fusion de plusieurs cellules, je voudrais récupérer le nombre de cellules fusionnées.

    Comme je l'ai dit, je ne connais pas très bien Excel . J'aimerai cependant comprendre ce que j'écris, une petite explication avec votre réponse serait génial !!

    Merci d'avance !

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2016
    Messages : 132
    Par défaut
    Bon j'ai finalement réussis ce que je voulais.
    Je mets le code si besoin : source

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Function rechFusion(chaine As String, plage As Range) As Long
        Dim data As Variant, lig As Long, col As Long
        Application.Volatile
        If plage.Count = 1 Then Exit Function
        data = plage.Value
        For lig = 1 To UBound(data, 1)
            For col = 1 To UBound(data, 2)
                If data(lig, col) = chaine And data(lig, col) <> "" Then
                    rechFusion = rechFusion + plage.Cells(lig, col).MergeArea.Cells.Count
                    col = col + plage.Cells(lig, col).MergeArea.Cells.Columns.Count - 1
                End If
            Next col
        Next lig
    End Function
    j'ai juste rajouté une petite option qui permet de ne pas chercher une case vide.

    Donc ce code permet de rechercher une cellule dans une zone définie : rechFusion(CELLULE recherchée ; ZONE)
    et resort le nombre de fois que la cellule a été comptée dans la zone, elle peut aussi calculer le nombre de cellules fusionnées.

    Très pratique pour les agendas, savoir combien de temps on a passé à faire des maths ou de la programmation VBA dans la semaine par exemple

    Bonne journée à tous !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/10/2009, 23h19
  2. Recherche par mot clef dans une feuille excel.
    Par takamo dans le forum Excel
    Réponses: 12
    Dernier message: 18/06/2008, 14h35
  3. optimiser le code d'une recherche dans une feuille excel
    Par h_adil dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/05/2008, 21h20
  4. Recherche dans une feuille excel
    Par sebeni dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/05/2007, 06h04
  5. Recherche d'une cellule dans une feuille Excel
    Par vuong1 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/03/2007, 07h51

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