Autosumme in markierten Feldern

Bild

Betrifft: Autosumme in markierten Feldern
von: Timo
Geschrieben am: 12.08.2015 08:08:06

Hallo Zusammen,
ich habe ein Excelmakro das eine Liste von Arbeitnehmern verarbeitet und in verschiedene Blöcke packt. Ich habe jetzt jedoch das Problem, dass ich keine VBA Formel finde für die Funktion "AutoSumme in allen markierten Feldern". Ich lass das Makro alle leeren Zellen markieren und möchte das er in jeder leeren Zelle die darüberliegenden Werte aufaddiert. Das funktioniert mit einem Druck auf den Knopf "AutoSumme" wunderbar, rufe ich die Tastenkombination ALT+= mit einem Makro ab erzeugt er mir allerdings einen Fehler. Hat jemand eine Idee wie ich das Problem löse? Gibt es eine Funktion wie selection.autosum ?
Vielen Dank
Gruß Timo

Bild

Betrifft: AW: Autosumme in markierten Feldern
von: selli
Geschrieben am: 12.08.2015 09:14:45
hallo timo,
überprüfe mal die schreibweise in der 8. zeile deines makros.
möglicherweise stimmt das so nicht.
gruß
selli

Bild

Betrifft: AW: Autosumme in markierten Feldern
von: Timo
Geschrieben am: 13.08.2015 13:17:37
Hallo,
wie in Zeile 8?
Hier mein Makro
Columns("B:B").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("C:C").Select
Selection.Replace What:="40", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="223", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="800", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="2370", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="2490", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="941", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="970", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="977", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="978", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="2420", Replacement:="A", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

Range("G1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-4],""A"")"
Range("G1").Select
Selection.copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Columns("C:C").Select
Selection.SpecialCells(xlCellTypeConstants, 2).Select
Selection.EntireRow.Delete


Columns("C:C").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-2]=R[-1]C[-2],0,""INSERTROW"")"
Range("C2").Select
Dim letzteZeile As Long
letzteZeile = Cells.SpecialCells(xlCellTypeLastCell).Row
Range("C2").AutoFill Destination:=Range("C2:C" & letzteZeile - G1), Type:=xlFillDefault
Columns("C:C").Select
Selection.SpecialCells(xlCellTypeFormulas, 2).Select
Selection.EntireRow.Insert
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft

Range("F1").Select
ActiveCell.FormulaR1C1 = _
"=IF(OR(RC[-3]=120,RC[-3]=200,RC[-3]=233,RC[-3]=234,RC[-3]=241,RC[-3]=260,RC[-3]=415,RC[-3]=2430,RC[-3]=2480,RC[-3]=""""),"""",""ACHTUNG"")"
Range("F1").Select
Dim Ende As Long
With ActiveSheet
Ende = .Cells(.Rows.Count, 2).End(xlUp).Row - 1
.Range("F1:F1").AutoFill Destination:=Range("F1:F" & Ende + 1), Type:=xlFillDefault
End With
Columns("F:F").Select
Selection.FormatConditions.Add Type:=xlTextString, String:="ACHTUNG", _
TextOperator:=xlContains
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Font
.Bold = True
.Italic = False
.TintAndShade = 0
End With
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False

Columns("D:D").Select
Selection.SpecialCells(xlCellTypeBlanks).Select
In der letzten Zeile soll entsprechend in alle markierten Feldern die Autosumme gebildet werden.
Gruß Timo

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Autosumme in markierten Feldern"