Funktionen haben Einschränkungen!
11.12.2008 20:58:00
Tino
Hallo,
wie schon gesagt, Funktionen haben einige Einschränkungen.
Habe mal eine Zeile eingebaut die den ersten Unterschied im Direktfenster ersichtlich macht.
Zum zweiten kann die Funktion auch nicht seine Umgebung verändern, dazu gehört auch das kopieren.
Private Function Gefiltert(Bereich As Range, Zeile As Long) As Variant
Dim MyData As New DataObject, Spalte, s
'hier sollte schon mal der 1. unterschied ersichlich werden
Debug.Print Worksheets("Test").Range("A1:A105").SpecialCells(xlCellTypeVisible).Address
Worksheets("Test").Range("A1:A105").SpecialCells(xlCellTypeVisible).Copy
MyData.GetFromClipboard
Spalte = MyData.GetText(1)
Spalte = Left(Spalte, Len(Spalte) - 2)
s = Split(Spalte, Chr(13) & Chr(10))
If Zeile <= (Ubound(s) + 1) Then Gefiltert = s(Zeile - 1)
End Function
'
Sub Lade()
' Verweis auf MS Forms 2.0 Object Library setzen!
Dim MyData As New DataObject, Spalte, s, n
'hier sollte schon mal der 1. unterschied ersichlich werden
Debug.Print Worksheets("Test").Range("A1:A105").SpecialCells(xlCellTypeVisible).Address
Worksheets("Test").Range("A1:A105").SpecialCells(xlCellTypeVisible).Copy
MyData.GetFromClipboard
Spalte = MyData.GetText(1)
Spalte = Left(Spalte, Len(Spalte) - 2)
s = Split(Spalte, Chr(13) & Chr(10))
For n = 0 To Ubound(s)
MsgBox s(n)
Next n
End Sub
Gruß Tino