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

Excel Discussion :

Interroger le nom des Feuilles dans un Workbook


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Par défaut Interroger le nom des Feuilles dans un Workbook
    Salut,

    Je ne suis pas un grand connaisseur du langage de programmation, c'est pourquoi je me demandais si quelqu'un pouvait m'aider pour quelque chose d'assez simple à mes yeux.

    Je voudrais interroger dans l'un de mes Workbook tous les noms des Feuilles existantes. Si l'une d'elles se nomme "Canada", je voudrais retourner une Msgbox, sinon je voudrais qu'elle se nomme "Canada".

    Merci Encore!

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonsoir.

    Et si aucune ne se nomme "Canada" comment vas-tu reconnaître celle qui doit être ainsi renommée?

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Par défaut
    Eh bien je vais lui demander de renommer Activesheet, tout simplement .

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juin 2007
    Messages : 106
    Par défaut
    En fait, voici une idée du code que je m'étais déjà fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim Sht As Sheet
    Dim Trouve As Boolean
    Trouve = False
     
    For Each Sht In Application.Worksheets
        If Sht.Name = "Canada" Then Trouve = True
    Next Sht
     
        If Trouve = False Then
            Sheets.Add
            ActiveSheet.Name = "Canada"
        Else
        MsgBox ("Non")
        End If
    Si j'essaie d'appliquer un peu la même idée dans le cas d'un WorkBook, tout marche comme sur des roulettes, mais dans le cas de feuilles...ça ne fonctionne pas . Il m'envoie comme message ceci : User-defined type not defined (en point sur Dim Sht as Sheet)

  5. #5
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    Bonsoir,

    pour l'erreur c'est WorkSheet et pas Sheet , pour les feuilles de calculs ..



    tu dis quoi ...

  6. #6
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Eh bien je vais lui demander de renommer Activesheet, tout simplement
    EN fait d'après ton programme ce n'est pas cela. Je comprends plutôt que tu cherches dans ton classeur s'il y a une feuille nommée 'Canada' et s'il n'y en a pas tu en crées une que tu nommes ainsi. Si c'est bien ce que tu veux faire, tu n'es pas loin du tout. J'ai modifié le moins possible de ton code initial.

    Essaie
    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
    Dim Sht As Excel.Worksheet
    Dim Trouve As Boolean
     
    Trouve = False
     
    For Each Sht In Application.ThisWorkbook.Sheets
        If Sht.Name = "Canada" Then Trouve = True
    Next Sht
     
        If Not Trouve Then
            Set Sht = Application.ThisWorkbook.Sheets.Add
            Sht.Name = "Canada"
        Else
            MsgBox ("Non")
        End If
     
        Set Sht = Nothing
    Si tu me permets un conseil : cherche en FAQ WorkSheet et Sheet

    Cordialement,

    PGZ

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

Discussions similaires

  1. [XL-2010] liste déroulante dans userform avec les noms des feuilles
    Par sk8hunter dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/07/2015, 01h28
  2. [Toutes versions] Recupérer les noms des feuilles dans Excel
    Par cinfo84 dans le forum Access
    Réponses: 3
    Dernier message: 01/08/2012, 00h10
  3. recupération des noms des feuilles actives dans un listbox
    Par phileurof dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/05/2012, 17h08
  4. [E-02] Recherche de redondance dans le nom des feuilles d'un classeur
    Par Karatégirl77 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 27/11/2008, 16h01
  5. Comment remplir un ComboBox avec le nom des feuilles Excel ?
    Par libracom dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 27/06/2005, 16h14

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