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 :

Simplification de code : Trouver les row_column d'une cellule précise


Sujet :

Macros et VBA Excel

  1. #1
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut Simplification de code : Trouver les row_column d'une cellule précise
    Bonjour,

    je voudrais améliorer le code suivant
    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
     
        tabls = Split(Specific_param, "|")
        For idx = 0 To UBound(tabls)
        Select Case idx
         Case 0
             Sel_Range = "AR1"
         Case 1
             Sel_Range = "AS1"
         Case 2
             Sel_Range = "AT1"
         Case 3
             Sel_Range = "AU1"
         Case 4
             Sel_Range = "AV1"
         Case 5
             Sel_Range = "AW1"
         Case 6
             Sel_Range = "AX1"
         Case 7
             Sel_Range = "AY1"
        End Select
        Range(Sel_Range) = tabls(idx)
    en remplaçant le select case par un code du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Cell(convertion(AR+idx), 1) = tabls(idx)
    Est-ce possible ? je ne trouve pas comment.
    En fait je cherche la correspondance entre Range(myrange) et cell(mycell)

    Merci pour votre aide.

  2. #2
    Membre éprouvé
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Points : 1 191
    Points
    1 191
    Par défaut
    bonjour,


    je comprends pas trop ton probléme. .

    AR = 44 ° colonne :

    d'ou :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(1,44+idx) = tabls(idx)

  3. #3
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut
    Bonjour,

    merci pour ta réponse.

    AR = 44 ° colonne :
    Si on veut éviter de compter (et de se tromper), il n'ya pas une fonctionne VBA qui donne le parametre Cell pour une colonne X ?

  4. #4
    Membre éprouvé
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Points : 1 191
    Points
    1 191
    Par défaut
    tu peu faire :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cells(1,RANGE("AR1").Column +idx) = tabls(idx)


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RANGE("AR" & 1+idx)= tabls(idx)

  5. #5
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut
    Re,

    merci. Entre temps, j'ai trouvé et testé ceci (qui fonctionne).:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("AR1").Offset(0, idx) = tabls(idx)
    J'ai maintenant un problème avec .column, pour cacher les colonnes optionnelles de ma table :

    J'essaie ceci, mais ca crame avec erreur 1004 sur la lign en gras:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        For idx = UBound(tabls) + 1 To 7
         Columns("AR").Offset(idx).EntireColumn.Hidden = True
       Next idx
    Une idée ?

  6. #6
    Membre éprouvé
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Points : 1 191
    Points
    1 191
    Par défaut
    oui ,

    remplace Columns("AR") par Range("AR1")

  7. #7
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut
    J'ai trouvé avec Column (sans offset qui n'est pas supporté).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        For idx = UBound(tabls) + 1 To 7
         Columns(Range(Sel_Range).Column + idx).EntireColumn.Hidden = True
       Next idx
    Encore merci pour ton aide. Cela m'a eclairé.

    Bonne soirée.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/11/2014, 15h24
  2. Trouver les item d'une fenêtre
    Par troumad dans le forum GTK+ avec C & C++
    Réponses: 4
    Dernier message: 25/02/2007, 11h05
  3. Trouver les tables possédant une colonne précise
    Par keumlebarbare dans le forum Oracle
    Réponses: 2
    Dernier message: 17/10/2006, 13h07
  4. Trouver les tables d'une base de données access
    Par boss_gama dans le forum ASP
    Réponses: 2
    Dernier message: 22/06/2006, 11h56
  5. [Débutant][indexes]Trouver les indexes d'une table
    Par Gromitou dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 13/12/2005, 17h50

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