Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Maximalwertsuche in einer Spalte

Betrifft: Maximalwertsuche in einer Spalte von: Malcolm Phurrer
Geschrieben am: 14.03.2008 17:33:30

Hallo, nochmals die gleiche Frage, aber anders gestellt:

Mit der nachfolgenden Formel soll der MAXIMALWERT aus der Spalte AuftragsnummerSP herausgelesen werden:

Max = Application.Max(Sheets("Erfassung").Columns.((AuftragsNummerSP.Column))

Funktioniert auch super.

Was muss ich allerdings ändern, damit bei der Maximalwertsuche nur die letzten 5 Ziffern der gundsätzlich 10 Stelligen Werte in der betreffenden Spalte berücksichtigt werden. Hintergrund: die ersten 5 Ziffern sind nur Ordnungsvermerke, welche nicht im Zusammenhang mit den 5 letzten Ziffern stehen.

Herzlichen Dank für die Hilfe
+
Malcolm

  

Betrifft: AW: Maximalwertsuche in einer Spalte von: Tino
Geschrieben am: 14.03.2008 17:47:18

Hallo,
würde mal sagen du müsstest mit einer Hilfsspalte arbeiten,
in der du die letzten 5 Ziffern reinstellst.
Dies könntest du mit einem Makro oder mit einer Formel machen.
In dieser Spalten den Wert suchen und über Offset den anderen zurückgeben.

Oder den langen weg über eine Schleife

Sonst habe ich keine Idee.
Gruß
Tino


  

Betrifft: mit Formel von: Christian
Geschrieben am: 14.03.2008 21:59:40

Hallo Malcolm,

als Formel:

Tabelle2

 AB
1307273263499911
23847330828 
36867703828 
46103774841 
53047699911 
68641780433 
73733561594 
82290633027 
94071889573 
108664429930 
116185702531 
122509166488 
139664534989 

Formeln der Tabelle
ZelleFormel
B1{=MAX(WENN(ISTZAHL(RECHTS(A1:A1000;5)*1); RECHTS(A1:A1000;5)*1))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

MfG Christian


  

Betrifft: AW: mit Formel von: Malcolm Phurrer
Geschrieben am: 17.03.2008 10:59:54

Hallo zusammen,

um die letzte Auftragsnummer, sprich die Auftragsnummer mit dem höchsten Wert in den letzten 5 Stellen, herauszufinden, habe ich mich jetzt für die Schleife entschiden, da ich im meiner Erfasungstabble keine Hilfzeile einrichten wollte. Die Formel sieht nun so aus:



If i = 0 And j = 0 Then

Dim AuftrMax, AuftrMaxSp As Double

For z = 2 To .Cells(.Cells(Rows.Count, AuftragsNummerSP.Column).End(xlUp).Row + 0, 1).Row
If Right(.Cells(z, AuftragsNummerSP.Column).Value, 5) > AuftrMax Then
AuftrMax = Right(.Cells(z, AuftragsNummerSP.Column).Value, 5)
AuftrMaxSp = z
GoTo zSpr
Else
GoTo zSpr
End If

zSpr: Next z

MsgBox "Allen erfassten Bestellungen ist bereits" & vbLf & _
"eine Auftragsnummer zugeordnet!" & vbLf & _
"" & vbLf & _
"Letzte bereits zugeordnete Auftrags-Endnummer:" & vbLf & _
Format(.Cells(AuftrMaxSp, AuftragsNummerSP.Column).Value, "## ### #####"), vbInformation, "Auftragsnummern vollständig!"
Exit Sub



Wahrscheinlich nicht sonderlich elegant, aber es funktioniert. Vielleicht kann ja jemand noch eine elegante Variante posten.

Nochmals Dank an Tino und Christian für die Gedankenanregung!!!

Gruß Malcolm


 

Beiträge aus den Excel-Beispielen zum Thema "Maximalwertsuche in einer Spalte"