#1 Bonjour à tous, Je viens ici appeler à l'aide car je sèche complètement... Je remplis mes feuilles d'heures sous excel qui sont ensuite resaisies sous ACCESS... L indice n appartient pas à la sélection via ferrata. Je veux donc importer les heures tirées d'excel sous access (en ajout à la table access existante) mais quand je fais la manip, à la fin j'ai le message d'erreur "l'indice n'appartient pas à la selection". J'ai pourtant nommé les colonnes sous excel exactement comme sous Access, mis qu'une seule feuille dans mon fichier excel, je suis désespérée, je ne sais plus quoi faire!! une bonne âme pourait elle m'aider sachant qu'à côté de ça je ne maîtrise pas du tout VBA..
Un moteur de recherche permettra d'en trouver d'autres. Post by Gloops Un moteur de recherche permettra d'en trouver d'autres. Attention aux réponses concernant HR-Access: ça n'a rien à voir, c'est un logiciel destiné aux services du personnel. Le nom ressemble, c'est pour ça que c'est difficile pour les moteurs de recherche de faire la distinction. L'indice n'appartient pas à la sélection. Sur certains moteurs on peut essayer "Access -HR". Loading...
Si l'index est spécifié en tant que variable, vérifiez l'orthographe du nom de la variable. Vous avez déclaré un tableau, mais vous n'avez pas spécifié le nombre d'éléments. Par exemple, le code suivant génère cette erreur: Dim MyArray() As Integer MyArray(8) = 234 ' Causes Error 9. Visual Basic ne dimensionne pas implicitement les plages de tableau non spécifiées en tant que 0 - 10. Au lieu de cela, vous devez utiliser Dim ou ReDim pour spécifier de manière explicite le nombre d'éléments dans une matrice. Vous avez référencé un membre de collection qui n'existe pas. Essayez d'utiliser la construction For plutôt que de spécifier les éléments d'index. Vous avez utilisé une forme abrégée d'indice qui a explicitement spécifié un élément non valide. Par exemple, lorsque vous utilisez le! Indice hors plage (Erreur 9) | Microsoft Docs. operator with a collection, the! implicitly specifies a key. Par exemple, objet! keyName. la valeur est égale à objet. élément ( keyName). valeur. Dans ce cas, une erreur est générée si keyname représente une clé non valide dans la collection.
Activate' avec le code "Erreur 9: l'indice n'appartient pas à la sélection" alors que justement tout est fait pour qu'il aille en gestionOnglet et là il n'y va pas. Quelque'un aurait-il l'explication à mon problème? Et pourquoi pas, une autre méthode de test de présence d'un onglet? - Private Sub Traitement() Dim NomFichierEntreeTXT As String, LigneLue As String, Base As String, Objet, Fichier NomFichierEntreeTXT = Dir("*TOTO*", vbNormal) Do While NomFichierEntreeTXT <> "" Set Fichier = TextFile(NomFichierEntreeTXT, 1, -2) LigneLue = adLine Base = Trim(Mid(LigneLue, 9, 90)) On Error GoTo GestionOnglet Worksheets(Base). L indice n appartient pas à la sélection via le site. Activate On Error GoTo 0... Loop MsgBox "Le traitement est terminé! ", vbInformation, "INFO" Exit Sub GestionOnglet: after:=Sheets() = Base Resume Next End Sub En vous remerciant par avance
Activate End Sub Merci d'avance pour votre aide Patrick 18. 6 KB · Affichages: 56 #2 Bonsoir. N'avez vous pas un peu l'impression d'avoir ajouté un élément à la collection Workbooks d'une application Excel différente de celle sous laquelle votre macro tourne, et que par conséquent la propre collection de celle ci ne le contient pas? … D'ailleurs c'est vraiment à se demander pourquoi c'est fait comme ça! #3 Bonjour, Nouveau sujet, nouveau problème, mais toujours Dranreb pour nous aider. MERCI. Comme je ne suis pas informaticien et que je n'excelle pas dans Excel, je suis incapable de taper un code en partant de rien. Donc je me contente de chercher un bout de code sur le Net qui correspond a mon souhait et j'essaye de l'adapter. Est-ce que vous pourriez en langage de néophyte du VBA m'expliquer mon erreur? Merci #4 Bonjour Ben je crois que l'erreur c'est de faire comme ça justement. Il vaut mieux apprendre à écrire une procédure à partir de rien. L indice n appartient pas à la sélection vba canada. Quitte à commencer par la faire toute petite.