vba , open- xls , feuille innaccessible

vba , open- xls , feuille innaccessible - VB/VBA/VBS - Programmation

Marsh Posté le 26-03-2006 à 20:51:27    

je debute et je coince des que je veux utiliser excel ("range" n'est pas si complique que ca !)je suis en vb6-pro.j'ai fait "Reference" et la prog suivante dans un Module.Open se passe bien et je coince lorsque je veux utiliser une cellule. j'ai essaye tous les cas, sans succes.voici le code :Option Explicit
'debut du module
Dim fxlsao As String
Public rasm As String
Public concell As String
Public li As Integer         '  val ligne
Public co As Integer         '  val colone
Public myxlapp As excel.Application
Public myxlbook As excel.Workbook
Public myxlsheet As excel.Worksheet
 
'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                                         '@
  Public Sub myxlopen()                                  '@                                                         '@
 
Set myxlapp = CreateObject("excel.application" )
' ouverture du fichier excel
Set myxlbook = myxlapp.Workbooks.Open("e:\GP\G_XLS\tension.xls" )
' Set myxlsheet = myxlbook.Worksheets(1)                ' soit ?
 Set myxlsheet = CreateObject("excel.sheet" )          ' soit ?  "TYPE INCOMPATIBLE  ! !!"
myxlapp.Visible = True  'True pour verif  ensuite false!je l'ai vu !
Set myxlbook = myxlapp.ActiveWorkbook
Set myxlsheet = myxlbook.ActiveSheet
'TRACE SVP
 Presentation.txtzspresent.Text = "OPEN fait puis SET de  " & myxlapp.ActiveWorkbook.Name & _
myxlbook.ActiveSheet.Name  ' CETTE LIGNE FONCTIONNE  car trace donne TENSION.XLS et FEUIL1 ! !
 
End Sub
'@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   Public Sub lecrange()
myxlapp.Range(rasm).Value = concell
Presentation.txtzspresent.Text = "trace range apres OPEN fait puis 2 SET  " & myxlapp.ActiveWorkbook.Name & _
myxlbook.ActiveSheet.Name & rasm & concell
fxlsao = "zut"
 
End Sub
rasm est renseigne   concell est toujours vide
j'ai du oublier qlq chose ; mille mercis de bien vouloir m'aider

Reply

Marsh Posté le 26-03-2006 à 20:51:27   

Reply

Marsh Posté le 28-03-2006 à 18:17:55    

Set myxlsheet = CreateObject("excel.sheet"          ' soit ?  "TYPE INCOMPATIBLE  ! !!"  
set myxlwheet cela doit définir une feuille donc la syntaxe
set myxlsheet = myxlbook.sheets(numéro d'index de la feuille ou "son nom" )
 
 
le range ce fait sur une feuille et non sur l'application.
donc pas écrir myxlapp.Range(rasm).Value = concell  
 
pais plutot myxlsheet .range(rasm).Value = concell  

Reply

Marsh Posté le 28-03-2006 à 20:21:49    

1000 mercis de m'aider .j'ai mis en place , a savoir :Option Explicit
'debut du Mdule
Dim fxlsao As String
Public rasm As String
Public concell As String
Public myxlapp As excel.Application
Public myxlbook As excel.Workbook
Public myxlsheet As excel.Worksheet                                                        '@
  Public Sub myxlopen()
Set myxlapp = CreateObject("excel.application" )
Set myxlbook = myxlapp.Workbooks.Open("e:GPG_XLStension.xls" )
myxlapp.Visible = True  'True pour verif  ensuite false!je l'ai vu !
Set myxlbook = myxlapp.ActiveWorkbook
Set myxlsheet = CreateObject("excel.sheet" )    ' erreur 13
Set myxlsheet = myxlbook.Sheets(1)
'TRACE SVP
 Presentation.txtzspresent.Text = "OPEN fait puis SET de  " & myxlapp.ActiveWorkbook.Name & _
myxlbook.ActiveSheet.Name  ' CETTE LIGNE FONCTIONNE  car trace donne TENSION.XLS et FEUIL1 ! !
End Sub
   Public Sub lecrange()
myxlsheet.Range(rasm).Value = concell
Presentation.txtzspresent.Text = "trace range apres OPEN fait puis 2 SET  " & myxlapp.ActiveWorkbook.Name & _
myxlbook.ActiveSheet.Name & rasm & concell
End Sub
ERREUR 13 sur le SET CREATEOBJECT("EXCELSHEET" )
j'ai tout nettoye pour faire plus simple,comme chez le docteur.
j'avoue que je suis tres malade:j'ai cru pouvoir tout faire tout seul !  
ce doit etre bon de reussir !!!  

Reply

Marsh Posté le 30-03-2006 à 15:18:01    

SET CREATEOBJECT("EXCELSHEET, cette instruction ne marchera jamais
écri uniqument : Set myxlsheet = myxlbook.Sheets(1)  
 
ou si tu veux ajouter une feuille au classeur
set myxlsheets myxlbook.sheets.add (de mémoire ca doit etre ca)

Reply

Marsh Posté le 02-04-2006 à 09:48:04    

    hourra !!!!  !!! ca mache  !!!  !!!
        j'ai pu acceder a une cellule grace a IHONOLULU   !
mille mercis a  ihnolulu
ihonolulu est vraiment tres fort ; il n'y en a pas beaucoup comme lui.
moi debutant je poursuit deja , avec deja un autre pb a resoudre.le temps et la determination vont faire leurs oeuvres.
 
encore bravo   ihonolulu  avec en plus le plaisir d'etre aidé

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed