ich habe ein Problem mit der Anwendung der "Select Case" Funktion.
Ich habe eine Tabelle mit Patentdaten - den meisten Patenten sind mehrere IPC Klassen (7 stelliger Code) zugeordnet - diese habe ich bereits auf die Spalten F bis O verteilt und in Spalte P wird angegeben wie viele IPC Klassen dem jeweiligen Patent zugeordnet sind. Nun möchte ich die Patente abhängig von der Anzahl in Spalte P auf die Sheets IPC0 (bei 0 IPC Klassen) bis IPC 10 (bei 10 IPC Klassen) verteilen.
Hierzu habe ich mir mit Hilfe von vielen Beiträgen hier bereits folgenden "Code" gebastelt:
Option Explicit
Sub Test()
Dim i As Integer
Dim ZeileMax As Integer
Dim n As Integer
With Sheets("Patents")
ZeileMax = .UsedRange.Rows.Count
n = 1
For i = 2 To ZeileMax
Select Case Cells(i, 16)
Case 0
.Rows(i).Copy Destination:=Sheets("IPC0").Rows(n)
n = n + 1
Case "1"
.Rows(i).Copy Destination:=Sheets("IPC1").Rows(n)
n = n + 1
Case 2
.Rows(i).Copy Destination:=Sheets("IPC2").Rows(n)
n = n + 1
Case 3
.Rows(i).Copy Destination:=Sheets("IPC3").Rows(n)
n = n + 1
Case 4
.Rows(i).Copy Destination:=Sheets("IPC4").Rows(n)
n = n + 1
Case 5
.Rows(i).Copy Destination:=Sheets("IPC5").Rows(n)
n = n + 1
Case 6
.Rows(i).Copy Destination:=Sheets("IPC6").Rows(n)
n = n + 1
Case 7
.Rows(i).Copy Destination:=Sheets("IPC7").Rows(n)
n = n + 1
Case 8
.Rows(i).Copy Destination:=Sheets("IPC8").Rows(n)
n = n + 1
Case 9
.Rows(i).Copy Destination:=Sheets("IPC9").Rows(n)
n = n + 1
Case Else
.Rows(i).Copy Destination:=Sheets("IPC10").Rows(n)
n = n + 1
End Select
Next
End With
End Sub
Leider funktioniert das überhaupt nicht ... es passiert nichts oder maximal ein Bruchteil von dem was ich möchte. Ich lade die entsprechende Beispieldatei anbei mit hoch und hoffe sehr, dass mir hier jemand einen guten Hinweis geben kann. (Ich habe es bereits mit verschachtelten "If clauses" probiert aber das hat auch nicht recht funktioniert.)Tausend Danke im Voraus und viele Grüße
Rahel