Option
Explicit
Sub
Saldo()
Dim
rngUsed
As
Range
Sheets(
"Tabelle3"
).Cells.Clear
With
Sheets(
"Tabelle2"
).UsedRange
.AutoFilter
.AutoFilter Field:=3, Criteria1:=
"Marketing"
.SpecialCells(12).Copy Sheets(
"Tabelle3"
).Cells(1)
.AutoFilter
End
With
With
Sheets(
"Tabelle3"
)
Set
rngUsed = .UsedRange.Columns(2)
rngUsed.Offset(, 1).Clear
rngUsed.Offset(, 1).Cells(1).Value =
"Wert"
Set
rngUsed = rngUsed.Offset(1).Resize(rngUsed.Rows.Count - 1)
rngUsed.Offset(, 1).FormulaR1C1 =
"=SUMIF(Tabelle1!C[-2],RC[-1],Tabelle1!C[-1])*-1"
rngUsed.Offset(, 1).Copy
rngUsed.Offset(, 1).PasteSpecial -4163
Application.CutCopyMode =
False
With
.UsedRange
.AutoFilter Field:=3, Criteria1:=
"<>0"
, Operator:=xlAnd
.SpecialCells(12).Copy Sheets(
"Tabelle3"
).Cells(4)
.AutoFilter
Application.CutCopyMode =
False
End
With
.Columns(
"A:C"
).Delete
.Columns(
"B:B"
).Delete
Set
rngUsed = .UsedRange.Columns(1)
Set
rngUsed = rngUsed.Offset(1).Resize(rngUsed.Rows.Count - 1)
With
.Sort
.SortFields.Clear
.SortFields.Add Key:=Range(rngUsed.Address) _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange Range(Sheets(
"Tabelle3"
).UsedRange.Address)
.Header = xlYes
.MatchCase =
False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End
With
.Cells(1).Activate
End
With
End
Sub