Forums Neueste Beiträge
 

Erste Zeile aus Range-Objekt entfernen

09/06/2008 - 19:37 von Christoph Schneegans | Report spam
Hallo allerseits!

Ich habe ein Range-Objekt (nicht exotisch, einfach rechteckig) und
möchte die erste Zeile entfernen. Das funktioniert, wenn ich für die
2. bis n. Zeile jeweils ein neues Range-Objekt mit der Union-Funktion
erzeuge, ungefàhr so:

Function RemoveFirstRow(rng As Excel.Range) As Excel.Range

Dim rw As Excel.Range
Dim result As Excel.Range
For Each rw In rng.Rows
If rw.Row > 1 Then
If result Is Nothing Then
Set result = rw
Else
Set result = Excel.Union(result, rw)
End If
End If
Next

Set RemoveFirstRow = result

End Function

Aber geht das nicht eleganter?

<http://schneegans.de/web/kanonische-adressen/> · Gute URLs
 

Lesen sie die antworten

#1 Dr. Eckehard Pfeifer
09/06/2008 - 20:11 | Warnen spam
Hallo, die Funktion gibt Dir die erste Zeile, die Du aber entfernt
haben willst. Aber wenn ich Dich recht verstehe, suchst Du doch den
Rest, oder? Damit sollte es eine Funktion sein, die den Schnitt
zwischen dem Original und dem um eine Zeile verschobenen Teil liefert:

return intersect(rng, rng.offset(0,1))

MfG EP
Entwicklung - Beratung - Training (www.dr-e-pfeifer.net)
XL-Funktionsverzeichnis (ISBN: 3860636898)
MS Office 2003 - Das Entwicklerbuch (ISBN 3-86063-688-X)

Ähnliche fragen