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 :

convertir un range en cells


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
    Septembre 2002
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 148
    Par défaut convertir un range en cells
    Bonjour,
    Mon probleme c'est de convertir un "range(A1)" en "cells(1,1)"
    j'ai fait une recherche avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Valtrouvé = [B:B].Find(What:=ValCherche, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns).Address
    j'ai comme format de retour "Valtrouvé = range(A1)"

    hors je prefererai avoir le format "Valtrouvé = cells(1,1)" car je veux apres faire :
    Si quelqu'un a une idée
    MERCI

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 102
    Par défaut
    Bonjour

    Valtrouvé est de type range

    Valtrouvé.Row donnera le numéro de ligne
    Valtrouvé.Column donnera le numéro de colonne, valeur exploitable avec cells
    Valtrouvé.offset(0,1) donnera une cellule sur la même ligne situé sur la colonne suivante.

    Jp014

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 148
    Par défaut
    Merci JP014
    mais malgre cela je n'arrive toujours pas a recuperer le n° de ligne et de colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Valtrouvé = [B:B].Find(What:=ValCherche, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns).Address
        ligne = Valtrouvé.Row
        colonne = Valtrouvé.Column
    ,

    voici le code ou me suis je trompé ?
    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
    27
    28
    29
    30
    31
     
    Sub MACRO_AT_INSEE()
     
    ' Recuperation du nom du fichier et de la feuille dans une variable =====
    NomFichierAT = ActiveWorkbook.Name
    NomFeuilleAT = ActiveSheet.Name
    ' FIN ==================================================
     
    ' Demande d'ouvrir un fichier à l'utilisateur =======================
    Set OuvrirFichierINSEE = Application.Workbooks.Open(Application.GetOpenFilename)
    NomFichierINSEE = ActiveWorkbook.Name
    NomFeuilleINSEE = ActiveSheet.Name
    ' Fin ===================================================
     
    ' Deplacement d'une feuille d'un classeur à l'autre ==================
        Sheets(NomFeuilleINSEE).Select
        Sheets(NomFeuilleINSEE).Move Before:=Workbooks(NomFichierAT). _
            Sheets(1)
        Windows(NomFichierAT).Activate
    ' Fin ===================================================
    Sheets(NomFeuilleAT).Select
    Derniere_valeur = Sheets(NomFeuilleAT).Cells(5000, 1).End(xlUp).Row
     
    For lig = 3 To Derniere_valeur
        ValCherche = Cells(lig, 7).Value
        Sheets(NomFeuilleINSEE).Select
        Valtrouvé = [B:B].Find(What:=ValCherche, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns).Address
        ligne = Valtrouvé.Row
        colonne = Valtrouvé.Column
    Next lig
    End Sub
    merci pour votre aide

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Salut backdraf et le forum
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Valtrouvé = [B:B].Find(What:=ValCherche, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns).Address
    Retourne l'adresse en Valtrouvé, en référence absolues, sous un format texte!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Valtrouvé = [B:B].Find(What:=ValCherche, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns)
    retourne la valeur Trouvé dans la variable plage Valtrouvé. Et comme c'est une cellule, on peut en extraire la ligne (.Row) et la colonne (.Column)
    A+

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 148
    Par défaut
    Merci Gorfael

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

Discussions similaires

  1. Différence entre Range et cells
    Par bibvba dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/06/2017, 12h36
  2. Plage de données : Range vs Cells : Erreur 1004
    Par Secco dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/06/2008, 17h29
  3. Convertir Range en Cells
    Par Sakapatate dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/05/2008, 14h18
  4. Définition d'un range par Cells(), Cells()
    Par Dereck07 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/03/2008, 22h11
  5. Export Excel - Souci avec Range et Cells
    Par timoth dans le forum VBA Access
    Réponses: 3
    Dernier message: 14/02/2008, 15h00

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