Lecture excel via form vb 6

Résolu/Fermé
oceane - 17 janv. 2009 à 22:42
 Oceane - 21 janv. 2009 à 18:15
Bonjour,
J'ai un formulaire qui doit afficher une forme de verbes irréguliers contenu dans ma bd excel.
Ma connexion à cette fonctionne très bien sous visual basic 6. Cependant Aucun verbes ne s'affiche, et je ne sais pas d'ou vien le pb car lorsque je teste en vb sous excel tout fonctionne parfaitement.
Je vous joins le code
merci de votre aide

'on affecte oExcel
Set oExcel = CreateObject("Excel.Application")

'on cache la fenêtre excel
oExcel.Visible = False

'on affecte oWk
Set oWk = oExcel.Workbooks.Open(App.Path & "\verbes.xls")

'on affecte oFeuille
Set oFeuille = oWk.Sheets

'on lit la dernière ligne du fichier excel
derLigne = oFeuille(1).Range("A65535").End(xlUp).Row

'on fait un travail aléatoire'
Randomize

'on vide tt les zones de texte'
t_bv.Text = ""
t_preterit.Text = ""
t_pp.Text = ""
t_traduction.Text = ""

'on choisit une forme'
forme = Int(Rnd() * 4 + 1)

'on choisit un verbe'
verbe = Int(Rnd() * derLigne + 1)

oFeuille(1).Range("A" & verbe).Select

'on selectionne la colonne et la cellule de départ'
oFeuille(1).Range("A1").Select

'on choisit la forme donnée aléatoirement'
Select Case forme
'cas de la base verbale'
Case 1
t_bv.Text = oFeuille(1).ActiveCell.Value
'on ne peut pas modifier le verbe'

'on affiche le verbe a la forme de la base verbale'
l_bv1.Visible = True
'on cache la case à remplir'
t_bv.Visible = False
'on fait apparaitre les cases à remplir'
l_preterit1.Visible = False
t_preterit.Visible = True
l_pp1.Visible = False
t_pp.Visible = True
l_traduc.Visible = False
t_traduction.Visible = True

'on met à jour le label'
l_bv1.Caption = t_bv.Text

'cas du prétérit'
Case 2
...
....
A voir également:

1 réponse

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
19 janv. 2009 à 00:54
Bonjour,
Pour commencer, quand ont a un problème ont ne travaille pas avec un classeur caché, il sera encore temps de le faire quand ce sera terminer.
Et il y à un ti truc qui me semble pas bien...
Tu devrais initialiser oFeuille directement avec la feuille désignée, genre..
Set oFeuille = oWk.Sheets(1)
et travailler avec.. par ex: oFeuille.range("A1") = 20
Sinon, si ton classeur n'est pas trop volumineux tu peu mettre tout dans un zip et le mettre sur Cjoint.com et mettre le lien dans un poste suivant.
A+
0
C'est bon j'ai réussi. En effet il ne fallait pas travailler avec un fichier cacher
0