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 :

Sélection colonne et ligne avec nom précisé [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de m@tix
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 304
    Par défaut Sélection colonne et ligne avec nom précisé
    Bonjour,

    D'ordinaire, j'utilise l'instruction suivante pour aller chercher la valeur d'une cellule et la mettre dans une autre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets(CStr(xxx)).Cells(yyy, rech.Column).Value = Workbooks(fic).Sheets(feu).Range("A1").Value
    Cette fois-ci, je cherche à récupérer la valeur d'une cellule, connaissant la colonne (C), mais ne connaissant pas le numéro de ligne, seulement un "nom" situé dans la colonne A (en face de la valeur à récupérer), mais qui peut selon le cas changer de ligne. Mais dans tous les cas, le nom dans la colonne A correspondant à la valeur de la colonne C sera situé sur la même ligne.

    Comment feriez-vous ?

    Et, de façon plus générale, si je ne connaissais pas la lettre de la colonne concernée non plus, mais seulement des coordonnées "nominatives" pour la cellule, du type "Mesure1" sur une ligne et "janvier" sur une colonne, au lieu de H8, par exemple, quelle est la syntaxe pour aller récupérer la valeur ?

    Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut RECHERCHE
    Bonjour m@tix, Bonjour le Forum,

    J'avoue me perdre un peu dans tous ces détails.

    Un extrait de ton classeur illustré par des flèches et 2 ou 3 lignes de commentaires du type "Je connais ceci (ou le nom de ceci)", et Je recherche cela" en précisant les noms de cellules éventuels, serait le bienvenu.

    A plus donc.

  3. #3
    Membre éclairé Avatar de m@tix
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 304
    Par défaut
    Ok, j'admets que ce n'est pas des plus clairs.. Voici ci-joint un fichier exemple basique, avec un commentaire. Si ce n'est toujours pas clair, n'hésitez pas à m'en faire part !
    Fichiers attachés Fichiers attachés

  4. #4
    Membre chevronné Avatar de delphine35
    Femme Profil pro
    Analyste BO
    Inscrit en
    Novembre 2009
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste BO

    Informations forums :
    Inscription : Novembre 2009
    Messages : 265
    Par défaut
    Essaye quelque chose comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Lig = Sheets(1).Range("A65536").End(xlUp).Row
    Col = Sheets(1).Range("IV1").End(xlToLeft).Column
     
    Set cell_trouve = Sheets(1).Range(Cells(1, 1), Cells(Lig, Col)).Find("Texte Rechercher")
     
    If Not cell_trouve Is Nothing Then
        Lig_Cell_trouve = cell_trouve.Row
        Col_Cell_trouve = cell_trouve.Column
    End If

  5. #5
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut recherche
    Salut m@tix,

    C'est un peu plus clair.

    Une précision supplémentaire.

    Comment savoir le nom du classeur à ouvrir qui renverrait la valeur souhaitée (ici 45) ?

  6. #6
    Membre éclairé Avatar de m@tix
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 304
    Par défaut
    Citation Envoyé par MarcelG Voir le message
    Comment savoir le nom du classeur à ouvrir qui renverrait la valeur souhaitée (ici 45) ?
    Ceci n'est pas important, en effet, si j'utilise une instruction de ce type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets(CStr(xxx)).Cells(yyy, rech.Column).Value = Workbooks(fic).Sheets(feu).Range("A1").Value
    Le classeur est déjà sélectionné auparavant car j'ai pris le soin d'ouvrir le fichier en question.

    Merci Delphine35, mais je crois qu'il va manquer une instruction pour aller placer la valeur trouvée dans la cellule que je veux, à l'image de celle que j'ai citée dans mon premier message.. non ?

  7. #7
    Membre chevronné Avatar de delphine35
    Femme Profil pro
    Analyste BO
    Inscrit en
    Novembre 2009
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste BO

    Informations forums :
    Inscription : Novembre 2009
    Messages : 265
    Par défaut
    Cela pourra ressembler a quelque chose comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If Not cell_trouve Is Nothing Then
        Lig_Cell_trouve = cell_trouve.Row
        Col_Cell_trouve = cell_trouve.Column
       Sheets(1).Cells(lig_cell_trouve, col_cell_trouve + 2).Value = Workbooks(fic).Sheets(feu).Range("A1").Value
    End If
    Tous dépend de où tu veux mettre la valeur.

    Ici, si je trouve le texte "Texte Rechercher" en cellule C8, il va changer la valeur de la cellule E8 (colonne +2)

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

Discussions similaires

  1. [WD-2007] Sélection d'une ligne avec retour à la ligne
    Par csempere dans le forum VBA Word
    Réponses: 4
    Dernier message: 25/04/2009, 07h27
  2. [MySQL] sélection des dernières lignes avec affichage aléatoire
    Par nabmoah dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 08/08/2008, 23h57
  3. Sélection d'une ligne avec un GridView
    Par The eye dans le forum VB.NET
    Réponses: 2
    Dernier message: 25/01/2008, 13h45
  4. Macro VBA pour mettre colonne en ligne avec cellule fusionnée
    Par dany13 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/01/2008, 06h09
  5. sélection colonnes et lignes d'une dbgrid
    Par propa dans le forum Bases de données
    Réponses: 6
    Dernier message: 13/05/2004, 10h32

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