Die Range-Methode in VBA (Die Range-Methode in VBA), Lektion, Seite 723940
https://www.purl.org/stefan_ram/pub/range_vba (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
VBA-Kurs

Die Range-Eigenschaft in VBA 

Neben der Cells-Eigenschaft gibt es noch ein ziemlich ähnliche Range-Eigenschaft.

Objektkatalogeintrag zu »Excel.Range.Range«

Property Range(Cell1, [Cell2]) As Range

schreibgeschützt
Element von Excel.Global

Sie ergibt ebenfalls ein Objekt vom Typ »Range«.

Man muß zwischen der Eigenschaft  »Range« und dem Typ  (der Klasse) »Range« unterscheiden.

Objektkatalogeintrag zum Typ »Excel.Range«
Class Range
Element von Excel

Die Eigenschaft »Range« hat eigene Parameter »Cell1« und »Cell2« (während »Cells« ein Range-Objekt ergab, das _Default-, Value- und Item-Einträge enthält.)

Objektkatalogeinträge
Property Cells As Range
Property Range(Cell1, [Cell2]) As Range

Meist wird nur der erste Parameter von »Range« verwendet. Er akzeptiert eine Adresse in der aus Excel  bekannten Schreibweise.

Modul1

Sub Kopieren

Dim r As Object ' Spaete Bindung

Set r = Range( "B2" )

Let r = 2

End Sub

Mappe1.xls - [Modul1 (Code)]
Sub Kopieren
Dim r As Object
Set r = Cells( 1, 1 )
Let r = 1
Set r = Range( "B2" )
Let r = 2
End Sub

(siehe Lokalfenster)

Mappe1.xls - [Modul1 (Code)]
Sub Kopieren
Dim r As Excel.Range
Set r = Cells( 1, 1 )
Let r = 1
Set r = Range( "B2" )
Let r = 2
End Sub

(siehe Lokalfenster)

? Range( "A6" ) 
-0,421826388883346
? Cells( 6, 1 ) 
-0,421826388883346
? Range( "Testx" ) ' benannte Zelle

bsp: kopieren: Range("b1")=Range("a1")

Cells

Man beachte, daß auch bei den folgenden Beispielen meist Cells statt Range verwendet werden könnte!

Man bevorzugt Cells, wenn die anzusprechenden Adressen schon in numerischer Form vorliegen.

Bereiche

Bereich: Range("A1:B2"), oder: Range( "A1", "B2" ), oder: Range( Range("A1"), Range("B2") )

Notizen

Direktbereich
Range("A1").CurrentRegion.Interior.ColorIndex =17
Direktbereich

? Range( "A1" ).End( xlDown ).Address

$A$2

Direktbereich
Range( "A1", Range( "A1" ).End( xlDown ) ) = 77

Verschachtelte Zugriffe

Range( "A1:B2" ).Cells( 1, 1 )

Range( "A1:B2" ).Item( 1, 1 )

Range( "A1:B2" )( 1, 1 )

Range( Range( "A1" ), Range( "A1" ).End( xlDown ))

Übungsaufgaben

/   Übungsaufgabe

Schreiben Sie ohne VBA einen beliebigen Zahlenwert in die Zelle "A1". Dieser Wert soll einen Warenwert (netto, d.h. ohne Mehrwertsteuer) darstellen.

Schreiben Sie dann eine VBA -Anweisung, welche die Mehrwertsteuer des Wertes der Zelle "A1" in die Zelle "A2" schreibt. (Der Wert in der Zelle "A1" soll also unverändert bleiben.)

In der Lösung soll nicht »Cells«, sondern »Range« verwendet werden.

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram723940 stefan_ram:723940 Die Range-Methode in VBA Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd723940, slrprddef723940, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/range_vba