Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1968to1972
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
Inhaltsverzeichnis

Listboxe füllt sich nur mit Elementen der aktiven Tabelle

Listboxe füllt sich nur mit Elementen der aktiven Tabelle
13.03.2024 11:41:38
Sihabs
Hallo Leuts,

leider läßt sich meine ListBox nur mit Elementen der aktiven Tabelle füllen. Ich würde dies aber gerne über eine Auswahl machen

Private Sub Load_Click()



Dim ThisYear As String
ThisYear = Format(Now(), "YYYY")

Dim Wahl As String
Wahl = Datum_Jahr.Value

Set sht = Worksheets(Wahl)
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row 'Bestimmt die letzte Reihe der Liste



With Liste
.ColumnCount = 8
.ColumnHeads = True
.ColumnWidths = "40"
.RowSource = "A2:H" & LastRow
End With



End Sub

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
13.03.2024 11:59:42
daniel
Hi
verwende für RowSource die erweiterte Adresse, also inklusive Tabellenblattnamen:

.RowSource = "'" & sht.Name & "'!A2:H" & LastRow


Gruß Daniel
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
13.03.2024 13:58:54
Onur
Ich vermute, du meinst, dass du den Code irgendwo gefunden hast und null Ahnung hast, was er bedeutet und wie man ihn ändert.
Wenn du eine Auswahl statt festem Bereich programmiert haben willst, musst du uns verraten, was genau du damit meinst.
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
14.03.2024 11:09:40
Sihabs
Ah, ja man kann ja wie du ein (denk dir hier was rein) sein und solche (same same) Dinge zusammen denken oder man kann einfach eine Frage als eine Frage hinnehmen und entweder ignorieren oder beantworten. Aber gut, du magst es deine Zeit zu benutzen um 0 Mehrwert zu generieren, da folge ich mal deinem Beispiel.

In der Tat ist das mein Code. Habe ich irgendwann, irgendwo im Internet gelernt welche Befehle was machen? Japp, ich glaube du mit hoher Wahrscheinlichkeit auch.

Ich brauchte lediglich Hilfe damit, die angesprochene Tabelle per Auswahl zu entscheiden. So wie ich es normalerweise mache, klappt es nicht. Und die freundliche Hilfe von dem Kollegen über dir, der den Sinn eines Forums verstanden hat, funktioniert leider auch nicht.

Aber ja, zumindest generiert er einen Mehrwert, du solltest das Gleiche mal versuchen.
Anzeige
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
14.03.2024 12:32:51
Onur
    Dim Wahl As String, sht, lastrow

Wahl = 2022 'Datum_Jahr.Value
Set sht = Worksheets(Wahl)
lastrow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row
With Liste
.ColumnCount = 8
.ColumnHeads = True
.ColumnWidths = "40"
.RowSource = "'" & sht.Name & "'!A2:H" & lastrow
End With

AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
13.03.2024 12:20:41
Sihabs
Danke, aber welchen Namen sollte ich da Eintragen? Den des Sheets? Oder wie in meinem Wunsch, die Auswahl (hier in dem Code mit Wahl benannt). Weil ich würde das gerne dynamisch halten und per Auswahl machen
Anzeige
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
13.03.2024 12:37:26
daniel
Hi
logischerweise den Namen des Sheets, von dem du die Daten lesen willst.
wenn du das Sheet schon einer Variablen zugewiesen hast, kannst du den Namen natürlich auch über die Variable ermitteln (hierbei natürlich die Regeln zum Verketten von festen Texten und Werten in Variablen beachten)
die Hochkommas braucht man, wenn der Name Sonderzeichen enthält, daher sollte man die immer mit dazunehmen, wenn man variable Sheetnamen hat.
Gruß Daniel
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
14.03.2024 11:14:55
Sihabs
Private Sub Load_Click()



Dim Wahl As String
Wahl = Datum_Jahr.Value

Set sht = Worksheets(Wahl)
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row 'Bestimmt die letzte Reihe der Liste



With Liste
.ColumnCount = 8
.ColumnHeads = True
.ColumnWidths = "40"
.RowSource = "'" & sht.Wahl & "'!A2:H" & LastRow
End With



End Sub


so funktioniert es leider auch nicht. Auch nicht wenn ich sht.Worksheets(Wahl) statt sht.Wahl benutze. Wahl ist die Variable in dem das Jahr (wird per Auswahl im Formular gewählt) als String gespeichert wird.

Die Tabellenblätter sind alle nach Jahren benannt. z.B. 2020, 2021 und so weiter. Also wirklich nur das Jahr als Name. Und die Ausgabe von Datum_Jahr.Value kann auch nur eines dieser existierenden Jahre sein (das funktioniert auch, wollte ich aber nur mal anmerken)
Anzeige
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
14.03.2024 11:44:05
GerdL
Moin,

funktioniert dies denn?

Private Sub Load_Click()


Dim Wahl As String, sht As Worksheet

Wahl = Datum_Jahr.Value

Set sht = Worksheets(Wahl)
MsgBox sht.Range("A1").Value


End Sub


Gruß Gerd
AW: Listboxe füllt sich nur mit Elementen der aktiven Tabelle
14.03.2024 12:40:39
daniel
Hi
du hast das Blatt, auf dem du arbeiten willst, doch schon der Variable sht zu gewiesen.
und die verwendest du ja auch, um dort die Größe der Tabelle zu ermitteln.

Set sht = Worksheets(Wahl)
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row

also verwendest du sht auch, um den Namen des Tabellbenblatts zu ermitteln.
daher so SO WIE ICH BEREITS GESCHRIEBEN HABE:
.RowSource = "'" & sht.Name & "'!A2:H" & LastRow


da die Variable Wahl aber auch den Tabellenblattnamen enthält, kannst du natürlich auch diese verwenden:
.RowSource = "'" & Wahl & "'!A2:H" & LastRow

aber eben als Variable. "Wahl" ist keine Eigenschaft eines Tabellenblatts.

Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige