ich möchte in meinem Projekt zum ersten Mal das Range-Objekt nutzen.
Bisher habe ich eine Range in VBA immer über einen Zellbezug manuell hergestellt:
Sheets("Daten").range(Sheets("Daten").Cells(1, 1), Sheets("Daten").Cells(5, 5))
Ich bin bisher nie in die Verlegenheit gekommen eine Variable als Range anzulegen oder gar Ranges zwischen Funktionen hin- und herzugeben.
Nun habe ich gemerkt, dass ich "range" so nicht nutzen kann.
Folgende Funktion geht nicht durch den Compiler:
Private Sub Test()
Dim testrange As range
Set testrange = range("A1:B2")
End Sub
Dabei wird "Range" immer automatisch klein formatiert zu "range".
Wenn ich kompilieren lasse erhalte ich folgenden Fehler:
Fehler beim Kompilieren: Ein Modul hat einen unzulässigen Typ
Auch Funktionsübergaben mit "Range" in der Parameterliste funktionieren nicht. Hier zum Beispiel das Worksheet_SelectionChange Ereignis was ich gerne nutzen wollte:
Private Sub Worksheet_SelectionChange(ByVal Target As range)
End Sub
Auch hier erlaubt er nur "range" statt "Range" und gibt wieder die obige Fehlermeldung aus.
Ich kann im Internet niemanden finden, der das selbe Problem hat. Habt ihr irgendwelche Anregungen was ich noch ausprobieren kann? Fehlt noch irgendein VBA-Verweis?
Den einzigen Hinweis im Internet konnte ich finden, dass jemand statt "range" dann "Excel.Range" geschrieben hat. Wenn ich das bei mir so eingebe friert Excel ein und kann nur durch einen Prozess-Kill wieder neugestartet werden.
Ich benutze Microsoft Office Home and Student 2019 und habe auch leider kein alternatives Office zum Testen zur Verfügung.
Danke für Eure Hilfe und liebe Grüße
Paul