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 :

[VBA-E] utilisation de cells


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut [VBA-E] utilisation de cells
    Bonjour,

    J'ai des difficultés pour utiliser 'cell' ou 'cells'.
    Je voudrais designer une cellule par un nom de colonne au lieu de la lettre.
    J'ai bien mis des noms à certaines colonnes, mais ça ne marche pas.

    Appel du genre : cell(10, colNom).value = ...
    ou cell(12, colNom).paste

    parce qu'avec Range, on ne peut pas mettre de variable.

    que dois-je faire ?
    Merci à qui pourrait m'aider.

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    comment à tu mis un nom à tes colonnes...?

    par exemple en lui donnant le nom : MaColonne


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub test()
     Dim stMaVariable As String
     stMaVariable = "MaColonne"
     Range(stMaVariable) = "Joyeux Noël"
    End Sub

  3. #3
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    Par Insertion > Nom > Créer (sur la feuille)

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par flamel
    Par Insertion > Nom > Créer (sur la feuille)
    bon est tu as essayé de nommer une colonne MaColonne puis d'éxécuter le précédent code...?

  5. #5
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    oui

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par flamel
    oui
    ...? et alors c'est ce que tu ve...?

  7. #7
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    Je veux copier dans une cellule définie par un numéro de ligne et un nom de colonne, du genre : Cells(5, colNom)

    Je dois employer Cells , Range ne permet pas de mettre une variable.

  8. #8
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    et le code que j'ai précédament posté ... tu la lu ... Mavariable c'est le nom de ma variable..

  9. #9
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    Il va écrire dans la colonne , mais à quelle ligne ?

  10. #10
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    Ton code écrit dans toutes les lignes de la colonnes.
    Si dans Range je précise une ligne, je n'y arrive pas.

  11. #11
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    donc tu ne l'a pas essayé le code ... tu l'aurai vu ou il écrit...!

    pour la ligne il n'y as qu'as la préciser...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range(Mavariable).Rows(10).Copy Range("A1")

  12. #12
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Je n'ai pas trouvé la pierre philosophale .. mais ça peut marcher comme ça :

    Si "ColE" est le nom de la colonne E
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    toto = "ColE"
    cells(10, range(toto).Column )= "Mince alors ! Range marche avec des variables"

  13. #13
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    Je ne savais pas que range marche avec des variables, mais je n'utilisais par .Row.
    Je mettais ligne et colone dans les mêmes parenthèses.
    Je vais essayer ces nouvelles formes.
    Merci.

  14. #14
    Membre Expert
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 567
    Détails du profil
    Informations personnelles :
    Âge : 62
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 567
    Par défaut
    le plus simple c'est encore
    i = 2
    j = 3
    cells( i , j ) = "joyeux noël"

  15. #15
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2002
    Messages
    391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2002
    Messages : 391
    Par défaut
    Je pense avoir trouvé mon erreur.
    J'utilisais directement le nom de la colonne, alors qu'en le mettant d'abord dans une variable, puis cette variable dans les parenthèses de Cells, ça marche.
    Je suis content d'avoir appris que l'on peut utiliser une variable avec range.

    Merci encore à tous.

  16. #16
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    tu n'as pas besoin de passer par une variable suffit de mettre le nom de ta colonne entre " !!

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

Discussions similaires

  1. [XL-2007] [VBA-Excel] Erreur 1004 sur utilisation de Cells
    Par hergios dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/07/2012, 12h55
  2. [XL-2003] VBA utilisation de Cells.Value
    Par InSiderZ dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/02/2011, 08h36
  3. [VBA]xl*-Utiliser F1...F12 dans un form
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 40
    Dernier message: 27/01/2006, 11h34
  4. [vba excel] Utilisation de .borders
    Par steps5ive dans le forum Access
    Réponses: 3
    Dernier message: 22/09/2005, 15h02
  5. [VBA-Excel] Plagen avec Cells
    Par Damsou dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/01/2005, 10h49

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