Instruction dans un module de classe

1contact Messages postés 4 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 7 décembre 2004 - 7 déc. 2004 à 09:46
cushy007 Messages postés 19 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 1 mars 2005 - 3 févr. 2005 à 11:00
Dans mon programme j'utilise l'instruction "Left" dans un module de classe et cela ne fonctionne pas alors que cette même instruction placée sur une feuille fonctionne correctement.

Il me dit "Erreur de compilation: Tableau attendu"

Contactjavascript:openWinSmiley('./smiley.aspx')
Les Smileys

7 réponses

gandalflegris007 Messages postés 211 Date d'inscription lundi 31 mars 2003 Statut Membre Dernière intervention 11 juin 2007
7 déc. 2004 à 09:48
Salut 1contact,

tu peux mettre ta ligne de commande entière afin qu'on sache un peu ce que tu fais de ton left ???

Guich
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 déc. 2004 à 10:18
Left est une propriété de l'objet Form, donc si tu mets "Left" dans le code d'une form, VB comprend que tu fait appel à cette propriété de l'instance de form active. Si ta classe n'a pas de membre nommé "Left", VB ne peut pas l'inventer !!

Christophe R.
0
1contact Messages postés 4 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 7 décembre 2004
7 déc. 2004 à 12:08
Merci Guich et Christophe.

Code simple pour tester la fonction Left:
Dim AnyString, MyStr
AnyString = "Bonjour à tous" ' Définit la chaîne.
MyStr = Left(AnyString, 1)

Ce code fonctionne quand je le place derrière un bouton sur une feuille du projet et pas sur un Module de classe.

Dans mon cas il ne sagit pas d'une propriété de l'instance d'une Form mais plutot de la fonction basic Left qui n'est pas compris dans mon module de classe.

Contact
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 déc. 2004 à 13:12
Pardon ! J'avais pas compris qu'il s'agissait de cela !
Tu dis que dans un meme projet, Left() est reconnu dans une form et pas dans une classe ??
Etrange ! Quand cela arrive, c'est une référence à une DLL VB qui a sauté, mais cette référence vaut poru tout le projet, alors cela marche dans tout un projet ou ne marche pas dans tout le projet !!!

Christophe R.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
1contact Messages postés 4 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 7 décembre 2004
7 déc. 2004 à 13:58
Oui c bien ce que je pensai avant.
Mais comme j'utilise rarement les modules de classe je me suis dit qu'il y avait surement un traitement un ptit peu différent pour ces module.

A chaque fois que ce soit dans dans un module ou un module de classe il me dit "Erreur de compilation:Tableau attendu"

Sinon j'ai une ptit info supplémentaire:
Quand je selectionne Left et que j'appui sur F1
->dans le projet qui me pose problème
il m'affiche aucune aide disponible (pas normal)
->dans le projet qui fonctionne
il m'affiche l'aide de la fonction left (normal)

Si je tappe Left$ et que je le selectionne
->dans le projet qui me pose problème
il m'affiche l'aide de la fonction left (normal)

Mais la fonction me retourne l'erreur suivante
Erreur de compilation: Le caractère de déclaration de type ne correspond pas au type de données déclaré.

Pour ma part je pensai a composant ou une référence qui différait entre les 2 projet mais apparament non.
Mais si quelqu'un c'est ce que l'on doit faire pour activer/désactiver ces fonction dans VB6 je suis prenneur.

D'avance merci
Loïc (Contact)
0
1contact Messages postés 4 Date d'inscription lundi 6 décembre 2004 Statut Membre Dernière intervention 7 décembre 2004
7 déc. 2004 à 14:29
C bon j'ai trouvé (C'était focément une connerie)
J'ai intégrer dernièrement un composant .ocx qui doit conporter une fonction left .

C étrange mais dans un nouveau projet il me suffisait d'ajouter ce composant pour que la fonction Left ce retrouve bloqué?

Je me suis débarrasser de ce composant et cela fonctionne.

Merci a tous

Loic (Contact)
0
cushy007 Messages postés 19 Date d'inscription lundi 20 octobre 2003 Statut Membre Dernière intervention 1 mars 2005
3 févr. 2005 à 11:00

0
Rejoignez-nous