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

höchsten 20 Werte aus Spalte in T1 ausgeben

höchsten 20 Werte aus Spalte in T1 ausgeben
03.03.2017 08:19:53
Beginner
Hallo zusammen,
ich hätte eine Frage zur VBA Programmierung.
Würde gerne zukünftig schneller eine Auswertung machen.
Hab ein File 16.000 Zeilen und 16 Spalten. (Tabelle 2)
Wünsche wäre es nun, dass er mir aus Spalte "O" (15) die 20 höchsten Werte sucht.
Zu den jeweiligen 15 höchsten Werte würde ich aber die Information Aus Spalte "E" (5), "F" (6), "G" (7), "H" (8) benötigen.
Tabelle 1:
Die Information aus Spalte "E" (5), "F" (6), "G" (7), "H" (8) und den Wert aus Spalte "O" (15) soll in Tabelle 1 / A1 ausgeben werden.
Würde mich sehr über Unterstützung freuen
Grüße
Hannes

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
KGRÖSSTE, Autofilter etc. ? (owT)
03.03.2017 08:32:56
EtoPHG

AW: KGRÖSSTE, Autofilter etc. ? (owT)
03.03.2017 09:17:49
Daniel
Hi
per VBA dürfte am schnellsten sein, die Tabelle nach Spalte O absteigend zu sortieren und dann die ersten 20 Zeilen als Block in die Tabelle1 zu kopieren.
Im Sortieren ist Excel sehr schnell.
wenn keine Überschrift vorhanden ist
With Sheets("Tabelle2")
.Usedrange.sort key1:=.cells(1, 15), order1:=xlascending, Header:=xlno
Intersect(.Range("E:H,O:O"), .Range("1:20")).Copy
End with
Sheets("Tabelle1").Cells(1, 1).PasteSpecial xlpasteall
Gruß Daniel
AW: KGRÖSSTE, Autofilter etc. ? (owT)
03.03.2017 10:25:10
Rainer
Hallo Hannes,
ich schließe mich EtoPHG an, das lässt sich vermutlich auch ohne VBA machen.
Kannst du mal eine Beispieldatei erstellen? 50 Zeilen reichen zum Test, aber die Werte sollten representativ sein (Positve, Negative, Dimension, Doppler, etc.).
Ich denke mit KGRÖSSTE, VERGLEICH und INDEX kommt man schnell zum Ziel.
Gruß,
Rainer
Anzeige
AW: höchsten 20 Werte aus Spalte in T1 ausgeben
03.03.2017 09:07:55
UweD
Hallo
so?
Sub Größte()
    Dim LR As Integer
    Application.ScreenUpdating = False
    
    'Reset 
    Sheets("Tabelle1").Cells.ClearContents
    
    With Sheets("Tabelle2")
        LR = .Cells(.Rows.Count, 15).End(xlUp).Row 'letzte Zeile der Spalte 
        If .AutoFilterMode Then .AutoFilterMode = False ' Autofilter ausschalten 
        '.Columns(15).AutoFilter 
        .Columns(15).AutoFilter Field:=1, Criteria1:="20", Operator:=xlTop10Items
        .Rows("1:" & LR).Copy Sheets("Tabelle1").Rows(1)
        .AutoFilterMode = False
    End With
    
    With Sheets("Tabelle1")
        
        'Spalte O nach vorne 
        .Columns(15).Cut
        .Columns(1).Insert Shift:=xlToRight
        
        'überflüssige Spalten löschen 
        .Columns("B:E").Delete Shift:=xlToLeft
        
        'Sortieren absteigend 
        .Sort.SortFields.Clear
        .Sort.SortFields.Add Key:=Range("A1"), _
            SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
        .Sort.SetRange Range("A:E")
        .Sort.Header = xlYes
        .Sort.MatchCase = False
        .Sort.Orientation = xlTopToBottom
        .Sort.SortMethod = xlPinYin
        .Sort.Apply
        
        'nicht benötigte Werte ab 16 löschen 
        .Range("B16:E21").ClearContents
    End With
End Sub

LG UweD
Anzeige
AW: höchsten 20 Werte aus Spalte in T1 ausgeben
05.03.2017 19:36:45
Beginner
Vielen Vielen Dank!
Klappt perfekt, das einzige was geändert habe ist, dass er die höchste Werte in die 1. Spalte kopiert.
Vielen Dank für die Hilfe!
Danke für die Rückmeldung owT
06.03.2017 09:13:18
UweD

315 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige