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 :

fonction qui renvoit les coordonnées d'une cellule (As Range) [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Points : 14
    Points
    14
    Par défaut fonction qui renvoit les coordonnées d'une cellule (As Range)
    Bonjour,

    Je souhaite programmer une fonction qui me renvoit les coodonnées d'une cellule trouvée:

    Le problème est que je n'arrive pas à faire le renvoi de la cellule trouvée.

    Une méthode?

    @+

  2. #2
    Membre habitué Avatar de LouiMz
    Homme Profil pro
    Inscrit en
    Février 2010
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 104
    Points : 154
    Points
    154
    Par défaut
    Bonjour,

    Vous avez la méthode Adress qui vous renvoie les coordonnées d'une cellule:

    Attention les coordonnées renvoyées sont de la forme "$A$4"

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub test()
     
    Dim i As String
     
    i = ActiveCell.Address
     
    Range(i).Select
     
    End Sub
    De ce fait vous pouvez renvoyer un String avec votre fonction.
    Cordialement

  3. #3
    Expert éminent
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Points : 6 699
    Points
    6 699
    Par défaut
    Bonjour,

    Attention les coordonnées renvoyées sont de la forme "$A$4"
    Lire l'aide VBA

    Citation Envoyé par Aide VBA

    Range.Address, propriété

    expression.Address(RowAbsolute, ColumnAbsolute, ReferenceStyle, External, RelativeTo)

    RowAbsolute Facultatif Variante Il a la valeur True pour renvoyer la section de la ligne dans la référence sous la forme d'une référence absolue. La valeur par défaut est True.
    ColumnAbsolute Facultatif Variante Il a la valeur True pour renvoyer la colonne de la ligne dans la référence sous la forme d'une référence absolue. La valeur par défaut est True.
    Cordialement,

    Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points
    Didier Gonard

    Dernier tutoriel :
    Le VBA qu'est ce que c'est ?
    Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
    Cours et tutoriels pour apprendre Excel
    N'oubliez pas de mettre : ..quand c'est le cas !

  4. #4
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Il faut créer une fonction pas une procedure(Sub)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function Teste() As range
     
    Set Teste = ActiveCell
     
    End Function
    Et si tu ne veux que les coordonnées (j'ai pas trop compris ce que tu voulais exactement)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function Teste2() As String
     
    Teste2 = ActiveCell.Address
     
    End Function
    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Points : 14
    Points
    14
    Par défaut
    Merci pour votre aide.

    J'ai créé une fonction qui recherche une valeur dans une plage de données et renvoi la valeur de la cellule trouvée.

    La cellule trouvée correspond en fait au titre d'une colonne. Connaissant la colonne, je souhaite ensuite faire des modifications sur cette colonnes (ce qui nécessite de connaitre la colonne exacte).
    (Je veux néanmoins un code générique, car je souhaite pouvoir faire la même chose avec des lignes par la suite)

    Peu être qu'une méthode permet de retranscrire le String "$C$35" en Range (en considérant que $ est un séparateur?)

    @+

  6. #6
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Je ne comprend pas bien ce que tu cherches à faire, je serais toi, je développerai un peu plus mon besoin.
    Certains de tes propos me laisse à penser qu'une partie du travail pourrait être réalisé avec des fonctions existantes, comme par exemple la recherche de l'adresse d'une cellule en fonction de sont contenu.

    Pour interpréter la chaîne "$B$25" comme tant l'adresse d'une cellule dans une formule, il te faut utiliser la fonction Indirect().

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/11/2014, 15h24
  2. Une fonction ou sub pour récupérer les coordonnées d'une cellule
    Par Nymar dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 24/09/2014, 15h02
  3. Réponses: 6
    Dernier message: 28/01/2012, 19h02
  4. Fonction qui renvoie les coordonnée de la cellule
    Par osoursou dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/11/2009, 19h22
  5. [E-02] Définir les coordonnées d'une cellule en fonction de son contenu
    Par Karatégirl77 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/03/2009, 14h52

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