Supportnet / Forum / Tabellenkalkulation
Makro: Zellenvergleich und addition
Frage
Hi Leute,
ich hab ein Problem und hab mit VB schon länger nix mehr gemacht, so dass ich so ziemlich bei null wieder anfangen muss.
So zu meiner Frage:
Ich habe ein Sheet, in dem mehrmals eine Nummer einer Bestellung aufgelistet ist. hierzu möchte ich einem neuen Tabellenblatt dann diese Nummer und die dahinterstehende Menge ausgeben.
Hierbei sollte die Schleife so lange laufen, wie die Zellen in Spalte A den gleichen Wert haben und gleichzeitig die Menge in spalte K aufsummieren.
Kann mir einer mal ne Anleitung machen wie ich das am besten angehe ?
Viele Dank und sanfte Grüße
Fallout
Antwort 1 von Saarbauer
Hallo,
auf die schnelle eine Lösung ohne VBA
=WENN(ZÄHLENWENN($A$1:A2;A2)=1;SUMMENPRODUKT(($A$2:$A$500=A2)*($K$2:$K$500));"")
Ich gehe davon aus, dass in der ersten Zeile die Überschriften stehen und habe 500 Zeilen angenommen. Werte müssten unter umständen angepasst werden. Die Anzeige erfolgt nur bei den ersten auftreten eines Wertes in Spalte A.
Der eintrag erfolgt in Zeile 2 und ist dann nach unten zu ziehen
Gruß
Helmut
auf die schnelle eine Lösung ohne VBA
=WENN(ZÄHLENWENN($A$1:A2;A2)=1;SUMMENPRODUKT(($A$2:$A$500=A2)*($K$2:$K$500));"")
Ich gehe davon aus, dass in der ersten Zeile die Überschriften stehen und habe 500 Zeilen angenommen. Werte müssten unter umständen angepasst werden. Die Anzeige erfolgt nur bei den ersten auftreten eines Wertes in Spalte A.
Der eintrag erfolgt in Zeile 2 und ist dann nach unten zu ziehen
Gruß
Helmut
Antwort 2 von fallout
Hi Helmut,
danke, aber so ähnlich habe ich das versucht. und das geht leider so einfach auch net.
naja versuch ichs halt weiter.
Gruß Fallout
danke, aber so ähnlich habe ich das versucht. und das geht leider so einfach auch net.
naja versuch ichs halt weiter.
Gruß Fallout
Antwort 3 von Saarbauer
Hallo,
Sub Übertragen()
´
´ Übertragen Makro
´ Makro am 14.08.03 von Bauer aufgezeichnet
´
Sheets("Tabelle1").Select
Range("a:a").Select
Selection.Copy
Sheets("Tabelle2").Select
Range("a1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
letzte_Zeile = Range("A65536").End(xlUp).Row
For i = 3 To letzte_Zeile
If Range("A" & i - 1).Value = Range("A" & i).Value And Range("A" & i).Value <> "" Then
Rows(i).Select
Selection.Delete
i = i - 1
End If
Next i
letzte_Zeile = Range("A65536").End(xlUp).Row
Range("B2").Select
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT((Tabelle1!R2C1:R22C1=RC[-1])*(Tabelle1!R2C11:R22C11))"
Range("B2").Select
Selection.AutoFill Destination:=Range("B2:B" & letzte_Zeile), Type:=xlFillDefault
End Sub
Versuch es mal mit dem Makro
Gruß
Helmut
Sub Übertragen()
´
´ Übertragen Makro
´ Makro am 14.08.03 von Bauer aufgezeichnet
´
Sheets("Tabelle1").Select
Range("a:a").Select
Selection.Copy
Sheets("Tabelle2").Select
Range("a1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
letzte_Zeile = Range("A65536").End(xlUp).Row
For i = 3 To letzte_Zeile
If Range("A" & i - 1).Value = Range("A" & i).Value And Range("A" & i).Value <> "" Then
Rows(i).Select
Selection.Delete
i = i - 1
End If
Next i
letzte_Zeile = Range("A65536").End(xlUp).Row
Range("B2").Select
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT((Tabelle1!R2C1:R22C1=RC[-1])*(Tabelle1!R2C11:R22C11))"
Range("B2").Select
Selection.AutoFill Destination:=Range("B2:B" & letzte_Zeile), Type:=xlFillDefault
End Sub
Versuch es mal mit dem Makro
Gruß
Helmut

