matthiasr Geschrieben 31. März 2004 Geschrieben 31. März 2004 Hallo, mittels VB6 versuche ich Daten aus einer Excel Datei zu lesen, das öffnen und kopieren der Datei klappt, was nicht klappt ist das lesen. Bei der Zeile Sheet1.Cells(1, 1) = "Hallo" bekomme ich die Fehlermeldung "Objekt unterstützt diese Eigenschaft oder Methode nicht" woran kann das liegen? Matthias
-roTekuGeL- Geschrieben 31. März 2004 Geschrieben 31. März 2004 Original geschrieben von matthiasr Sheet1.Cells(1, 1) = "Hallo" dir ist aber klar dass man damit was in eine Zelle schreibt und nicht liest... schon mit msgbox Sheet1.Cells(1, 1) versucht?
matthiasr Geschrieben 31. März 2004 Autor Geschrieben 31. März 2004 Sorry, ja, dennoch bekomme ich die Fehlermeldung
-roTekuGeL- Geschrieben 31. März 2004 Geschrieben 31. März 2004 dann sei so gut und poste doch etwas mehr aus deinem Coding...
matthiasr Geschrieben 31. März 2004 Autor Geschrieben 31. März 2004 Quellcode: Private Sheet1 As Object Private Sub Command1_Click() Dim oExcel As Object Set oExcel = CreateObject("excel.Application") 'appl. öffnen Set Sheet1=oExcel.Workbooks.Open("C:\test1.xls") End Sub Private Sub Command3_Click() Sheet1.Cells(1, 1) = "Hallo" End Sub
-roTekuGeL- Geschrieben 31. März 2004 Geschrieben 31. März 2004 Original geschrieben von matthiasr Quellcode: Private Sheet1 As Object Private Sub Command1_Click() Dim oExcel As Object Set oExcel = CreateObject("excel.Application") 'appl. öffnen Set Sheet1=oExcel.Workbooks.Open("C:\test1.xls") End Sub Private Sub Command3_Click() Sheet1.Cells(1, 1) = "Hallo" End Sub wenn du ein Objekt in einer Sub erstellst würde ich nicht darauf bauen dass du von einer anderen Sub aus darauf zugreifen kannst... leg doch die Variablen außerhalb (also als Globale Variablen) an also praktisch da wo du das Sheet1 deklariert hast...
matthiasr Geschrieben 31. März 2004 Autor Geschrieben 31. März 2004 Ich habs auch schon so probiert Quellcode: Private Sheet1 As Object Private Sub Command1_Click() Dim oExcel As Object Set oExcel = CreateObject("excel.Application") 'appl. öffnen Set Sheet1=oExcel.Workbooks.Open("C:\test1.xls") Sheet1.Cells(1, 1) = "Hallo" End Sub mit dem selben Ergebnis. Ich denke das sollte auch Deinen Vorschlag erfüllen, wenn ich mich nicht täusche. Dennoch ein guter Grundsätzlicher Tipp. Matthias
-roTekuGeL- Geschrieben 31. März 2004 Geschrieben 31. März 2004 Public oExl As Object Private Sub OpenExlWS(ByVal sWSName As String, ByVal sTabName As String) Dim A As Variant Dim Zeile As Long, Spalte As Integer Set oExl = CreateObject("excel.Application") ' Workbook öffnen On Error Resume Next oExl.WorkBooks.Open sWSName If Err > 0 Then MsgBox "Exceldatei konnte nicht gefunden oder geöffnet werden.", _ vbExclamation, "Dateifehler" Exit Sub End If On Error GoTo 0 ' Tabelle selektieren: oExl.ActiveWorkbook.Sheets(sTabName).Select ' Zelle lesen A = oExl.ActiveSheet.Cells(1, 1).Value ' Zelle schreiben oExl.ActiveSheet.Cells(1, 1).Value = "Test" oExl.Quit Set oExl = Nothing End Sub Private Sub Form_Load() Call OpenExlWS("C:\TEST.xls", "Tabelle2") End Sub [/php] tested edit: die Zeile und Spalte kannst du dann noch Variabel machen... im Bsp. sind die fest (die variablen oben sind also unnötig...)
matthiasr Geschrieben 31. März 2004 Autor Geschrieben 31. März 2004 Heute Abend komme ich zum Testen und teile Dir mein Ergebniss mit.
matthiasr Geschrieben 31. März 2004 Autor Geschrieben 31. März 2004 Hallo, ich habe einfach ActiveSheet eingesetzt und schon läuft es, ich hoffe das ich damit nicht irgendwas völlig falsch obwohl es geht. oExl.ActiveSheet.Cells(1, 1).Value = "Test" Danke für die Hilfe Matthias
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden