29.11.2015, 23:41
Hallo liebes Forum !
Ich habe leider wieder ein außergewöhnliches Anliegen:
Ich muss eine Anzahl von xlsx-Dateien mit je 12 Monatsblättern die mit Datumszeilen und deren Wochentage versehen sind
mit einer Datei mit VBA (xlsm) einen Jahreswechsel durchführen. Das habe ich bereits erledigt, aber ich habe jeweils in der Spalte I am Sonntag der Woche eine Summe für die Zellen Montag bis Sonntag in Spalte H zu bilden.
Das wäre kein Problem, wenn die Datei nicht eine xlsx-Datei wäre und auch bleiben soll und die Summenformel natürlich im neuen Jahr wo anders stehen muss und das ändert sich auch für jeden Monat.
Ich könnte es natürlich mit dem Makro-Generator manuell durchführen, aber das ist ein ziemlicher Zeitaufwand.
Nun dachte ich die Formel jeweils anpassen zu können, aber das funktioniert leider nicht.
Ich bin sicher, dass Ihr dafür eine Lösung finden werdet und bitte um Eure geschätzte Hilfe.
Wenn ein entsprechendes Monats-Tabellenblatt gewünscht wird, kann ich gerne eines per Mail zusenden.
Vielen Dank.
Liebe Grüße aus Innsbruck
Helmut
Ich habe leider wieder ein außergewöhnliches Anliegen:
Ich muss eine Anzahl von xlsx-Dateien mit je 12 Monatsblättern die mit Datumszeilen und deren Wochentage versehen sind
mit einer Datei mit VBA (xlsm) einen Jahreswechsel durchführen. Das habe ich bereits erledigt, aber ich habe jeweils in der Spalte I am Sonntag der Woche eine Summe für die Zellen Montag bis Sonntag in Spalte H zu bilden.
Das wäre kein Problem, wenn die Datei nicht eine xlsx-Datei wäre und auch bleiben soll und die Summenformel natürlich im neuen Jahr wo anders stehen muss und das ändert sich auch für jeden Monat.
Ich könnte es natürlich mit dem Makro-Generator manuell durchführen, aber das ist ein ziemlicher Zeitaufwand.
Nun dachte ich die Formel jeweils anpassen zu können, aber das funktioniert leider nicht.
Ich bin sicher, dass Ihr dafür eine Lösung finden werdet und bitte um Eure geschätzte Hilfe.
Wenn ein entsprechendes Monats-Tabellenblatt gewünscht wird, kann ich gerne eines per Mail zusenden.
Vielen Dank.
Code:
Sub Formeln_SpalteI()
Dim i, z, datum
Dim loLetzte, So1, So2, So3, So4, So5, H11, Mo1, Mo2, Mo3, Mo4, Mo5, lole As Integer
loLetzte = Range("A46").End(xlUp).Offset(-2, 0).Row
Range("I11:I" & loLetzte).ClearContents
For i = 11 To loLetzte
datum = Cells(i, 3).Value
If Weekday(datum) <> 1 Then '1 = Sonntag
GoTo Ende
Else
Cells(i, 2).Select
z = z + 1
End If
If z = 1 Then
So1 = Cells(i, 2).Row '1.Sonntag bestimmt (Zeile13)
ElseIf z = 2 Then
So2 = Cells(i, 2).Row '2.Sonntag bestimmt (Zeile 20)
ElseIf z = 3 Then
So3 = Cells(i, 2).Row '3.Sonntag bestimmt (Zeile 27)
ElseIf z = 4 Then
So4 = Cells(i, 2).Row '4.Sonntag bestimmt (Zeile 34)
ElseIf z = 5 Then
So5 = Cells(i, 2).Row '5.Sonntag bestimmt (letzte Zeile 41)
ElseIf z = 6 Then
lole = Cells(loLetzte, 2).Row
ElseIf Cells(loLetzte, 3).Row < So5 Then
So5 = Cells(loLetzte, 2).Row
Ende:
End If
Next i
Cells(So1, 9).Select
ActiveCell.Formula = "=SUMME(H11:H & So1)" 'Hier wird in die Zelle (So1,9) "NAME?" geschrieben
Mo1 = So1 + 1
Cells(So2, 9).Select
ActiveCell.Formula = "=SUMME(H & Mo1: H & So2)"
Mo2 = So2 + 1
Cells(So3, 9).Select
ActiveCell.Formula = "=SUMME(H & Mo2 : H & So3)"
Mo3 = So3 + 1
Cells(So4, 9).Select
ActiveCell.Formula = "=SUMME(H & Mo3 : H & So4)"
Mo4 = So4 + 1
Cells(So5, 9).Select
ActiveCell.Formula = "=SUMME(H & Mo4 : H & So5)"
End Sub
Liebe Grüße aus Innsbruck
Helmut