Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Maximum aus Array
15.08.2008 11:32:00
Bernd
Hallo Forum,
ich habe ein zweidimensionales Array steigung(i,j), nun möchte ich wissen, an welcher Stelle im Array in Zeile i der größte Wert steht. Den Wert selbst brauche ich nicht, ich möchte nur wissen in welcher Spalte das Maximum einer Zeile steht.
Vielen Dank!

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Maximum aus Array
15.08.2008 11:47:00
Rudi
Hallo,
da musst du mit ner Schleife durch.
Bsp:

Sub tt()
Dim Steigung
Steigung = Range("A1:F40")
MsgBox ZMax(Steigung)
End Sub



Function ZMax(myArray)
Dim i As Long, j As Long, vntMax
For i = LBound(myArray) To UBound(myArray)
For j = LBound(myArray, 2) To UBound(myArray, 2)
If myArray(i, j) > vntMax Then
ZMax = i
vntMax = myArray(i, j)
End If
Next
Next
End Function


Gruß
Rudi

AW: Maximum aus Array
15.08.2008 11:47:00
Daniel
Hi
du kannst dir mit "worksheetfunction.max(arr)" das Maximum deines Arrays ermitteln lassen.
jetzt musst du zwei schleifen (Zeilen und Spalten) das Array druchlaufen und dir den Spaltenzähler merken, wenn der Wert mit dem Maximum übereinstimmt.
Gruß, Daniel

Anzeige
AW: Maximum aus Array
15.08.2008 12:03:00
Tino
Hallo,
vielleicht gehts auch einfachen, aber hier mal ein Beispiel.

Dim strAr(10, 0) As Double
Dim Zeile As Double, ArIndex As Long
Dim A As Long
For A = 0 To 10
'Zufallszahl schreiben
strAr(A, 0) = [=ROUND(RAND()*100,2)]
Next A
For A = LBound(strAr) To UBound(strAr)
If strAr(A, 0) > Zeile Then Zeile = strAr(A, 0): ArIndex = A
Next A
MsgBox ArIndex


Gruß Tino

AW: Maximum aus Array
15.08.2008 12:08:00
Tino
Hallo,
besser ist es wahrscheinlich den ersten Wert aus der Matrix als Ausgangspunkt zu nehmen.

Dim strAr(10, 0) As Double
Dim Zeile As Double, ArIndex As Long
Dim A As Long
For A = 0 To 10
'Zufallszahl schreiben
strAr(A, 0) = [=ROUND(RAND()*100,2)]
Next A
Zeile = strAr(0, 0)
For A = LBound(strAr) To UBound(strAr)
If strAr(A, 0) > Zeile Then Zeile = strAr(A, 0): ArIndex = A
Next A
MsgBox ArIndex


Gruß Tino

Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige