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 de cellule a partir d'une variable


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Responsable d'exploitation informatique
    Inscrit en
    Février 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable d'exploitation informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Février 2012
    Messages : 14
    Par défaut Recherche de cellule a partir d'une variable
    bonjour,
    je butte sur un truc certainement tout bete et j'ai beau chercher , rien n'y fait.

    dans la feuille1 de mon classeur je recupere en vba dans une variable le contenu de la cellule A13

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    a13 = Workbooks("test.xlsm").Worksheets("Feuil1").Range("A13")
    et cest la que je butte ; je veux aller sur la cellule de ma feuille 2 qui contient la variable a13 de ma feuille 1. cette variable est unique dans ma feuille 2.

    une aide me serait grandement utile.

    merci beaucoup.

  2. #2
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut PETITE MODIF
    bonjour,
    je ne sais pas si j'ai bien saisi mais voici un code qui recherche dans la feuille 2 la valeur da la variable a13 et si il la trouve il sélectionne la cellule correspondante:
    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 Macro_1()
    Dim vrech As Range
    a13 = Workbooks("test.xlsm").Worksheets("Feuil1").Range("A13")
    'je recherche dans ma feuille 2 la valeur de a13
    Set vrech = Workbooks("test.xlsm").Worksheets("Feuil2").Cells.Find(a13)
     
    'si je trouve cette valeur alors
    If Not vrech Is Nothing Then
        'j'active la feuille 2
        Workbooks("test.xlsm").Worksheets("Feuil2").activate
     
        'je selectionne la cellule correspondante
        vrech.Select
    End If
    End Sub
    EDIT: Si tu lances le code à partir de la feuille1 il est nécessaire d'activer la feuille 2, je modifie le code ci-dessus.
    fait une recherche sur FIND dans l'aide d'excel touche F1

  3. #3
    Membre averti
    Homme Profil pro
    Responsable d'exploitation informatique
    Inscrit en
    Février 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable d'exploitation informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Février 2012
    Messages : 14
    Par défaut
    effectivement c'est bien ça. en plus c'etait tout simple; quel gros benet je fais.
    Merci encore.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    fonction rechercher:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public Function Recherche(myrange As Excel.Range, strRecherche As String, Ligne As Long, Colonne As Integer) As Long
    'Permet de rechercher une valeur dans un tableau Excel.
     
    On Error Resume Next
    Recherche = myrange.Find(What:=strRecherche, After:=myrange.Cells(Ligne, Colonne), _
                LookIn:=xlFormulas, LookAt _
            :=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
            False).Row
     
     
        If Err Then Err.Clear
    End Function
    utilisation:
    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
    Sub test()
    Dim Ligne As Long
    Dim Colonne As Integer
    Dim txtRechercher As String
    Dim MyPlage As Range
    Dim RetoutLigne As Long
    Set MyPlage = ActiveWorkbook.Worksheets(2).Cells
    Ligne = 1
    Colonne = 5
    txtRechercher = "vas savoir?"
    RetoutLigne = Recherche(MyPlage, txtRechercher, Ligne, Colonne)
    If RetoutLigne = 0 Then
        MsgBox "Pas trouvé!"
    Else
         MsgBox "Ligne : " & RetoutLigne
    End If
    End Sub

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

Discussions similaires

  1. [XL-2013] copier plage cellule a partir d'une variable
    Par Florian53 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/06/2015, 19h54
  2. [XL-2003] selectionner une cellule dans une base à partir d'une variable.
    Par emilie10 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/07/2012, 09h13
  3. Réponses: 4
    Dernier message: 10/10/2010, 11h46
  4. [XL-2003] Problème pour renommer un fichier à partir d'une variable contenu dans une cellule
    Par the-geut dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/05/2010, 11h43
  5. Réponses: 6
    Dernier message: 28/06/2007, 11h17

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