Erreur 9 !!

cytotor Messages postés 2 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 7 janvier 2003 - 7 janv. 2003 à 18:23
hy_honey Messages postés 67 Date d'inscription lundi 9 mai 2005 Statut Membre Dernière intervention 8 août 2005 - 26 mai 2005 à 10:32
Je travaille sur un intranet, chaque peronne a donc sont propre identifiant. Mon programme marche tres bien lorsque je l'utilise, mais lorsqu'un autre personne veut s'en servir une erreur 9 stop le programme!
Les fichiers appeles etant sur un espace dique ouvert a tous les utilisateurs, cette erreur n'est pas du a des interdictions d'acces.
Si vous avez la solution, d'avance merci.

Meilleurs voeux,
cytotor.

3 réponses

cs_PROGRAMMIX Messages postés 1133 Date d'inscription mercredi 2 octobre 2002 Statut Membre Dernière intervention 24 juillet 2011 2
7 janv. 2003 à 18:32
Tu trouveras ci-après une copie de l'aide en ligne concernant l'erreur 9 en espérant que cela puisse t'être utile... car tu ne donnes pas grand chose comme information...

"Indice en dehors de la plage (erreur 9)

Les éléments de tableaux et les membres de collections ne sont accessibles qu'à l'intérieur de leurs plages définies.

Causes et solutions de cette erreur :
Vous avez fait référence à un élément de tableau inexistant.
L'indice peut être plus grand ou plus petit que la plage d'indices possibles, ou le tableau peut ne pas avoir de dimensions attribuées à ce stade de l'application. Contrôlez la déclaration du tableau pour vérifiez ses limites supérieures et inférieures. Utilisez les fonctions UBound et LBound pour conditionner les accès aux tableaux si vous travaillez avec des tableaux redimensionnés. Si l'index est spécifié sous forme devariable, vérifiez l'orthographe du nom de la variable.

Vous avez déclaré un tableau mais n'avez pas spécifié le nombre d'éléments. Par exemple, le code suivant provoque cette erreur :
Dim MyArray() As Integer
MyArray(8) = 234 ' Cause l'erreur 9.
Visual Basic ne dimensionne pas implicitement les plages de tableau en 0 ? 10. Vous devez plutôt utiliser Dim ou ReDim pour spécifier explicitement le nombre d'éléments dans un tableau.

Vous avez fait référence à un membre de collection inexistant.
Essayez d'utiliser la structure For Each...Next au lieu de spécifier des éléments d'index.

Vous avez utilisé une forme abrégée d'indice qui spécifie implicitement un élément incorrect.
Par exemple, lorsque vous utilisez l'opérateur ! avec une collection, le ! spécifie une clé implicitement. Par exemple, object!keyname.value équivaut à object.item(keyname).value. Dans ce cas, une erreur est générée si keyname représente un nom de clé incorrect dans la collection. Pour rectifier cette erreur, utilisez un nom de clé ou un index correct pour la collection.
0
cytotor Messages postés 2 Date d'inscription mardi 7 janvier 2003 Statut Membre Dernière intervention 7 janvier 2003
7 janv. 2003 à 19:41
Voici quelques precisions supplementaires.
les lignes provoquant l'erreur

Cells(Rowwork + 1, Columnwork + 12).Activate
ActiveCell.FormulaR1C1 = Workbooks(Nyclientbook).Sheets(Num_sheet).Cells(50, Columnny).Value
Selection.NumberFormat = "#,##0.00_);[Red](#,##0.00)"

Le but de ces quelques lignes est tres simple, recopier la valeur de la cellule (50, x) qui se trouve dans une feuille donnee du classeur Nyclientbook dans la feuille d'un autre classeur.

Mais le plus etrange est que le programme ne plante pas a tous les coups. L'erreur apparait en fonction des utilisateurs (au demarrage de l'ordinateur), ceux ci ayant les memes restrictions. Le module ainsi que les fichiers s'y rapportant sont sur un espace commun.

Je suis le seul a pouvoir l'utiliser.
J'ai d'abord developper le module sur l'espace disque qu'y m'est reserve et dont je suis le seul a avoir acces. Apres verification, je l'ai transfere vers l'espace commun en corrigeant les adresses des fichiers appeles.

l'origine de l'erreur est cette formule toute simple:
ActiveCell.FormulaR1C1 = Workbooks(Nyclientbook).Sheets(Num_sheet).Cells(50, Columnny).Value

Si vous voulez des precisions dite-le moi.
0
hy_honey Messages postés 67 Date d'inscription lundi 9 mai 2005 Statut Membre Dernière intervention 8 août 2005
26 mai 2005 à 10:32
salut si quelqu'un peu maider !!! quand j'affiche dans un textbox le resultat dune requette une erreur me sort :
L'index se trouve en dehors des limites du tableau.
et je vois vraiment pas se que sa veu dire
0
Rejoignez-nous