Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
272to276
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
272to276
272to276
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Frage über Range end + worksheets

Frage über Range end + worksheets
26.06.2003 15:18:36
Daniel
hey,

Ich schreibe gerade ein Makro bei dem es oft notwendig ist ein Range durch Range("A1").end(xlDown) zu finden (oder jedenfalls durch irgend ein end(xl) methode.

Nun bin ich auf einige Probleme gestossen als ich diese end.methode mit worksheets oder userforms kombinieren wollte. Habe z.B. folgendes machen wollen

for each zelle in Worksheets("Verdichtung1").Range("A2", Range("B2").End(xlDown))

oder auch Userform1.combobox1.rowsource = Worksheets("Verdichtung1").Range("A2", Range("B2").End(xlDown))

Liegt das problem an dem Worksheetobjekt oder meiner Verwendung der end befehle? Irgendwelche Vorschläge?

Danke,
Daniel



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

Betreff
Datum
Anwender
Anzeige
Re: Frage über Range end + worksheets
26.06.2003 15:24:27
Mike E.

Hallo,

Versuche den Range als Variable zu deklarieren:

hier mal ein bsp.:

Sub n()

Dim rng As Range

Set rng = Range(Cells(2, 1), Cells(Cells.SpecialCells(xlLastCell).Row, 1))

For Each zelle In rng

If zelle = 3 Then MsgBox (zelle.Address)

Next
End Sub

Gruß
Mike

muss worksheet angeben
26.06.2003 15:40:07
Daniel

aber ich muss den Worksheet angeben, sonst kann es ja nicht wissen wo es den letzten Range suchen soll. Das problem könnte ich durch Worksheet(...).select lösen gefolgt von END aber das möchte ich nicht denn dann wird das letzten endes eine ewige selekterei ;)

Bin mir jetzt eigentlich ziemlich sicher das dies ein Worksheet problem ist. Kriege sogar einen Fehler wenn ich einfach
Worksheets("Tabelle1").Cells(ActiveCell.Row, 1).Select schreibe.

Puh... streng ;)

Anzeige
Re: muss worksheet angeben
26.06.2003 15:44:29
Mike E.

Hallo Daniel,

dein Beispiel funktioniert bei mir; wie lautet denn die Fehlermeldung?
Oder startest du mittels CommandButton auf der Tabelle? Dann müsstest du zunächst die "TakeFocusOnClick"-Eigenschaft des Buttons auf "False" setzen.

Gruß
Mike


funkt leider nicht
26.06.2003 16:01:01
Daniel

Das ist mein genauer code für die UserForm

Private Sub UserForm_Initialize()

With UserForm1
.ComboBox1.ColumnCount = 2
.ComboBox1.ColumnWidths = "3,5cm; 1cm"
.ComboBox1.RowSource = Worksheets("Verdichtung1").Range("A2", Range("B2").End(xlDown))
.ComboBox1.ListIndex = 0
.ComboBox2.AddItem "1"
.ComboBox2.AddItem "2"
.ComboBox2.AddItem "3"
.ComboBox2.AddItem "4"
.ComboBox2.AddItem "5"
.ComboBox2.ListIndex = 0
.TextBox1.SetFocus
End With

"Typen unverträglich"

Und warum sollte
Worksheets("Tabelle1").Cells(ActiveCell.Row, 1).Select
nicht funktionieren?

End Sub

Anzeige
Re: funkt leider nicht
26.06.2003 16:16:53
Mike E.

Hi,

probier's mal so:

Gruß
Mike

hmmm...
26.06.2003 16:26:55
Daniel

aus irgend einem Grund funktionierts nur wenn ich zuerst Worksheets("...") selektioniere und dann die Rowsource eingebe. Keine Ahnung warum. Naja dann werde ich einfach bis ans Ende der Tage herumselektionieren...

Danke für die Mühe :)
Daniel

Re: Frage über Range end + worksheets
27.06.2003 01:13:14
Alf

Hallöchen zu fortgeschrittener Stunde:

Deine folgende Formulierung ist nicht allgemein gültig. Sie stimmt nur dann, wenn "Verdichtung1" das aktive Blatt ist.
Ein frei stehendes "Range()" (ohne Punkt davor) bezieht sich immer auf das aktive Blatt:

Mach es mit Objekt-Substitutionen:

Gruss Alf









Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige