Office: Kleinsten Wert und Position des kleinsten Wertes im Array

Helfe beim Thema Kleinsten Wert und Position des kleinsten Wertes im Array in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, wie bekomme ich den kleinsten Wert und speziell die Position des kleinsten Wertes in einem Array raus? Das Array ist zweidimensional.... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von tgasau, 2. November 2008.

  1. Kleinsten Wert und Position des kleinsten Wertes im Array


    Hallo zusammen,

    wie bekomme ich den kleinsten Wert und speziell die Position des kleinsten Wertes in einem Array raus? Das Array ist zweidimensional.

    Danke im voraus !!
    Till *Smilie

    :)
     
  2. Hallo Till,

    dazu fällt mir im Augenblick nur das nachfolgende Prozedere ein:

    Code eingefügt mit
     
  3. OfficeUser Neuer User
    Hallo Till,

    das könntest Du z.B. diesem Makro lösen :

    VBA-Code:
    Sub WertUndPosAusArrayBestimmen()
        'Ermittelt den kleinsten Wert und dessen Position aus einem ARRAY
        '04.11.2008, NoNet

        Dim arrWerte, lngZ As Long, intS As Integer, varMin
        arrWerte = [A1:C10] 'Werte aus Tabelle in ARRAY einlesen
        varMin = Application.Min(arrWerte)
        MsgBox varMin, , "Kleinster Wert der Matrix" 'Kleinsten Wert ausgeben
        'Position per MATRIX-Funktion in Tabelle ermitteln :
        '=ADRESSE(MAX(WENN(A1:C10=MIN(A1:C10);ZEILE(1:10);0));MAX(WENN(A1:C10=MIN(A1:C10 );SPALTE(A:C));0))

        'Variante 1 : Position per Schleifen ermitteln :
        For lngZ = LBound(arrWerte) To UBound(arrWerte)
            For intS = LBound(arrWerte) To UBound(Application.Transpose(arrWerte)) 'nur bis max 4561 Zeilen möglich !
                If arrWerte(lngZ, intS) = varMin Then
                    MsgBox "Zeile : " & lngZ & vbLf & "Spalte : " & intS, , "Kleinster Wert an Position - Variante 1"
                End If
            Next
        Next

        'Variante 2 : Position durch Vergleich ermitteln
        For intS = LBound(arrWerte) To UBound(Application.Transpose(arrWerte)) 'nur bis max 4561 Zeilen möglich !

            If Not IsError(Application.Lookup(varMin, Application.WorksheetFunction.Index(Applicat ion.Transpose(arrWerte), intS))) Then
                lngZ = Application.Match(varMin, Application.WorksheetFunction.Index (Application.Transpose(arrWerte), intS))
                If lngZ > 0 Then
                    MsgBox "Zeile : " & lngZ & vbLf & "Spalte : " & intS, , "Kleinster Wert an Position - Variante 2"
                End If
            End If
        Next
    End Sub
    Code eingefügt mit Syntaxhighlighter 4.15
     
    OfficeUser, 4. November 2008
    #3
  4. Kleinsten Wert und Position des kleinsten Wertes im Array

    Cool, danke *Smilie
     
  5. Hallo zusammen....
    gerne würde ich die kleinste Zahl in einer Spalte F4:F50 die Position erhalten
    wie muss ich die untenstehnede Programmierung anpassen?
    Leider sucht diese Programmierung nur in Spalte 1 und gibt mir die Meldung Zeile 20 Spalte 1 aus... wobei in Spalte 1 Zeile 20 nur ein Name drinn steht und der Range der ich durchsuchen möchte ist F4:G50.

    Danke für eure hilfe
     
    manau21, 14. Oktober 2013
    #5
  6. Hallo,

    Code:
     
  7. PERFEKT!!!
    danke

    Habe den Code soweit angepasst

    Code:
    leider aber findet der Code nicht den kleinsten Wert.... hab noch nicht rausgefunden warum

    Ich habe Zahlen in der Spalte "F" von 1 bis 360 durcheinander

    F4 = 1
    F5 = 28
    F6 = 29
    F7 = 31
    F8 = 32
    F9 = 36
    F10 = 51
    u.s.w
    F50 = 17

    Eigentlich müsste der code doch die Zellposition F4 ausgeben
     
    manau21, 15. Oktober 2013
    #7
  8. Kleinsten Wert und Position des kleinsten Wertes im Array

    Hi,


    was müsste da wohl angepasst werden....

    ich tippe auf
    matrix = "F1:F360"
     
    chris-kaiser, 16. Oktober 2013
    #8
  9. der Range stimmt so... leider habe ich mich nicht ganz klar ausgedrückt, sorry
    im "F" sind die Zellen nicht von 1 - 360 durchgehend gefüllt sonder es sind die Tage eingetragen "in wiviel Tagen diejenige Person geburtstag hat"
    d.h. es können zahlen von 1- 365 in den Zellen stehen.
    Und da die Zelle F1 der kleinste wert trägt (nämlich 1) sollte doch diese Position unter c.row und c.column gespeichert werden
     
    manau21, 16. Oktober 2013
    #9
  10. Und so?
    Code:
     
  11. Hallo zusammen,

    die Methode .find sucht standardmäßig nach Teilstrings, d.h. wenn der kleinste Wert zum Beispiel die Zahl 6 ist, findet die Methode die erste Zelle, die die Ziffer 6 enthält. Das könnte dann zum Beispiel die Zahl 64 sein.

    Gib in der .find-Methode als vierten Parameter die Excelkonstante xlWhole an, damit nur nach dem gesamten Zellinhalt gesucht wird.

    Gruß Ingolf
     
  12. Hallo Manau,

    .... Ok
    Aber was ist wenn Zwei oder Drei am gleichen Tag Geb. haben. *wink.gif*

    teste mal

    Code:
    das gibt dir ALLE wieder die als nächstes Geb.haben. (gleiche Anzahl der Tage haben)
    Was vielleicht noch gut wäre eine Zeitspanne einzubauen.
    Angenommen Frau Anita Testbauer hat in 5 Tagen Geb. und Herr Thomas Muster in 6 Tagen, welcher auch noch dazu auf einen Sa oder So fallen würde. Dann wird immer nur bis zum Geb. Frau Testbauer angezeigt und der Thomas hat halt Pech gehabt.

    Ich habe mal den Code so umgebaut das die Tage bis zum Drittkleinsten Tag berücksichtigt werden.

    Code:
     
    chris-kaiser, 16. Oktober 2013
    #12
  13. Kleinsten Wert und Position des kleinsten Wertes im Array

    Gefällt mir sehr Gut
    funktioniert halt nur solange kein anderer genau in gleichen Tagen geburtstag hat... das heisst der Code arbeitet von unten nach oben.
    Wenn z.b. in F4 in einem und F26 in einem Tag Geburtstag hat wird der in F4 nicht berücksichtigt solange die Spalte in F nicht sortiert wurde.
    Aber soweit genügt dies für mich...

    Ich danke euch allen für die Hilfe

    Grüsse

    Manau21
     
  14. Hallo,

    Mit Range("F8: F50") im Code wird F4 nicht angegeben werden. *wink.gif*
     
  15. war ein versehen....
    der Range beginnt mit F4
    hebe einen code ins forum geschrieben bei dem ich noch am austesten war....
    weiter oben ist der range richtig
     
Thema:

Kleinsten Wert und Position des kleinsten Wertes im Array

Die Seite wird geladen...
  1. Kleinsten Wert und Position des kleinsten Wertes im Array - Similar Threads - Kleinsten Wert Position

  2. Abfrage erstellen mit dem kleinsten Wert

    in Microsoft Access Hilfe
    Abfrage erstellen mit dem kleinsten Wert: [IMG]
  3. 2.kleinsten Wert einer Spalte (doppelte Werte überspringen)

    in Microsoft Excel Hilfe
    2.kleinsten Wert einer Spalte (doppelte Werte überspringen): Hallo, ich habe in einer Spalte z.b. Code: 7 8 7 7 10 und möchte den 2. kleinsten Wert ermitteln, aber die doppelten Werte überspringen, d.h. ich will 8 als Ausgabe haben und nicht 7. Wie...
  4. doppelten Wert, jedoch nur den kleinsten wiedergeben

    in Microsoft Excel Hilfe
    doppelten Wert, jedoch nur den kleinsten wiedergeben: Hallo, ich habe folgendes Problem: In der Spalte B stehen ermittelte Werte, die auch doppelt vorkommen. Jetzt möchte ich das in der Spalte C das Wort "ACHTUNG" wiedergegeben wird, jedoch sollte...
  5. Tabelle nach kleinstem Wert durchsuchen

    in Microsoft Excel Hilfe
    Tabelle nach kleinstem Wert durchsuchen: Hallo, wie bekomme ich es hin, dass aus einer Übersicht aller Klassen, Schüler und Notendurchschnitte (Spalten A:C) jeweils der beste rausgesucht wird? Die gewünschte Tabelle findet ihr im...
  6. In Access aus mehreren Spalten kleinsten oder größten Wert in weiter Spalte ausgeben

    in Microsoft Access Hilfe
    In Access aus mehreren Spalten kleinsten oder größten Wert in weiter Spalte ausgeben: Hallo zusammen, ich habe in Access eine Auswahlabfrage, die mehre Spalten mit Datumswerten enthält. Wie kann ich in dieser Abfrage aus z. B. 3 verschienden Spalten (mit jeweils Datumswerten) das...
  7. Bedingte Formatierung --> kleinster Wert pro Kategorie

    in Microsoft Excel Hilfe
    Bedingte Formatierung --> kleinster Wert pro Kategorie: Hallo zusammen, Ich hätte mal eine Frage zur bedingten Formatierung: In einer Liste befinden sich in der einen Spalte Werte und in einer weiteren Spalte verschiedene Kategorien. In einer dritten...
  8. Kleinster Wert im Zellbereich

    in Microsoft Excel Hilfe
    Kleinster Wert im Zellbereich: Hallo Gemeinde, ich benutze Office 2013. Ich habe mir eine Tabelle angelegt: Blatt 1 Preise Müller Blatt 2 Preise Maier Blatt 3 Preise Moritz Blatt 4 Vergleich via WENNFEHLER--> SVERWEIS...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden