Brauche hilfe bei excel makro

hallo
ich hab folgendes problem, ich hab sehr viele dateien die so aussehen

Spalte1******************Spalte2
'2008-06-05 00:00:02**** 0
'2008-06-05 00:01:00**** 0
'2008-06-05 00:02:00**** 60
'2008-06-05 00:03:00**** 0
'2008-06-05 00:07:00**** 0
'2008-06-05 00:08:00**** 0
'2008-06-05 00:09:00**** 60

also eine liste mit datums- und zeitangabe.

daraus möchte ich gerne stundenwerte haben…so zb
SpalteA************ B*************C
Datum************* 0-1Uhr**** 1-2Uhr . . . . . .23-24Uhr
05.06.2008****** 160
06.06.2008****** …

ich hoffe mein problem ist irgendwie klar geworden, für vorschläge bin ich sehr dankbar

Hallo Tobi,

es ist mir nicht ersichtlich woher die 160 für 0-1 Uhr stammen.

Bastle mal eine aussagekräftigere Beispielmappe und lade sie hoch mit FAQ:2606

Gruß
Reinhard

die 160 bitte durch 120 ersetzen. hab mich da verschrieben, entschuldigung

http://rapidshare.com/files/273856333/Mappe1.xls.html

Hallo mr.tobi

wenn ich das richtig verstanden habe, wills du in Tabelle2 sämtliche werte aus Tabelle1 Stündlich zusammengezählt haben.

dann würde ich es zB so schreiben: Tabelle2: B3: =SUMME(Tabelle1!B2:B61)

Hallo mr. tobi,

eine Makro-Lösung schaut etwa wie folgt aus. Die Liste der Tabellenblätter, die bei Summation nicht mit ausgewertet werden sollen muss du ggf. in der entsprechenden Case-Zeile anpassen bzw. ergänzen.

Gruß
Franz

Sub Summation()
 Dim wksSumme As Worksheet, rngDatum As Range, SpalteZeit As Long
 Dim wksData As Worksheet, ZeileData As Long, Zelle As Range
 Dim Datum As Date, Zeit As Date

 Set wksSumme = Worksheets("Tabelle2") 'Blatt in dem die Summen eingetragen werden sollen
 With wksSumme
 'Bereich mit den Datumsangaben für die summiert werden soll
 Set rngDatum = .Range(.Cells(3, 1), .Cells(.Rows.Count, 1).End(xlUp))
 'alte Summendaten löschen
 .Range(.Cells(3, 2), .Cells(.Rows.Count, 1).End(xlUp).Offset(0, 24)).ClearContents
 End With
 'Alle Tabellenblätter abarbeiten
 For Each wksData In ActiveWorkbook.Worksheets
 Application.ScreenUpdating = False
 Select Case LCase(wksData.Name)

 Case LCase(wksSumme.Name), "tabelle1"
 'Liste der Blätter, die nicht in der Summierung erfasst werden sollen \_
 - Kleinbuchstaben!!
 Case Else
 With wksData
 For ZeileData = 2 To .Cells(.Rows.Count, 2).End(xlUp).Row
 'Datum und Zeit aus dem Text-Datum in Spalte 2 ermitteln
 Datum = DateValue(Mid(.Cells(ZeileData, 2), 2, 10))
 Zeit = TimeValue(Mid(.Cells(ZeileData, 2), 12, 8))
 'Datum im Datumsbereich des Summenblatts suchen
 Set Zelle = rngDatum.Find(What:=Datum, LookIn:=xlValues, lookat:=xlWhole)
 If Zelle Is Nothing Then
 If MsgBox("Datum """ & Datum & """ aus Tabelle " & wksData.Name & " Zeile " \_
 & ZeileData & " nicht in " & wksSumme.Name, vbOKCancel) = vbCancel \_
 Then Exit Sub
 Else
 'Einfügespalte aus Zeit ermitteln
 Select Case Zeit \* 24
 Case Is \> 23: SpalteZeit = 24
 Case Is \> 22: SpalteZeit = 23
 Case Is \> 21: SpalteZeit = 22
 Case Is \> 20: SpalteZeit = 21
 Case Is \> 19: SpalteZeit = 20
 Case Is \> 18: SpalteZeit = 19
 Case Is \> 17: SpalteZeit = 18
 Case Is \> 16: SpalteZeit = 17
 Case Is \> 15: SpalteZeit = 16
 Case Is \> 14: SpalteZeit = 15
 Case Is \> 13: SpalteZeit = 14
 Case Is \> 12: SpalteZeit = 13
 Case Is \> 11: SpalteZeit = 12
 Case Is \> 10: SpalteZeit = 11
 Case Is \> 9: SpalteZeit = 10
 Case Is \> 8: SpalteZeit = 9
 Case Is \> 7: SpalteZeit = 8
 Case Is \> 6: SpalteZeit = 7
 Case Is \> 5: SpalteZeit = 6
 Case Is \> 4: SpalteZeit = 5
 Case Is \> 3: SpalteZeit = 4
 Case Is \> 2: SpalteZeit = 3
 Case Is \> 1: SpalteZeit = 2
 Case Is \>= 0: SpalteZeit = 1
 End Select
 Zelle.Offset(0, SpalteZeit).Value = Zelle.Offset(0, SpalteZeit).Value \_
 + .Cells(ZeileData, 6) 'Wert aus Spalte F
 End If
 Next
 End With

 End Select
 Application.ScreenUpdating = True
 Next
End Sub

danke für die antworten, ich werd die lösungen mal ausprobieren