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 :

Trouver la dernière cellule qui contient une valeur définie [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 190
    Par défaut Trouver la dernière cellule qui contient une valeur définie
    Bonjour,

    J'ai dans une colonne plusieurs fois le mots "TEST".
    Comment puis je faire une macro qui me donne l'adresse de la dernière cellule de la colonne qui contient ce mot ?

    Autrement dit, j'aimerai que la macro parte de la fin de la colonne, et qui me retrouve la première cellule qui contient "TEST".

    Merci pour vos lumières.

    Bonne journée.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 678
    Par défaut
    salut,

    une boucle for avec decrement ferait-elle l'affaire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For i = Range("A65536").End(Xlup).Row to 1 step -1
     
    Next i
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    essayes comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
    Sub test()
    Dim derlg As Long, i As Long
    With Sheets("feuil1") 'à remplacer par nom de ta feuille
    derlg = .Range("A" & .Rows.Count).End(xlUp).Row 'remplacer A par colonne concernée
    For i = derlg To 1 Step -1
        If .Range("A" & i) = "TEST" Then Exit For
    Next i
    MsgBox .Range("A" & i).Address
    End Sub
    PS : mes excuses pour jpcheck, collision
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour
    Une autre proposition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim c As Range
     
    Set c = Sheets("Feuil1").Range("A:A").Find("TEST", LookIn:=xlValues, LookAt:=xlWhole, SearchDirection:=xlPrevious)
    If Not c Is Nothing Then
        MsgBox c.Address 'L'adresse de ton dernier TEST de la colonne A
        Set c = Nothing
    End If

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 190
    Par défaut
    Merci pour vos 3 réponses.
    Elles m'ont toutes aidées.

    Merci encore. C'est toujours un plaisir.
    Bonne fin de journée.

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 26/05/2014, 08h39
  2. Supprimer une cellule qui contient une information
    Par florianc31 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 13/02/2013, 11h26
  3. Réponses: 5
    Dernier message: 22/11/2010, 17h39
  4. trouver le fichier zippé qui contient une expression
    Par talvins dans le forum Administration système
    Réponses: 12
    Dernier message: 16/12/2009, 17h01
  5. comment afficher une cellule qui contient une formule, dans textbox
    Par cali59 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/08/2009, 00h07

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