von RainerUnfug » Mi, 05.07.2006 09:22
Hallo erstmal!
Bin momentan dabei ein Makro in Calc zu schreiben, dass mir unterschiedliche Datensätze in eine Datei schreibt und sie danach auch wieder auslesen kann.
Das Ganze funktioniert bloß nicht so wie ich des haben will, weil die put-Funktion immer unterschiedlich Lange Datensätze schreibt, sodass die get-Funktion nicht damit klar kommt
Anbei mal ein Quelltextbeispiel:
Code: Alles auswählen
Sub Schreiben
Dim tmpStr As String
Dim UtilFileHook As Integer
UtilFileHook = FreeFile
Open "E:\Andreas\test.txt" For Random Access Write As #UtilFileHook Len = 10
tmpStr = "hallo1"
Put #UtilFileHook, , tmpStr
tmpStr = "hallo20"
Put #UtilFileHook, , tmpStr
tmpStr = "hallo300"
Put #UtilFileHook, , tmpStr
Close #UtilFileHook
End Sub
'--------------------------------------
Sub Lesen
Dim Sheet As Object
Dim tmpStr As String
Dim UtilFileHook As Integer
Sheet = thisComponent.Sheets(0)
UtilFileHook = FreeFile
Open "E:\Andreas\test.txt" For Random Access Read As #UtilFileHook Len = 10
Get #UtilFileHook, 1, tmpStr
Sheet.getCellByPosition(0, 4).String = tmpStr
Get #UtilFileHook, 2, tmpStr
Sheet.getCellByPosition(0, 5).String = tmpStr
Get #UtilFileHook, 3, tmpStr
Sheet.getCellByPosition(0, 6).String = tmpStr
Close #UtilFileHook
End Sub
Laut OOo-Hilfe müsste alles stimmen und die put-Funktion sich an die bei Open angegebene Datensatzlänge halten, tut sie aber nicht...
Wär super, wenn mir jemand sagen kann woran des liegt, verzweifel echt langsam daran!
Ach ja, verwende OOo 2.0.2 deutsch und ne andre Art des Speicherns kann ich net verwenden, da ich die gespeicherte Datei zur Weiterverarbeitung mit nem andren Programm so brauche!
Hallo erstmal!
Bin momentan dabei ein Makro in Calc zu schreiben, dass mir unterschiedliche Datensätze in eine Datei schreibt und sie danach auch wieder auslesen kann.
Das Ganze funktioniert bloß nicht so wie ich des haben will, weil die put-Funktion immer unterschiedlich Lange Datensätze schreibt, sodass die get-Funktion nicht damit klar kommt
Anbei mal ein Quelltextbeispiel:
[code]
Sub Schreiben
Dim tmpStr As String
Dim UtilFileHook As Integer
UtilFileHook = FreeFile
Open "E:\Andreas\test.txt" For Random Access Write As #UtilFileHook Len = 10
tmpStr = "hallo1"
Put #UtilFileHook, , tmpStr
tmpStr = "hallo20"
Put #UtilFileHook, , tmpStr
tmpStr = "hallo300"
Put #UtilFileHook, , tmpStr
Close #UtilFileHook
End Sub
'--------------------------------------
Sub Lesen
Dim Sheet As Object
Dim tmpStr As String
Dim UtilFileHook As Integer
Sheet = thisComponent.Sheets(0)
UtilFileHook = FreeFile
Open "E:\Andreas\test.txt" For Random Access Read As #UtilFileHook Len = 10
Get #UtilFileHook, 1, tmpStr
Sheet.getCellByPosition(0, 4).String = tmpStr
Get #UtilFileHook, 2, tmpStr
Sheet.getCellByPosition(0, 5).String = tmpStr
Get #UtilFileHook, 3, tmpStr
Sheet.getCellByPosition(0, 6).String = tmpStr
Close #UtilFileHook
End Sub
[/code]
Laut OOo-Hilfe müsste alles stimmen und die put-Funktion sich an die bei Open angegebene Datensatzlänge halten, tut sie aber nicht...
Wär super, wenn mir jemand sagen kann woran des liegt, verzweifel echt langsam daran!
Ach ja, verwende OOo 2.0.2 deutsch und ne andre Art des Speicherns kann ich net verwenden, da ich die gespeicherte Datei zur Weiterverarbeitung mit nem andren Programm so brauche!