fcmfanswr
Goto Top

2 spalten auslesen und kleinere zahl behalten

hallo,
ich habe eine excel tabelle mit 2 spalten, in der 1. spalte befinden sich gruppen(mehrfach vorkommend) und in der 2. spalte stehen unterschiedliche werte zu den gruppen.
Ziel ist es immer die kleinste zahl einer gruppe in spalte 3 zu schreiben.

Beispiel:

spalte1.....spalte2.....spalte3

123.............10...............
123.............20...............10
456.............30...............
456.............40..............
456.............70...............30
789.............20..............
789............. ...............20


falls in einer zelle in spalte 2 nix drin steht soll diese zelle ignoriert werden, falls allerdings alle zellen einer gruppe leer sind soll in spalte 3 eine 0 geschrieben werden.

ich hoffe mir kann jemand bei meinem problem helfen!?

Danke

Content-Key: 100915

Url: https://administrator.de/contentid/100915

Printed on: April 19, 2024 at 15:04 o'clock

Member: bastla
bastla Nov 03, 2008 at 21:26:22 (UTC)
Goto Top
Hallo fcmfanswr!

Unter der Annahme, dass die Daten ab A3 eingetragen und, wie in Deinem Beispiel, die Spalte A sortiert ist, sollte das mit folgendem Makro zu lösen sein:
Sub Auswertung()
Z = 3
Sp = 1 'Spalte A  
MinStart = 9999999 'höher als die höchste vorkommende Zahl  
Min = MinStart
Do Until Cells(Z, Sp).Value = ""  
    If Cells(Z, Sp + 1).Value <> "" And Cells(Z, Sp + 1).Value < Min Then Min = Cells(Z, Sp + 1).Value  
    Z = Z + 1
    If Cells(Z, Sp).Value <> Cells(Z - 1, Sp).Value Then
        If Min = MinStart Then Min = 0
        Cells(Z - 1, Sp + 2).Value = Min
        Min = MinStart
    End If
Loop
End Sub
Grüße
bastla
Member: D3S3RT
D3S3RT Nov 03, 2008 at 21:44:19 (UTC)
Goto Top
geht das nicht mit ner einfachen wenn bedingung ?
wenn(a1>a2;a1;a2) ?
wenn(bedingung;dann;sonst)
gerade gemerkt, dass das ja doch komplexer ist face-smile
Member: fcmfanswr
fcmfanswr Nov 04, 2008 at 06:23:00 (UTC)
Goto Top
Vielen Dank für die schnelle und sehr gut funktionierende Lösung!
Dieses Forum ist echt klasse!
Danke vielmals.