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 :

ERREUR N°9 : l'indice n'appartient pas à la sélection avec .visible


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Inscrit en
    Avril 2010
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 257
    Points : 87
    Points
    87
    Par défaut ERREUR N°9 : l'indice n'appartient pas à la sélection avec .visible
    Bonjour à tous,

    J'ai un soucis au niveau du code de ma macro (ERREUR 9).
    en effet je veux lancer à l'ouverture d'une feuille excel, une autre feuille qui servira de base de données, mais je veux que ce classeur base de données soit caché ou complètement invisible à l'utilisateur. voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim xlBook As New Workbook
    Function IsOpen(Classeur$) As Boolean
        On Error Resume Next
        IsOpen = Not Workbooks(Classeur) Is Nothing
        Err.Clear
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub auto_Open()
             Dim Name As String
            'Ouvrir le classeur dont on a besoin avec tout le chemin...
     
             If IsOpen("BASE.xlsx") = False Then
                Set xlBook = Workbooks.Open("C:\macros\Production\corporate\Décès Collectif\BASE.xlsx")
                Name = "BASE.xlsx"
                Windows(ActiveWorkbook.Name).Visible = False
             End If
     End Sub
    c'est sur cette ligne que se trouve l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(ActiveWorkbook.Name).Visible = False
    Merci de votre aide !

  2. #2
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Bonjour,

    Tentes plutôt quelque chose comme ceci (non testé) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dim AppExcel as object
    set AppExcel = CreateObject("Excel.Application")
    Set xlBook = AppExcel.Workbooks.Open("C:\macros\Production\corporate\Décès Collectif\BASE.xlsx")
    AppExcel.Visible = false
    Cordialement,

  3. #3
    Membre régulier
    Inscrit en
    Avril 2010
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 257
    Points : 87
    Points
    87
    Par défaut
    sa ne fonctionne pas, le fichier base ne s'ouvre pas en même temps que le fichier qui contient la macro.
    *Merci quand même.

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Ceci fonctionne chez-moi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub test()
        Dim classeur As Workbook
        Set classeur = Workbooks.Open("vitefait.xlsx")
        Windows(classeur.Name).Visible = False
        ActiveWorkbook.Sheets("Feuil1").Range("a1").Value = classeur.Sheets("Feuil1").Range("a1").Value
        classeur.Close
    End Sub

  5. #5
    Membre actif
    Homme Profil pro
    Enthousiaste Excel
    Inscrit en
    Avril 2015
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enthousiaste Excel

    Informations forums :
    Inscription : Avril 2015
    Messages : 155
    Points : 242
    Points
    242
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.workoobs(tonworkbook).windows(2_ouunnom).visible= false
    ?

  6. #6
    Membre régulier
    Inscrit en
    Avril 2010
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 257
    Points : 87
    Points
    87
    Par défaut
    J'ai toujour la même erreur au niveau de la ligne .visible
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       Windows(classeur.Name).Visible = False
    mais l'erreur se produit quand je l'implémente sur le serveur et nom en local.

    J'ai plutot l'erreur objet requis !

  7. #7
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut



    Bonjour,

    p'tite question de logique : le classeur ouvert est donc la fenêtre active alors à quoi bon vouloir désigner une fenêtre ?!

    ActiveWindow



    _____________________________________________________________________________________________________
    Je suis Charlie - Je suis Bardo

  8. #8
    Membre actif
    Homme Profil pro
    Enthousiaste Excel
    Inscrit en
    Avril 2015
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enthousiaste Excel

    Informations forums :
    Inscription : Avril 2015
    Messages : 155
    Points : 242
    Points
    242
    Par défaut
    Citation Envoyé par Djohn92 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.workoobs(tonworkbook).windows(2_ouunnom).visible= false
    ?

    oops erreur de frappe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.Workbooks(1).Windows(2).Visible = False
    1
    2
    met tes paramètres

Discussions similaires

  1. [XL-2010] Erreur 9 l'indice n'appartient pas la sélection
    Par Ardiden31 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/04/2015, 15h42
  2. [XL-2010] Erreur 9 l'indice n'appartient pas la sélection
    Par Ardiden31 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/04/2015, 15h26
  3. [XL-2010] erreur '9' l'indice n'appartient pas à la sélection
    Par jad73 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/03/2013, 23h47
  4. [XL-2007] Erreur 9 l'indice n'appartient pas à la sélection
    Par stardeus dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/02/2013, 15h29
  5. [XL-2010] Erreur 9 l'indice n'appartient pas à la sélection
    Par PATDRO dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 13/08/2012, 23h23

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