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 :

Problème VBA: Activer une feuille à l'aide d'une variable


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 8
    Par défaut Problème VBA: Activer une feuille à l'aide d'une variable
    bonjour à tous, je rencontre une petite difficulté sur une macro.
    Voila ce que je cherche à faire :
    j'ai un workbook composé de trois feuilles nommés general, azerty et sauvegarde
    J'essaye de récupérer la fraction non irréductible de la cellule E21 (par exemple 4/12) de la feuille azerty et de la mettre dans la cellule D3 de la feuille General

    cependant je m'aperçois que j'arrive à le faire avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub essai()
     
    Sheets("General").Select
    Range("D3").Select
    ActiveCell.FormulaR1C1 = "=azerty!R[18]C[1]"
     
    End Sub
    En vrai je ne connais pas directement le nom de la feuille, ce nom est enregistré dans la cellule A1 de la feuille sauvegarde ( dans la cellule A1 il y a donc la chaine de caractère azerty), ainsi je souhaite récupérer le nom de cette feuille et puis de refaire la même procédure.

    cela me donne le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub essai()
     
    Dim a As String
    a = Sheets("sauvegarde").Range("A1").Value
    Sheets("General").Select
    Range("D3").Select
    ActiveCell.FormulaR1C1 = "=Sheets(a)!R[18]C[1]"
     
    End Sub
    Le problème c'est qu'avec ce code vba ne comprends pas que j'active la feuille azerty par le code Sheets(a) et je ne comprends pas pourquoi.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim a As String
    a = Sheets("feuil1").Range("A1").Value
    Sheets("feuil2").Range("D3") = Sheets(a).Range("a18").Value
    sans activer la feuille

    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim a As String
    a = Sheets("feuil1").Range("A1").Value
    Sheets(a).select ' active la feuille de la valeur "a1"
    Sheets("feuil2").Range("D3") = Sheets(a).Range("a18").Value

Discussions similaires

  1. [XL-2010] Comment savoir s'il y a un message d'erreur dans une feuille à l'aide d'une formule ?
    Par brunop3165 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 15/05/2014, 23h31
  2. [VBA-E]Protection de certaine case d'une feuille Excel
    Par DonKnacki dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/03/2006, 10h10
  3. [VBA-E]Remplir combobox avec contenu d'une feuille Excel
    Par Deejoh dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/03/2006, 16h16
  4. [VBA-E]Créer un fichier txt depuis une feuille Excel
    Par marie10 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 20/02/2006, 17h36
  5. [VBA]activer les feuilles d'un classeur Excel
    Par jemigo dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/01/2006, 17h58

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