Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile Spalte von Range Object bestimmen

Zeile Spalte von Range Object bestimmen
29.06.2005 09:38:05
Range
Hallo
ich hab da mal wieder ein kleines Excel VBA problem
ich hab ein RangeObject das eine Matrix umfasst, jetzt möchte ich die Darüberliegende Zeile und die linke Spalte des Range Objects bestimmen?
wie geht das?
uli
!DANKE
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 09:58:48
Range
Hallo
Range.Row ist die erste Zeile, also ist Range.Row-1 die Zeile darüber.
Range.Column ist die linke(ste) Spalte.
Gruß- Micha
PS: Rückmeldung wäre nett.
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 10:12:34
Range
Hallo Micha
danke erstmal für die Antwort
meinst du ca. so
###############
Set Bereich = ActiveSheet.Range("B2:C10")
Set YRange = Range(Bereich.Column -1)
Set XRange = Range(Bereich.Row -1)
##############
?
uli
bringt mir eine Fehlermeldung
Fehler _Global irgendwas
Anzeige
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 10:30:02
Range
Hallo
hatte Dich mißverstanden und dachte, Du willst die Zeilen- bzw. Spaltennummern wissen.
Darauf aufbauend würde ich die Sache so lösen:

Option Explicit
Private Sub CommandButton1_Click()
Dim Bereich As Range
Set Bereich = ActiveSheet.Range("B2:C10")
Bereich.Select
MsgBox "Bereich"
Range(Cells(Bereich.Row - 1, Bereich.Column), Cells(Bereich.Row - 1, Bereich.Column + Bereich.Columns.Count - 1)).Select
MsgBox "XRange"
Range(Cells(Bereich.Row, Bereich.Column), Cells(Bereich.Row + Bereich.Rows.Count - 1, Bereich.Column)).Select
MsgBox "YRange"
End Sub

Gruß- Micha
PS: Rückmeldung wäre nett.
Anzeige
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 10:43:10
Range
Hallo Micha
ich werd noch verrückt
##############
Set Bereich = ActiveSheet.Range(RangeString)
Set YBereich = Range(ActiveSheet.Cells(Bereich.Row, Bereich.Column - 1), ActiveSheet.Cells(Bereich.Row.Count - 1, Bereich.Column - 1))
Set XBereich = Range(Cells(Bereich.Row - 1, Bereich.Column), Cells(Bereich.Row - 1, Bereich.Column.Count - 1)).Select
##############
er sagt immer bei SET YBereich Object erforderlich !!!
uli
Anzeige
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 10:57:42
Range
Hallo Uli,
warum antwortest Du immer auf Deine Beiträge? Das macht die Sache sehrt sehr unübersichtlich. Du kannst direkt auf meine Beiträge antworten, dann sieht man die Zusammenhänge besser.
Tippel mal meine Zeichen richtig ab, dann klappts auch. Das Selecet musst Du hinten natürlich weg nehmen, in beiden Zeilen.
Gruß- Micha
PS: Rückmeldung wäre nett.
Anzeige
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 11:03:57
Range
ich geb mich geschlagen ...
ich bin zu blöd zum lesen ...zurück zur schulbank ;)
danke
uli
AW: Zeile Spalte von Range Object bestimmen
29.06.2005 11:52:56
Range
Hallo
na fein, daß es dann doch geklappt hat ;o)
Gruß- Micha
;
Anzeige
Anzeige

Infobox / Tutorial

Zeile und Spalte von Range Object in Excel VBA bestimmen


Schritt-für-Schritt-Anleitung

Um die darüberliegende Zeile und die linke Spalte eines Range Objects in Excel VBA zu bestimmen, kannst du folgende Schritte befolgen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke auf Einfügen > Modul.

  3. Füge den folgenden Code ein:

    Option Explicit
    
    Private Sub CommandButton1_Click()
        Dim Bereich As Range
        Set Bereich = ActiveSheet.Range("B2:C10")
    
        ' Zeile über dem Bereich
        MsgBox "Die Zeile über dem Bereich ist: " & Bereich.Row - 1
    
        ' Linke Spalte des Bereichs
        MsgBox "Die linke Spalte des Bereichs ist: " & Bereich.Column
    End Sub
  4. Führe das Makro aus: Klicke auf den Button, um die MsgBox mit den Informationen anzuzeigen.


Häufige Fehler und Lösungen

  • Fehler: "Object erforderlich": Dieser Fehler tritt auf, wenn du versuchst, eine Range-Variable ohne korrektes Setzen zu verwenden. Stelle sicher, dass du die Range- und Cells-Methoden korrekt anwendest. Beispiel:

    Set YBereich = Range(ActiveSheet.Cells(Bereich.Row, Bereich.Column - 1), ActiveSheet.Cells(Bereich.Row, Bereich.Column - 1))
  • Fehler: "Global irgendwas": Dies kann passieren, wenn du eine Range-Variable nicht richtig definierst. Achte darauf, dass du die Range korrekt initialisierst, wie im Beispiel oben.


Alternative Methoden

Eine alternative Methode zur Bestimmung der Zeile und Spalte könnte die Verwendung von excel vba cells(zeile, spalte) sein. Hier ein Beispiel:

Dim ZeileÜber As Long
Dim SpalteLinks As Long

ZeileÜber = Bereich.Row - 1
SpalteLinks = Bereich.Column

MsgBox "Über der Zeile: " & ZeileÜber & " und linke Spalte: " & SpalteLinks

Praktische Beispiele

Hier ist ein praktisches Beispiel, das zeigt, wie du die Zeile und Spalte für verschiedene Bereiche ermitteln kannst:

Sub Beispiel()
    Dim Bereich As Range
    Set Bereich = ActiveSheet.Range("D5:E10")

    MsgBox "Über der Zeile: " & Bereich.Row - 1 & " und linke Spalte: " & Bereich.Column
End Sub

In diesem Beispiel wird die Zeile über dem Bereich D5:E10 und die linke Spalte ausgegeben.


Tipps für Profis

  • Nutze activesheet.range und vba range row column für dynamische Range-Berechnungen.
  • Experimentiere mit der Verwendung von vba activesheet.range für verschiedene Arbeitsblätter.
  • Überprüfe immer die Größe deines Bereichs, bevor du auf Zeilen oder Spalten zugreifst, um Laufzeitfehler zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich die Zeile und Spalte für ein dynamisches Range-Objekt ermitteln?
Wenn das Range-Objekt dynamisch ist, kannst du es direkt aus einer benutzereingebenen Auswahl oder einer Berechnung bestimmen.

2. Was tun, wenn mein Range-Objekt leer ist?
Stelle sicher, dass das Range-Objekt korrekt definiert ist, bevor du Versuche machst, auf Eigenschaften wie Row oder Column zuzugreifen. Du kannst auch Bedingungen einfügen, um zu prüfen, ob das Range leer ist.

3. Kann ich die Zeilen- und Spaltennummern in einer MsgBox anzeigen lassen?
Ja, du kannst die MsgBox-Funktion verwenden, um sowohl die Zeilen- als auch die Spaltennummern anzuzeigen, wie in den obigen Beispielen gezeigt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige