quezo
Mitglied
Hallo nochmals,
also das mit dem Anzeigen und Bearbeiten der Excel-Datei im Anwendungsfenster hab ich nun hinbekommen.
Das nächste Problem ist, das Speichern will nicht so recht klappen.
D. h. wenn man eine bestehende Datei überschreiben will, wird die Datei irgendwie nicht geschrieben. Es kommt kein Fehler, aber wenn man die xls-Datei wieder öffnet sind alle Änderungen weg. Es ist wieder der Ursprungszustand hergestellt.
Nachfolgend der Code. Vielleicht weiß jemand, wie man das mit dem Speichern hinbekommt.
Wäre wirklich dankbar, wenn jemand helfen könnte, da ich in VB kein Meister bin
also das mit dem Anzeigen und Bearbeiten der Excel-Datei im Anwendungsfenster hab ich nun hinbekommen.
Das nächste Problem ist, das Speichern will nicht so recht klappen.
D. h. wenn man eine bestehende Datei überschreiben will, wird die Datei irgendwie nicht geschrieben. Es kommt kein Fehler, aber wenn man die xls-Datei wieder öffnet sind alle Änderungen weg. Es ist wieder der Ursprungszustand hergestellt.
Nachfolgend der Code. Vielleicht weiß jemand, wie man das mit dem Speichern hinbekommt.
Code:
Dim strExcel
Private Sub ExcelOle_Updated(Code As Integer)
Dim ExcelOle As OLE
End Sub
Private Sub Form_Load()
Dim ExcelX As Object
Dim WBook As Workbook
'Verbindung zu Excel herstellen
Set ExcelX = New Excel.Application
strExcel = "C:\Dokumente und Einstellungen\Arschmidt\Eigene Dateien\arbeitsblatt.xls"
'Eine Arbeitsmappe öffnen
Set WBook = ExcelX.Workbooks.open(strExcel)
' ExcelOle.CreateEmbed (strExcel)
End Sub
Private Sub open_Click(Index As Integer)
' wird im "CommonDialog" auf "Abbrechen" geklickt,
' wird (wenn CancelError = True ist) ein Laufzeitfehler ausgelöst.
On Error Resume Next
With OpenDialog
' Filter setzen - hier wird festgelegt, mit welchem Format
' eine Datei geöffnet wird.
.Filter = "Excel Arbeitsmappe (*.xls)|*.xls"
' Dialogfeld Öffnen anzeigen
.ShowOpen
If .FileName <> "" Then
strExcel = .FileName
ExcelOle.CreateEmbed (strExcel)
ExcelOle.Refresh
End If
End With
End Sub
Private Sub quit_Click()
Form1.quit
End Sub
Private Sub save_Click()
Dim F As Integer
With OpenDialog
.Flags = cdlOFNOverwritePrompt
.Filter = "Excel Arbeitsmappe (*.xls)|*.xls"
.ShowSave
F = FreeFile
Open strExcel For Output As #F
ExcelOle.
Close #F
End With
End Sub
Wäre wirklich dankbar, wenn jemand helfen könnte, da ich in VB kein Meister bin