Thema Datum  Von Nutzer Rating
Antwort
Rot Komplexes Filtern und Sortieren
27.05.2016 12:38:20 Maximilian
NotSolved
27.05.2016 22:57:36 Gast68511
NotSolved
28.05.2016 15:49:18 Maximilian
NotSolved
28.05.2016 16:03:47 Gast24156
NotSolved
29.05.2016 06:45:19 Maximilian
NotSolved
29.05.2016 08:24:49 Gast85524
NotSolved
29.05.2016 17:24:53 Gast66730
NotSolved
29.05.2016 17:52:39 Gast4152
NotSolved
29.05.2016 17:55:00 Maximilian
NotSolved
29.05.2016 18:04:37 Gast28973
NotSolved
29.05.2016 18:07:09 Gast73579
*****
Solved
29.05.2016 18:36:00 Maximilian
NotSolved
29.05.2016 21:07:48 Gast66478
*****
Solved
29.05.2016 21:49:01 Maximilian
NotSolved

Ansicht des Beitrags:
Von:
Maximilian
Datum:
27.05.2016 12:38:20
Views:
1348
Rating: Antwort:
  Ja
Thema:
Komplexes Filtern und Sortieren

Hallo liebe VB Community,

ich möchte eine Prozedur erstellen, die Aktienportfolios nach verschiedenen Kriterien filtert und diese Datensätze in ein neues Tabellenblatt neu zusammenfügt.
Ich habe bisher den unten angefügten Code geschrieben, komme aber jetzt nicht mehr weiter weil mir folgender Fehler angezeigt wird: "Invalid Next Control Reference".
Ich glaube auch, dass mein bisheriger Code einige Logikfehler beinhaltet

Kurz zu den Daten. In einem Datenblatt sind die sogenannten "Ölpreis Exposure" aller untersuchten Aktien. Die Aktiennamen stehen in Spalte A. In Spalte B bis Spalte FY stehen die Monate (von Januar 2000 - Dezember 2014) mit den dazugehörigen Exposures.
Jetzt soll der Code mit Januar 2000 anfangen und diesen Monat nach verschiedenen Kriterien nacheinander durchfiltern. Das Kriterium ist die Variable "Elast". Hier sollen unterschiedliche Bereiche gesucht werden, die zwischen -10,5 und 10 liegen (Das sind dann insgesamt 10 Suchkriterien). Jeder dieser Bereiche soll dann in das Sheet "<- Öl Portfolio" an der richtigen Stelle kopiert werden.

Kleines Beispiel:

Januar 2000 --> Kriterium -10< x <=-8 ---> BMW (-9), VW (-9,4), Deutsche Post (-8,2) erfüllen diese Kriterien. Kopiere die Zahlen mit dem jeweiligen Monat als Überschrift in neues Sheet "Öl Portfolio" zum dazugehörigen Bereich. Dann suche in einem Tabellenblatt "Renditen" die Namen "BMW, VW, Deutsche Post" und kopiere die Renditen für Januar 2000 wieder mit dem Monat als Überschrift in Sheet "Öl Portfolio".

Dann nächster Kriteriumsbereich.
Dann nächster Monat.

Das Sheet "Öl Portfolio" ist wie folgt aufgebaut.

In A3 - K3 stehen meine Kriterien die von einer Schleife aufgenommen werden sollen.

In Zeile A7 - AD7 Stehen die Überschriften für die Portfolios wie folgt:

Name1 (Name der Aktie) | Rendite 1 | Kriterium 1 | Name2 (Name der Aktie) | Rendite 2 | Kriterium 2 | ... bis Name10 | Rendite10 | Kriterium10

Die Daten für den nächsten Monat soll dann einfach mit xlEnd(down) zum dazugehörigen Bereich kopiert werden.

Das Tabellenblatt "Renditen" ist identisch vom Aufbau wie dass Blatt "Ölpreis Exposure", Dieses "Find Name" and Month Matching habe ich noch nicht im Code geschrieben.
 

Public DataReturn, DataExposure, PFExposure As Worksheet


Sub SortExposure()

Set DataReturn = Worksheets("Monatl. Aktienrenditen(1)")
Set DataExposure = Worksheets("monatl. Ölexposure")
Set PFExposure = Worksheets("<- Öl Portfolio")


Dim x As Integer

Dim Elast As Integer 'Kriterium
Dim i As Integer

Dim Exposnum As Integer

For i = 1 To 11 Step 1 ' Schleife für das Kriterium

Elast = PFExposure.Cells(3, i).Value ' Nehme den Wert für das Kriterium auf

For Exposnum = 3 To 30 Step 3 ' Schleife für den Einfügebereich des Kriteriums im Sheet Portfolio
For x = 2 To 180 Step 1 ' Schleife für die einzelnen Monate

DataExposure.Range("A:FY").AutoFilter Field:=x, Criteria1:=">" & Elast & "" _
, Operator:=xlAnd, Criteria2:="<=" & Elast + 1 & ""

DataExposure.Range(Cells(4, x), Cells(4, x).End(xlDown)).Copy
PFExposure.Cells(5, Exposnum).End(xlDown + 1).PasteSpecial

DataExposure.ShowAllData

Next i ' Hier erscheint der Fehler
Next Exposnum
Next x

End Sub

Vielen Vielen Dank!

P.S. bei Fragen oder Anmerkungen bitte einfach melden.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Komplexes Filtern und Sortieren
27.05.2016 12:38:20 Maximilian
NotSolved
27.05.2016 22:57:36 Gast68511
NotSolved
28.05.2016 15:49:18 Maximilian
NotSolved
28.05.2016 16:03:47 Gast24156
NotSolved
29.05.2016 06:45:19 Maximilian
NotSolved
29.05.2016 08:24:49 Gast85524
NotSolved
29.05.2016 17:24:53 Gast66730
NotSolved
29.05.2016 17:52:39 Gast4152
NotSolved
29.05.2016 17:55:00 Maximilian
NotSolved
29.05.2016 18:04:37 Gast28973
NotSolved
29.05.2016 18:07:09 Gast73579
*****
Solved
29.05.2016 18:36:00 Maximilian
NotSolved
29.05.2016 21:07:48 Gast66478
*****
Solved
29.05.2016 21:49:01 Maximilian
NotSolved