Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Range mit Variablen

Forumthread: Range mit Variablen

Range mit Variablen
20.02.2025 16:25:15
Wennerfaellt
Sub Sortieren()


Dim LZeile As String
Dim LSpalte As String

LZeile = Sheets("Abfahrten").Range("B3").End(xlDown).Row
LSpalte = Sheets("Abfahrten").UsedRange.Columns.Count

Hallo,
obiger Code soll die Zeilen und die Spalten einer Tabelle ermitteln. Funktioniert auch.
LZeile = 33 

LSpalte = 6

Um den Code jetzt weiterzuschreiben habe ich zwei Hilfszeilen eingebaut um das Auswahlfeld erstmal übersichtlich zu halten. Die werden später wieder gelöscht.
Daraus ergeben sich jetzt zwei String-Variablen: LZeile = "33" und LSpalte = "6"
Und jetzt versteh ich die Welt nicht mehr.
Range(Cells(3, 1), Cells(33, 6)).Select

Funktioniert. Klar sind ja auch keine Variablen.
Range(Cells(3, 1), Cells(LZeile, 6)).Select

Funktioniert auch und makiert den gleichen Bereich.
Range(Cells(3, 1), Cells(LZeile, LSpalte)).Select

Funktioniert nicht. Warum sollte man auch hinten dasselbe machen dürfen, wie vorne.....
Range(Cells(3, 1), Cells(LSpalte, 33)).Select

Funktioniert auch. Natürlich jetzt mit anderer Makierung. Also kann der Fehler in der Variablen selbst nicht liegen.
Range(Cells(3, 1), Cells(33, LSpalte)).Select

Funktioniert auch nicht. Logisch ist das nicht. Aber wo ist der Fehler???
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Range mit Variablen
20.02.2025 16:39:48
Crazy Tom
moin,

was passiert denn wenn du die Variablen anstatt String zu Long machst?

mfg Tom
AW: Range mit Variablen
20.02.2025 17:55:34
Piet
Hallo

@CrazyTom alle Achtung, da warst du sehr aufmerksam, das habe ich glatt übersehen! Es gibt aber 2 Fehler.

Schau bitte noch mal genau auf deinen Code. Cells wird mit Cells(z, s) definiert. z=Zeile, s=Spalte!!
Die Selection stimmt sicher, aber wenn du Zeilen und Spalten in Cells vertauschst, ... was wird dann selektiert??
Range(Cells(3, 1), Cells(LSpalte, 33)).Select

mfg Piet
Anzeige
AW: Range mit Variablen
20.02.2025 18:52:30
Wennerfaellt
Hallo Tom,

vielen Dank. Mit Long funktioniert es einwandfrei. Ich hatte es mit String versucht, weil es über 1000 Zeilen werden können.
Ich versteh nur immernoch nicht warum es mit String vorne (Zeile) funktioniert hinten(Spalte) aber nicht.
Aber mein Code funktioniert jetzt.

Vielen Dank

Dannstehterwiederauf
Anzeige
AW: Range mit Variablen
20.02.2025 19:01:57
Yal
Hallo Wenner (man spricht sich im Forum per Vorname an ;-)

es ist eine Besonderheit der Eigenschaft "Cells", dass der zweite Parameter eine Zahl oder einen Text sein darf:
Cells(1,2) --> entspricht B1
Cells(1, "B") --> entspricht auch B1

Da wo gemeckert wird, ist, wenn man einen Text übergibt, dass nicht in einer Spaltenbezeichnung umwandeln kann. Spalten gibt es von "A" bis "XFD" (über "AA", "AAA", usw).
Also mit einer Zahl, die in einer String drin ist, sagt Excel ich habe keine Spalte mit der Buchstabe "6".

VG
Yal
Anzeige
AW: Range mit Variablen
20.02.2025 19:09:08
Onur
"Ich hatte es mit String versucht, weil es über 1000 Zeilen werden " ?
Wo ist denn da die Logik ? String ist schlicht und einfach TEXT und funktioniert weder mit EINER noch mit TAUSEND Zeilen.
AW: Range mit Variablen
20.02.2025 18:47:11
Wennerfaellt
Hallo Piet,
ich hatte LSpalte nur zum ausprobieren einmal nach vorne gestellt. Danke trotzdem.

Dannstehterwiederauf
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18