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 :

"L'indice n'appartient pas à la sélection"


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2015
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Juin 2015
    Messages : 288
    Par défaut "L'indice n'appartient pas à la sélection"
    bjr le forum,

    je bute depuis plusieurs jours sur un pb, j'ai réussi à "remonter" à la source : je n'arrive pas à rendre actif un .xlsm et donc une de ses feuilles.
    le code en question :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            Workbooks(Fact_HNO_FullFileName).Activate
            Sheets("export_RDU").Activate
    le 1ere ligne "passe", mais ne fait rien apparemment, puisque le fichier actif est mon PERSONAL.XLSB (pourquoi ???).
    du coup ca plante sur la 2e (puisque la feuille n'existe pas dans le fichier actif).

    je vous mets ce qui se passe juste auparavant, cela peut avoir (sûrement) son importance, sachant qu'à ce moment-là, c'est le fichier .xlsm (valeur de Fact_HNO_FullFileName) qui est actif (ainsi que la feuille "export_RDU"):

    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
    23
    24
    25
            ActiveSheet.ListObjects("Tableau9").Range.AutoFilter Field:=Range("Nom").Column, Criteria1:=Nom_Presta
            ActiveSheet.ListObjects("Tableau9").Range.AutoFilter Field:=Range("semaineAST").Column, Criteria1:=Numero
     
            'rech derniere ligne
            Row_WB = Sheets("export_RDU").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row
            'si tableau vide, mssg d'erreur
            If Row_WB = 2 Then
                MsgBox ("Aucune intervention trouvée pour " & Nom_Presta & " en W" & Numero & ", corriger et relancer.")
                'ouvrir pdf + dder si on continue ou pas (ENR pdf sur shpt + del)
                ThisWorkbook.FollowHyperlink Address:=pceJointe
                reponse = MsgBox("ENR le pdf sous shpt (si ''non'', arrêt) ?", vbYesNo)
                If reponse = vbYes Then
                    GoTo Enr_Del_PDF
                Else
                    Exit Function
                End If
            End If
     
    Enr_Del_PDF:
     
        'ENR pièce jointe ss shpt sous un nv nom
     
            'supp filtres
            Workbooks(Fact_HNO_FullFileName).Activate
            Sheets("export_RDU").Activate
    explications :
    - je cherche à enregistrer un pdf vers un sharepoint Windows
    - et renseigner mon .xlsm (= valeur de Fact_HNO_FullFileName) avec la date du jour
    --> je filtre donc le .xlsm sur certains champs avant de le renseigner
    - si row_WB = 2 --> c'est que le résultat des filtres donne 0 ligne
    --> dans ce cas j'ouvre le pdf pour voir le contenu et je demande si on continue ou pas
    - si on répond "oui", on continue pour l'enregistrer...

    ... et là ça plante, et le fichier "actif" = PERSONAL.XLSB

    c'est parce que je me suis rendu compte que le nv filtre ne fonctionnait pas, que je n'arrivais pas à supprimer les 2 filtres existant, que la cellule A2 (où commence mon tableau) n'était pas active, que la feuille ne l'était pas non plus,... que j'en suis arrivé à essayer de "forcer" la sélection de Fact_HNO_FullFileName - sans succès...

    Est-ce du à l'ouverture du pdf ?

    d'avnce merci de vous pencher sur mon probème,

    bien cordt
    WB

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Déjà, je vois que tu en a fais une fonction (je vois Exit Function) alors il faut savoir qu'une fonction n'est pas faite pour exécuter des actions mais pour retourner une valeur (valeur qui peut être numérique, objet, ou autre encore...) ou un tableau de valeurs.
    Il te faut mettre ton code dans une Sub ()...End Sub et tester !

  3. #3
    Membre éclairé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2015
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Juin 2015
    Messages : 288
    Par défaut
    Bonjour

    j'ai donc modifié pour en faire une Sub... End Sub...

    ...et même résultat :-(
    c'est toujours mon PERSONAL.XLSB qui est "actif"

    Cordialement

  4. #4
    Expert éminent
    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
    Par défaut

    Bonjour,

    juste un rappel :   un bon code n'a pas besoin d'activer un classeur pour accéder à ses feuilles et leurs cellules …

    ___________________________________________________________________________________________________________
    Je suis Paris, Istanbul, Berlin, Nice, Bruxelles, Charlie, …

  5. #5
    Membre éclairé
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2015
    Messages
    288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Juin 2015
    Messages : 288
    Par défaut
    bjr,

    je sais que mon code est loin d'être "bon", optimal, etc., je fais ce que je peux avec l'enregistreur de macro et ce que je trouve sur internet...

    mais là, je ne comprends même pas pourquoi c'est mon PERSONAL.XLSB qui est "actif" !
    ???

    cordt

  6. #6
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonsoir,

    Poste ton code en entier (de Sub à End Sub) pour voir !

Discussions similaires

  1. [AC-2007] Erreur : L'indice n'appartient pas à la sélection
    Par Nayko dans le forum VBA Access
    Réponses: 5
    Dernier message: 04/04/2014, 11h23
  2. Réponses: 13
    Dernier message: 27/04/2012, 10h57
  3. Tableau de valeurs : l'indice n'appartient pas à la sélection
    Par Maryy dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/08/2008, 14h42
  4. erreur execution 9: l'indice n'appartient pas à la sélection
    Par oliver75 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/07/2007, 12h00
  5. l'indice n'appartient pas à la sélection ??
    Par Bernard83140 dans le forum Access
    Réponses: 4
    Dernier message: 06/05/2006, 22h27

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