Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Rowsource für Listbox





Frage

Hallo zusammen in einer Userform habe ich ne Listbox, die beim Öffnen des Fensters geladen wird: ...= "BR" & 24 & ":BT" & zeile - 1 Funktioniert soweit einwandfrei. Da ich aber mit "With Sheets("Tabelle1")" arbeite, habe ich folgendes versucht (nur Beispiel): ...= .Cells(6, 70) & ":" & .Cells(20, 72) Dass das falsch ist habe ich gemerkt. Funktioniert das überhaupt, und wenn ja wie, oder muss ich mit "select("Tabelle1")" usw. arbeiten? Danke für ne Antwort.

Antwort 1 von nighty

hi :)

wie gewünscht

gruss nighty

Option Explicit
Sub test()
With Sheets("Tabelle1")
... = .Range(.Cells(6, 70), .Cells(20, 72))
End With
End Sub

Antwort 2 von Rahel04

Hi nighty,

danke für Deine Antwort, klappt aber noch immer nicht: Laufzeifehler 13: Typen unverträglich... Mein Code ist doch genau derselbe, oder?

With Sheets("US")
If .Cells(6, 70) = "" Then
Me.ListBox_RücktrittNormal_M.RowSource = ""
Else
zeile = 6
Do Until .Cells(zeile, 70) = ""
zeile = zeile + 1
If zeile = 21 Then Exit Do
Loop
If zeile = 21 Then
Me.ListBox_RücktrittNormal_M.RowSource = .Range(.Cells(6, 70), .Cells(20, 72))
Else
Me.ListBox_RücktrittNormal_M.RowSource = .Range(.Cells(6, 70), .Cells(zeile-1, 72))
End If
End If
end with

Weisst Du was ich wiederum falsch mache?

Gruss Rahel

Antwort 3 von fürLau

Hallo

Wie lange sll das gehen?

 If .Cells(6, 70) = "" Then
Me.ListBox_RücktrittNormal_M.RowSource = ""
Else
zeile = 6
Do Until .Cells(zeile, 70) = "" 

[h1]?[/h1]
Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt.

Antwort 4 von fürLau

schenkt mir ein [h1]o[/h1]

Antwort 5 von Jana_

Wie lange? Steht doch da:

zeile = 6
Do Until .Cells(zeile, 70) = ""
zeile = zeile + 1
If zeile = 21 Then Exit Do
Loop

Entweder bis von Zeile 6 abwärts mal eine Zelle in Spalte BR leer ist oder spätestens ist in Zeile 21 Schluss.

Was willst Du denn mit einem O ? Diese hässliche Fratze noch hässlicher machen? Ich schenk Dir einen Eimer weiße Farbe, damit Du die Dinger alle überpinseln kannst.

Zum Problem in Antwort 2. Eine Typunverträglichkeit könnte höchstens an einer der 3 Stellen

Me.ListBox_RücktrittNormal_M.RowSource = ""
oder
Me.ListBox_RücktrittNormal_M.RowSource = .Range(.Cells(6, 70), .Cells(20, 72))
oder
Me.ListBox_RücktrittNormal_M.RowSource = .Range(.Cells(6, 70), .Cells(zeile-1, 72))

vorkommen. Dazu müsste man wissen, wie Me.ListBox_RücktrittNormal_M.RowSource deklariert ist und außerdem daran denken, dass bei 2. und 3. ganze Bereiche von Zellen zugewiesen werden. Also müsste Me.ListBox_RücktrittNormal_M.RowSource eigentlich vom Typ Range sein. Oder sehe ich da was falsch?

Schöne Grüße, Jana

Antwort 6 von Jana_

Noch was, habe ich gerade ausprobiert.

Dim r As Range
r = ActiveSheet.Range("A1:B4")

funktioniert nicht, aber

Dim r As Range
Set r = ActiveSheet.Range("A1:B4")

Man muss also Set verwenden.

Grüße!

Antwort 7 von fürLau

Hallo
Zitat:
Diese hässliche Fratze noch hässlicher machen? Ich schenk Dir einen Eimer weiße Farbe, damit Du die Dinger alle überpinseln kannst.
ermundert einen richtig Dir zu helfen.;-)

With Sheets("US")
.Cells(6, 70).Select
If .Cells(6, 70) = "" Then
Me.ListBox_RücktrittNormal_M.RowSource = ""
Else
zeile = 6
Do Until .Cells(zeile, 70) = ""
zeile = zeile + 1
If zeile = 21 Then Exit Do
Loop
If zeile = 21 Then
Me.ListBox_RücktrittNormal_M.RowSource = .Range(.Cells(6, 70), .Cells(20, 72)).Address
Else
Me.ListBox_RücktrittNormal_M.RowSource = .Range(.Cells(6, 70), .Cells(zeile - 1, 72)).Address
End If
End If
End With

Zitat:
Also müsste Me.ListBox_RücktrittNormal_M.RowSource eigentlich vom Typ Range sein. Oder sehe ich da was falsch?
Typ ist String ! (Kein Tanga;-)
Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt.

Antwort 8 von Rahel04

Hallo,

das mit der weissen Farbe war aber nicht ich, im Gegenteil, ich bin dir für jede Hilfe dankbar..

Ich habe deinen Code reinkopiert und erhalte folgende Fehlermeldung:

Laufzeitfehler ´1004´: Die Select-Methode des Range-Objektes konnte nicht ausgeführt werden

Somit wäre ich bereits wieder am Ende und auf deine Hilfe angewiesen...

Lieber Gruss
Rahel

Antwort 9 von fürLau

Hallo, Rahel

Lösche zunächst die 2.Zeile (.Cells(6, 70).Select) und versuch´s nochmal.

Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt.

Antwort 10 von Rahel04

Hallo,

jetzt wirds spannend. Lösche ich die genannte Zeile, gibts zumindest keine Fehlermeldung mehr.

ABER: Klicke ich in der Listbox auf einen Datensatz, so wird dessen Inhalt in einzelne Textfelder gelesen; und das funktioniert auch. Aber die Listbox ist leer!! Zumindest kann ich visuell nichts erkennen. Verstehst du was ich meine?

Ich kanns kaum besser erklären, hab sowas noch nie erlebt.

Gruss Rahel