Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
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

VBA-Makro zum herausfiltern von Werten

VBA-Makro zum herausfiltern von Werten
04.06.2016 18:18:26
Werten
Hallo,
mein Problem ist Folgendes: Ich habe eine unendlich lange Liste mit Werten aus denen ich jeweils die Maxima raussortieren soll. Es geht hier um den Ausschwingvorgang eines Bauteils. Mithilfe von Excel-Formeln bin ich mittlerweile soweit gekommen, dass in der letzten Spalte bei den nicht-Maxima #N/A steht und nur noch bei den Maxima die Zahlenwerte. Allerdings sollen diese Maxima nun in einer weiteren Spalte direkt untereinander stehen und zusätzlich sollen die Maxima absteigend sein. Dh z.B. der 4. Wert darf nicht gröβer als der 3. Wert sein usw, alle die Werte die dann gröβer sind als der vorherige Wert, sollen ebenfalls nicht kopiert werden.
Ich glaube nicht dass dies mit Formeln möglich ist, deshalb habe ich versucht mit einem Makro zu arbeiten. Im Programmieren war ich allerdings noch nie gut und mit VBA hab ich auch noch nicht gearbeitet. Deshalb, bitte verzeiht mir, wenn es so aussieht als hätte ich mir keine Mühe gegeben aber ich bin echt am verzweifeln.
Hier was ich bisher geschrieben habe, was aber natürlich nicht funktioniert:
Sub Suche_Maxima()
Option Explicit
Dim neuerWert As Variant
Private alterWert As Long
WIEDERHOLUNG:
neuerWert = ActiveCell.Offset(1, 0)
If neuerWert = "#N/A" Then
Resume WIEDERHOLUNG
ElseIf neuerWert 

Ausserdem würde ich diese Liste mit den übriggebliebenen Werten am Liebsten gleich in ein neues Sheet setzen, war mir aber so schon zu kompliziert. Also wenn mir da noch jemand sagen könnte wie man das schreibt, wäre ich echt dankbar.
Danke im Vorraus für alle Beiträge.
Viele Grüße,
Vicky

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Makro zum herausfiltern von Werten
04.06.2016 18:38:49
Werten
Hallo Vicky,
es gibt noch Bedarf für ein paar zusätzlich Infos, aber zum ersten Testen:
(falls in den Zellen keine Zahler, sondern Formeln stehen, muss (2,1) durch (3,1) ersetz werden.

sub test()
with columns(1).specialcells(2,1)
.copy sheets(2).cells(1,1)
end with
end sub
Die Spalte und das Ziel werden sicher noch angepasst werden müssen.
mfg

AW: VBA-Makro zum herausfiltern von Werten
04.06.2016 19:05:37
Werten
Hi zusammen,
als ich angefangen hatte, war Fenneks Antwort noch nicht da: das sieht ja super aus, erfüllt allerdings die zweite Bedingung nicht.
Ich bin es anders angegangen:
Option Explicit
Sub raussuchen()
Dim maxZ As Long, z As Long, i As Long
Dim w
Dim maxW As Double
'unterste Zeile:
maxZ = Range("J" & Rows.Count).End(xlUp).Row
'alle Werte ins Array w
w = Range("J1:J" & maxZ)
'max. Wert ermitteln
maxW = WorksheetFunction.Max(Range("J1:J" & maxZ)) + 5
'0. Ausgabezeile
z = 0
For i = 1 To maxZ
If IsNumeric(w(i, 1)) Then 'falls numerischer Wert
If w(i, 1) 
wobei mir die zweite Bedingung irgendwie "spanisch" vorkommt.
Datei mit Testwerten: https://www.herber.de/bbs/user/105996.xlsm
Schöne Grüße,
Michael

Anzeige
AW: VBA-Makro zum herausfiltern von Werten
04.06.2016 19:52:12
Werten
Hi
1. wenn du die MAXIMA per Formel ermittelt, dann zeige bei den Nicht-Maxima keinen Fehlerwert, sondern einen Text (Fehlerwerte sorgen darfür, dass du die Werte nicht weiter verarbeiten kannst)
Diese Formel für B2
=Wenn(und(A2>A1;A2>A3);A2;"")
2. Erstelle dann die Sortierte Liste aus mit
=KGrösste(B:B;Zeile(A1))

ziehe die Formel dann soweit nach unten wie benötigt.
wenn du es per VBA machen willst, dann so:
1. Formel wie oben für Spalte B einfügen
2. Formel kopieren und als Wert einfügen
3. Bereich mit eingefügten Werten absteigend sortieren
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige