-> Hier kostenlos registrieren
Hallo Leute, ich bastle mir gerade einen Datenlogger für einen Versuchsaufbau.
hierbei soll 40.000 mal ein Druck an eine Membran angelegt werden.
Hierzu hab ich mir ein kleinens Skript "wissenstransferiert", da ich selbst mit VB so ziemlich nichts am hut habe.
Die Aufzeichnungen erfolgt kontinueierlich, und es werden ca. alle halbe sekunde (einstellbar) Messpunkte ermittelt und gespeichert.
Mein Skript speichert alles in einer csv Datei.
Plöd ist nur, dass Excel nur 65.636 zeilen darstellen kann.
Jetzt möchte ich aber, dass mein Skript eine neue CSV datei erstellt, wenn die 65.636 zeilen gefüllt sind.
Hat wer da einen Kniff?
hierbei soll 40.000 mal ein Druck an eine Membran angelegt werden.
Hierzu hab ich mir ein kleinens Skript "wissenstransferiert", da ich selbst mit VB so ziemlich nichts am hut habe.
Die Aufzeichnungen erfolgt kontinueierlich, und es werden ca. alle halbe sekunde (einstellbar) Messpunkte ermittelt und gespeichert.
Mein Skript speichert alles in einer csv Datei.
Plöd ist nur, dass Excel nur 65.636 zeilen darstellen kann.
Jetzt möchte ich aber, dass mein Skript eine neue CSV datei erstellt, wenn die 65.636 zeilen gefüllt sind.
Hat wer da einen Kniff?
Code:
Dim fs, f, FName, Header
' Archivierung nur bei Wertänderung von 'FALSE' auf 'TRUE'
If SmartTags("m_archiv_start")And SmartTags("Archivierung_Ein/Aus") = True Then
' Archivierungspfad und Dateiname zusammensetzen
FName = StoragePath & "\Drucktest_Stopfen" & CStr(DatePart("d",Date)) & "_" & CStr(DatePart("m",Date)) & "_" & CStr(DatePart("yyyy",Date)) & ".csv"
' Tabellenkopf zusammenstellen
Header = "Storage time;Druck_Zelle_1;Druck_Zelle_2;Druck_Zelle_3;Druck_Zelle_4;Druck_Zelle_5;Druck_Zelle_6" & Chr(10)
' FileSystemObject erstellen
Set fs = CreateObject("FileCtl.FileSystem")
' FileObject erstellen
Set f = CreateObject("FileCtl.File")
' Datei öffnen bzw. erstellen, wenn sie noch nicht existiert
f.open FName, 8
' Wenn Datei 0 Byte groß, dann ist sie neu
If fs.FileLen(FName) = 0 Then
f.lineprint(Header)
' =0 => Tabellenkopf muss eingefügt werden
End If
' Werte der Variablen in die Archivdatei schreiben (VAR_1)
f.lineprint(CStr(Now) & ";" & CStr(SmartTags("DB_TP177.Druck_sensor_1"))& ";" & CStr(SmartTags("DB_TP177.Druck_sensor_2"))& ";" & CStr(SmartTags("DB_TP177.Druck_sensor_3"))& ";" & CStr(SmartTags("DB_TP177.Druck_sensor_4"))& ";" & CStr(SmartTags("DB_TP177.Druck_sensor_5"))& ";" & CStr(SmartTags("DB_TP177.Druck_sensor_6")))
' Datei wieder schließen
f.Close
' Verwendeten Speicher wieder freigeben
Set f = Nothing
Set fs = Nothing
End If
ResetBit(SmartTags("m_archiv_start"))
Zuletzt bearbeitet: