Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1540to1544
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
Inhaltsverzeichnis

Zeilen-/ & Spaltennummer max. Wert in 2 dim Array

Zeilen-/ & Spaltennummer max. Wert in 2 dim Array
16.02.2017 09:30:44
LL
Hallo zusammen,
ich suche in einem großen zweidimensionalen Array den größten Wert und brauche Informationen über Zeile und Spalte der Zelle, in der sich dieser Wert befindet.
Da die Tabelle ziemlich groß ist, sind Schleifen nicht die beste Lösung. Da muss es aber noch etwas anderes geben.
Ich wäre sehr dankbar für Eure Hilfe.
Beispieldatei: https://www.herber.de/bbs/user/111510.xlsm
VG
LL

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: max + Range.find
16.02.2017 09:39:24
Fennek
Hallo,
der bereits bestehende Makro liefert den Maximalwert, da man mit "Match" nur Zeilen ODER Spalten durchsuchen kann, bietet sich Range.find an.

dim rng as range
set rng = range(OrRange).find(worksheetfunction.max(OrRange))
iRow = rng.row
iCol = rng.column
mfg
(ungetestet)
AW: max + Range.find
16.02.2017 10:03:16
LL

Sub ZeileSpalteMax()
Dim iRow As Long
Dim iCol As Long
Dim ORRange As Range: Set ORRange = Worksheets("Tabelle1").Range("C3:L22")
Dim rng As Range: Set rng = Range(ORRange).Find(WorksheetFunction.Max(ORRange))
iRow = rng.Row
iCol = rng.Column
MsgBox iRow
MsgBox iCol
End Sub
Vielen Dank für deine schnelle Antwort. Ich habe es soweit angepasst und es wird der Fehler.
Es wird jedoch der Fehler angezeigt: Die Methode Range für das objekt global ist fehlgeschlagen
Was muss ich anpassen?
Anzeige
AW: max + Range.find
16.02.2017 10:10:18
hary
Moin
Dim zelle As Range
With Worksheets("Tabelle1")
Set zelle = .Range("C3:L22").Find(What:=Application.Max(.Range("C3:L22")), LookIn:=xlValues,  _
lookat:=xlWhole)
If Not zelle Is Nothing Then
MsgBox zelle.Column - 2
MsgBox zelle.Row
End If
End With

gruss hary
AW: max + Range.find
16.02.2017 10:39:53
LL
Hi Hary,
vielen Dank für die Antwort. Auch hier funktioniert es in der Beispieldatei sehr gut. Im Original tut sich Garnichts wenn ich das Makro starten will
Sub Hary()
Dim zelle As Range
With Worksheets("Tabelle1")
Set zelle = .Range("W29:NX2942").Find(What:=Application.Max(.Range("W29:NX2942")), LookIn:= _
xlValues, _
lookat:=xlWhole)
If Not zelle Is Nothing Then
MsgBox zelle.Column
MsgBox zelle.Row
End If
End With
End Sub

Anzeige
AW: max + Range.find
16.02.2017 10:47:25
hary
Moin
Dann lad mal eine Bsp.-mappe hoch, die aussieht wie das Original mit Dummydaten.
gruss hary
AW: max + Range.find
16.02.2017 11:07:33
LL
Hey,
würde ich gerne aber die Datei hat wie in der Range oben extrem viele Datensätze und ist somit selbst mit Werten bei 4MB
AW: max + Range.find
16.02.2017 11:11:16
LL
ist aber keine besondere Tabelle. Einfach nur Zellen von W29:NX3248 mit rationalen werten drin
AW: max + Range.find
16.02.2017 11:58:32
LL
Wenn ich die Beispieldatei um die entsprechenden Zeilen und Spalten vergrößere, entsteht das gleiche Problem. Es muss also etwas mit der Anzahl der Zellen zu tun haben oder die Variablen sind für diese Größen nicht geeignet.
Kann mir da bitte einer weiterhelfen?
Anzeige
AW: max + Range.find
16.02.2017 16:31:47
Beverly
Im anderen Forum hast du bereits eine Antwort erhalten.


118 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige