| Autor |
|
schneire
Öfters hier

Angemeldet: 21.01.2006
Beiträge: 17
|
Verfasst am:
01.01.2008, 16:44 |
 |
Hallo zusammen und schon mal ein Gutes Sonnen- Jahr 2008 an alle
da ich die "Tageswerte" aus dem SunnyBoy 2006/2007 nach Solarlog überführen möchte, heir die Frage nach einer ggf. vorhanden Routine VBA/JAVA???
Die Daten sehen so aus aus und stehen im Verzeichnis Daily zur Verfügung:
SDM_YYMMTT.xls also SDM_060203.xls .....etc zB: (2 Reiter mit WR 1 udn WR 2)
19 465153
1,1 Pac
W
WR30-008 SN:2000091948
WR30-008
2000091948
03.02.2006 10:45:00 0
03.02.2006 11:00:00 0
03.02.2006 11:15:00 4
03.02.2006 11:30:00 28
03.02.2006 11:45:00 45
03.02.2006 12:00:00 85
03.02.2006 12:15:00 115
03.02.2006 12:30:00 148
03.02.2006 12:45:00 159
03.02.2006 13:00:00 183
03.02.2006 13:15:00 214
03.02.2006 13:30:00 268
03.02.2006 13:45:00 292
03.02.2006 14:00:00 333
03.02.2006 14:15:00 449
03.02.2006 14:30:00 488
03.02.2006 14:45:00 527
03.02.2006 15:00:00 589
03.02.2006 15:15:00 562
Nun brauchen wir ja jeweils eine min060203.csv bzw .js
Aus jeder im Verzeichnis vorhanden SDM.xls soll also die entsprechen .csv .js generiert werden.
Ich habe dazu eine minleer.csv erstellt, die die roten Felder (2 Wechselrichter) befüllt bekommen soll, da alle anderen DAten im SDM nicht vorhanden sind:
#Datum Uhrzeit WR Pac TagSumme Status Fehler Pdc1 Upv-Ist Uac WR Pac
1 0 3 0 2 2 132
So müssste also eine Excel-VBA Procedure gefunden/erweitert werden ähnlich dem Macro:
Sub SMA()
'
' SMA Makro
' Makro am 31.12.2007 von reinpc aufgezeichnet
''
' alle vorhanden Dateien mit Endung .xls im Verzeichnisses ermitteln und in liste bereitstellen
' minleer.csv öffenen.
' For 1 to Listenenden....
' aus Dateinamen das datum extrahieren
' .........dann so abarbeiten Beispieldatum 071102
' 1. Datei öffnen
Windows("SDM_071102.xls").Activate ' 1. Datei aus Liste im Verzeichnis müsste die Routine die eingelesen Dateinamen verwenden
Range("A8:A100").Select ' Datum max 100 Tageswerte ab Zeile 8
Range("A100").Activate
Selection.Copy
Windows("minleer.csv").Activate
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'einfügen = Datum formatiert
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False ' Tageszeit einbfügen = Zeit formatiert
Windows("SDM_071102.xls").Activate ' hier müsset vdie Routine die eingelesen Dateinamen verwenden
Range("B8:B100").Select 'Pac 1 Werte ab Zeile 8 holen
Range("B100").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("minleer.csv").Activate
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'PAC 1 eintragen
' zurück zur SDM-Datei sprung zu Reiterblatt 2
Windows("SDM_071102.xls").Activate ' hier müsset vdie Routine die eingelesen Dateinamen verwenden
Sheets("WR30-008 SN 2000091896").Select
Range("B8:B1100").Select 'Pac 2 Werte ab Zeile 8 holen
Application.CutCopyMode = False
Selection.Copy
Windows("minleer.csv").Activate
Range("L2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'Pac 2 eintragen
Range("N14").Select
End Sub
' Dann die Datei unterdem neuen Namem 'min & Tagesdatum & csv abspeichern.
.... nächste Datei aus der Liste holen und abarbeiten.
Und dann noch die ROUTINE für die .js oder gibt es dabereits eine Proggi welches das übernimmt.
Für die Unterstützung hierbei Herzlichen Dank im voraus
Reiner |
|
|
|
 |
Google-Werbung
|
Verfasst am:
|
 |
|
|
 |
|
|
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
| |