über ein einfaches Makro sortiere ich mir Daten in einem separaten Excel Sheet. Mit dem Durchlauf des Makros wird bei durch das Makro nicht angesprochenen Zellen, bei denen eine Summenfunktion hinterlegt ist, die Summenfunktion rausgenommen.
Gibt es eine elegante Lösung, über die mir die Summenfunktion automatisch erhalten bleibt, ohne dass extra ein "Summen"makro in der Schleife einzufügen ist?
hier das Makro:
Private Sub ComboBox2_Change()
fuellen
End Sub
Private Sub fuellen()
leeren
z = 3
kst = ComboBox1.Value
kst2 = ComboBox2.Value
Do Until ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, 1) = "Ges"
If ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, 1) = kst Then
Do
For s = 3 To 33
If s = 28 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(8, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(8, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 27 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(9, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(9, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 26 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(10, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(10, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 33 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(11, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(11, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 32 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(12, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(12, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 31 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(13, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(13, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 30 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(14, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(14, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 11 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(17, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(16, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 10 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(18, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(17, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 9 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(19, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(18, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 7 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(22, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(20, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 6 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(23, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(21, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 4 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(24, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(22, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 5 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(25, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(23, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 3 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(26, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(24, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 8 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(27, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(25, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 24 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(30, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(27, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
If s = 25 Then ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(31, 3) = ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(28, 3) + ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z, s)
Next s
z = z + 1
Loop Until ActiveWorkbook.Worksheets("Übersetzer für HC-Report").Cells(z - 1, 1) = kst2
End If
z = z + 1
Loop
End Sub
Private Sub leeren()
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(8, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(9, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(10, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(11, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(12, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(13, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(14, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(17, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(18, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(19, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(22, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(23, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(24, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(25, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(26, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(27, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(30, 3) = 0
ActiveWorkbook.Worksheets("Kst_Zuordnung_Bereich").Cells(31, 3) = 0
End Sub
Vielen Dank im Voraus für Eure Hilfe.
Eva