A l'aide.......... SVP

cs_allfab Messages postés 76 Date d'inscription mercredi 28 avril 2004 Statut Membre Dernière intervention 25 juillet 2005 - 4 mai 2004 à 15:20
cs_allfab Messages postés 76 Date d'inscription mercredi 28 avril 2004 Statut Membre Dernière intervention 25 juillet 2005 - 5 mai 2004 à 09:10
Bonjour à vous tous,
J'ai un énorme problème, je m'explique :
Sur deux form, j'ai ces 2, 3 lignes qui me permettent d'ouvrir un classeur excel existant et de récupérer les tableaux qui s'y trouvent....jusque là tout marche à merveille

'recuperation des noms des feuilles dans une liste déroulante
Private Sub form_load()

Set exlapp = CreateObject("excel.application")
Set exldoc = exlapp.Workbooks.Open("X:\Fabien\Logiciel Traitement Base de données\fiche.xls")
List1.Clear

For i = 1 To Sheets.Count
List1.AddItem (Sheets(i).Name)
Next i

End Sub
'recuperation du nom de la feuille dans la liste deroulante pour pouvoir ouvrir la feuille désirée
Private Sub List1_DblClick()

reponse = List1.Text
Set feuille = Worksheets(reponse)
feuille.Select

Form2.Hide
Form3.Show

End Sub

'recuperation du tableau existant sur la feuille excel dans une mshflexgrid
Private Sub form_load()

reponse = Form2.List1.Text
Set feuille = Worksheets(reponse)
feuille.Select
Set plage = feuille.Range("A1").CurrentRegion


With MS

MS.Cols = plage.Columns.Count
MS.Rows = plage.Rows.Count
MS.ColWidth(6) = 2500
MS.Col = 0
MS.Row = 0
MS.ColSel = MS.Cols - 1
MS.RowSel = MS.Rows - 1
plage.Copy
MS.Clip = Replace(Clipboard.GetText, vbCrLf, vbCr)
MS.ColAlignment(0) = flexAlignCenterCenter
MS.ColAlignment(1) = flexAlignCenterCenter
MS.ColAlignment(2) = flexAlignCenterCenter
MS.ColAlignment(3) = flexAlignCenterCenter
MS.ColAlignment(4) = flexAlignCenterCenter
MS.ColAlignment(5) = flexAlignCenterCenter
MS.ColAlignment(6) = flexAlignCenterCenter

End With
End Sub

'fermeture du classeur excel
Private Sub Command2_Click()

' fermeture d'EXCEL
exldoc.Close 0
exlapp.Application.Quit
DoEvents
Set plage = Nothing
Set feuille = Nothing
Set exldoc = Nothing
Set exlapp = Nothing
DoEvents
'passage de la form non désiré à la forme qui me permet de double cliquez sur un autre nom..... et c'est ici que ça bug. je clique sur le nom que je veux et il me mets en message d'erreur : erreur d'éxecution 1004, la méthode "worksheets" de l'objet global a échoué....

Form3.Hide
Form1.Show

End Sub

Si quelqu'un a une solution je lui en serait très reconnaissant. En plus c'est pour le boulot.

2 réponses

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
4 mai 2004 à 16:45
probable que ce soit le chemin de WOrkSheet qui ne lui plaise pas

exlapp.Worksheets devrait être meilleur, sinon il prend Worksheets pour une méthode

Manu
0
cs_allfab Messages postés 76 Date d'inscription mercredi 28 avril 2004 Statut Membre Dernière intervention 25 juillet 2005
5 mai 2004 à 09:10
ok je viens d'essayer mais ca marche pas mieux....
merci
0
Rejoignez-nous