Filtern gefilterter Daten in ein Array mit variablen Variablen

381
user3287522

Ich versuche gerade, eine manuelle Aufgabe zu automatisieren. Ich habe meine Daten gefiltert und dies funktioniert gut, wenn ich den sichtbaren Bereich kopiere und in ein anderes Blatt einfügen. Ich versuche, die sichtbaren Daten in ein Array mit variablen Variablen zu schreiben. Ich möchte dies in Erinnerung behalten und dann in einen Bereich schreiben. Jedes Mal, wenn ich das tue, bekomme ich #NAs. Ihre Gedanken und Ratschläge waren dankbar.

Sub Derivatives() Application.ScreenUpdating = False Application.Calculation = xlAutomatic Application.DisplayAlerts = False  Dim wb As Workbook, ws As Worksheet Dim lRow As Long Dim lRow1 As Long Dim Fields() As Variant Dim wb1 As Workbook  Set wb = ThisWorkbook Set ws = wb.ActiveSheet  lRow = Range("A" & Rows.Count).End(xlUp).Row  With ws Range("$G$9:$I$22479").AutoFilter Field:=3, Criteria1:="TRUE" lRow1 = Range("G" & Rows.Count).End(xlUp).Row Fields = ws.Range("G9").CurrentRegion.SpecialCells(xlCellTypeVisible) ActiveSheet.ShowAllData Range("K9").CurrentRegion = Fields End With  Application.ScreenUpdating = True Application.Calculation = xlAutomatic Application.DisplayAlerts = True End Sub 
0
Sie müssten die Bereiche durchlaufen und dann die Zeilen in jedem Bereich einzeln hinzufügen. Oder iteriere alle Zeilen und füge, falls sichtbar, hinzu. Es kann schneller sein, das Sichtbare zu kopieren und einzufügen und dann den neuen Bereich in das Array zu laden. Scott Craner vor 6 Jahren 0
Hallo Schotte, ich möchte dieses gerne in ein variantes Array laden, um es als Speicher zu halten, und es ist auch ein lernendes Element. Ich bin etwas verwirrt, wie das gemacht werden kann user3287522 vor 6 Jahren 0
Wie ich in meinem letzten Kommentar festgestellt habe, kann man es nicht in Massen tun. Ich habe Ihnen drei Möglichkeiten gegeben, wie es geht. Scott Craner vor 6 Jahren 0
@ user3287522, denken Sie, Sie versuchen gefilterte Daten bei `G9 'zu kopieren! aber Ihre Quelldaten überlappen sich da der zu filternde Bereich G9: I22479 ?? Rajesh S vor 6 Jahren 0
@ user3287522, ein weiteres Problem, das ich gefunden habe, sind Kriterien. Die Art und Weise, wie Sie sie verwenden, ist falsch, selbst wenn Sie es nicht als "True" `verwenden können. Speichern Sie TRUE besser in der Zelle und ändern Sie die Befehlszeile als `Kriterien1: = Bereich (" E3 "). Wert" Rajesh S vor 6 Jahren 0
Rajesh, also hatte ich eine riesige Liste von Elementen mit 25000 Zeilen und ich erstellte eine Vlookup-Liste, bei der nur Elemente im Vlookup-Bereich als wahr gelten würden, die ich filtern würde. Ich glaube, es muss eine Möglichkeit geben, die gefilterten Elemente in das Array zu übergeben user3287522 vor 6 Jahren 0

0 Antworten auf die Frage