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 le numéro de la ligne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Juillet 2006
    Messages : 233
    Par défaut Trouver le numéro de la ligne
    Bonjour à tous,
    Il y a plus d'une année que ce sujet à malheureusement été clos.

    J'ai recopié votre code que je trouve très bien et je voudrais l'adapter à ma situation:
    J'ai une "feuil1" et une feuille "dest". Mon but est de parcourir "dest" et si je trouve une correspondance en colonne B dans "feuil1" alors je modifie la ligne en question; et si je ne trouve pas de correspondance j'ajoute une nouvelle ligne dans "feuil1".

    Ma question est comment -sans faire une autre boucle quui va ralentir- trouver le numéro de la ligne associée dans "feuil1".

    Voilà le début de mon adaptation de votre excellent 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Sub AjouterSiInexistant()
    Dim Fp As Worksheet 'Feuille ¨projet
    Dim Fcde As Worksheet 'Feuille Commande
    Dim stNom As String 'Valeur à chercher
    Dim r As Range ' Plage de recherche
    Dim c
    Set Fp = Sheets("feuil1")
    Set Fcde = Sheets("dest")
    Sheets("dest").Select
    For i = 1 To Cells(65535, 1).End(xlUp).Row
    stNom = Fp.Range("B" & i) 'Récupere la valeur à chercher
     
    'définit la Zone de recherche
     
    Set r = Fcde.Range("B:B")
     
    Set c = r.Find(stNom)
     
    If c Is Nothing Then
      MsgBox stNom & " ... " & Introuvable
    Else
     MsgBox stNom & " Trouvé colonne " & c.Column
    End If
    Next i
     
    End Sub
    Merci infiniment de votre réponse.

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Très bien, c'est la preuve que tu à cherché
    tu retrouve l'adresse de la cellule dans c.Address

    A+

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Juillet 2006
    Messages : 233
    Par défaut
    Merci beaucoup leforestier,

    Mais c.address correspond à quoi. Car généralement une cellule est référencée par des coordonnées k et j : cells(k,j) avec k le numéri de ligne et j le numéro de colonne.

    Que représente donc c.addresse par rapport à k et j?

    Merci infiniment

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour Maestro1303,

    "c" est une variable qui fait référence à la cellule en cours.

    Address est une fonction

    dons c.Address va revoyer par exemple "$A$29" si la valeur recherchée a été trouvée dans cette cellule.

    Dans la fenêtre VBA, tapez Address puis placez le curseur sur ce mot et appuyez sur F1 et vous aurez l'aide qui s'affichera.

  5. #5
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Cette instruction
    renvoie un objet (c) qui est une instance de la cellule trouvée.

    Citation Envoyé par jacques_jean Voir le message
    Address est une fonction
    Désolé, jacques_jean, mais Address est une Propriété.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  6. #6
    Invité
    Invité(e)
    Par défaut
    Ok AlainTech,

    Merci pour la précision.

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

Discussions similaires

  1. [Toutes versions] trouver le numéro de ligne d'une recherchevaleur
    Par genevievef dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/06/2012, 22h22
  2. Trouver le numéro de ligne réel dans une grille
    Par Margance dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 18/11/2011, 13h06
  3. Fonction excel: trouver un numéro de ligne
    Par adv75 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/07/2011, 22h37
  4. Comment trouver un numéro de ligne
    Par Mica--> dans le forum Excel
    Réponses: 2
    Dernier message: 13/01/2009, 08h06
  5. Trouver le numéro de ligne d'une fonction
    Par supertoms dans le forum VBA Access
    Réponses: 4
    Dernier message: 28/04/2008, 20h10

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