Anzeige
Archiv - Navigation
644to648
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
644to648
644to648
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Listbox

Listbox
03.08.2005 17:10:06
Maximillian
Sehr geehrte Excel-Gemeinde,
ich möchte eine Listbox mit Daten füllen.
Wie kann man so etwas machen?
Ich wäre daran interessiert.
Maximillian D.

28
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox
03.08.2005 17:13:42
Hajo_Zi
Hallo Maximillian,
in Zeile 1 stehen die überschriften, ab A2 die Daten.
Option Explicit

Private Sub UserForm_Activate()
Dim rngSource As Object
Dim intColums As Integer
ListBox1.Tag = 1
Set rngSource = Range("A1").CurrentRegion
' Die oberste Zeile enthaelt die Feldnamen.
' Diese brauchen wir nur dort um die Columnheader darzustellen,
' aber nicht fuer die Listboxeintraege.
' Also den Datenbereich um die Erste Zeile reduzieren.
Set rngSource = rngSource.Offset(1, 0).Resize(rngSource.Rows.Count - 1, rngSource.Columns.Count)
' Spaltenanzahl des Datenbereichs ermitteln.
intColums = rngSource.Columns.Count
With Me.ListBox1
.ListStyle = fmListStyleOption      ' Auswahlfeld zu Beginn der Zeile
' von Peter Haserodt
' nur eine Auswahl, bei .ListStyle = fmListStyleOption Optionbutton in Listbox
'.MultiSelect = fmMultiSelectSingle
' mehrere können ausgewählt werden,.ListStyle = fmListStyleOption checkboxen in Listbo
.MultiSelect = fmMultiSelectMulti
'.MultiSelect = fmMultiSelectExtended
' gibt eigentlich nur bei Liststyle Plain einen Sinn, funzt aber auch anders.
' Dies bewirkt, dass mit Shift und Strg Tasten  eine Mehrfachauswahl getroffen
' werden kann
.ColumnCount = intColums
.ColumnHeads = True
.RowSource = rngSource.Address
End With
Set rngSource = Nothing
ListBox1.Tag = ""
End Sub

Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


Anzeige
AW: Listbox
03.08.2005 17:16:02
Maximillian
Sehr geehrter Hajo_Zi,
könnten Sie vielleicht auch eine Erklärung anbringen?
Ich möchte nämlich Daten aus einem 'Excel-Arbeitsblatt' in einer Listbox einbringen;
ist so etwas möglich?
Mit freundlichen Grüßen
Maximillian D.
AW: Listbox
03.08.2005 17:18:03
Hajo_Zi
Hallo Maximillian,
wenn ich mich nicht täusche sind wir hier in einem Excel Forum. Also bin ich davon ausgegangen das die Daten aus einer Exceltabelle gelesen werden.
+Gruß Hajo

"Wer Rechtschreibfehler findet, darf sie behalten!"
Anzeige
AW: Listbox
03.08.2005 17:21:46
Maximillian
Sehr geehrter Hajo_Zi,
mit diesem Code ist es also möglich eine Listbox mit Einträgen zu versehen, welche aus einer Excel Tabelle stammen.
Allerdings kommt mir die Frage aus, wie man denn zwischen den einzelnen Sheets ein Sheet für die Listbox benutzen kann.
Kann man derartiges in die Realität umsetzen?
Mit freundlichen Grüßen
Maximillian D.
AW: Listbox
03.08.2005 17:28:25
Hajo_Zi
Hallo Maximillian,
in dem Code wrd die aktuelle Tabelle benutzt. Das kann man aber einbauen das auch eine bestimmte benutzt wird. Bringe es erstmal mit der aktuellen zum laufen dann sehen wir weiter.
Gruß Hajo

"Wer Rechtschreibfehler findet, darf sie behalten!"
Anzeige
AW: Listbox - vom Maximilian
03.08.2005 17:45:07
Matthias
Hallo Hajo,
er hat auf den falschen Beitrag geantwortet - du siehst das nicht gerne, da dachte ich, ich kopiere ihn hierher:
---------------------------------------------------------------------
Lieber Hajo,
dieser Code läuft wunderbar.
Allerdings möchte ich ab und an auch die Herstellerlisten unserer Posten in einer Listbox einbringen, welche allerdings nicht mit in der selben Arbeitsmappe abgelegt werden können. Allerdings weiß ich nicht, wie man einen ganzen Zellbezug auf eine andere Excel Tabelle verlegt. Könntest Du mir da helfen?
Da ich ein sehr blutiger Anfänger bin, könntest Du Deinen Erklärungen auch mehr Detail verleihen?
Mit freundlichen Grüßen
Maximillian D.

---------------------------------------------------------------------------
Gruß Matthias
Anzeige
AW: Listbox
03.08.2005 17:29:58
Matthias
Hallo Maximilian,
erstens duzen wir uns hier.
https://www.herber.de/forum/faq.htm
Hajo hat dich vielleicht mir seinem auisführlichen Code "erschlagen", darin ist aber eigentlich alles beschrieben.
Wenn du eine Listbox auf dem Tabellenblatt erstellen willst, mach das mit der Steuerelement-Toolbox, rechtklicke sie, wähle "Eigenschaften" und trage im erscheinenden Fester bei "ListFillRange" den Bereich ein, der gelistet werden soll, also z.B. Tabelle1!A1:A10
Wohin der ausgewählte Wert geschrieben werden soll, kannst du in "LinkedCell" eintragen.
Gruß Matthias
P.S. Es gibt hier nur sehr wenige Excel-Profis, bei diesen setzt man meist sehr viel Wissen voraus ;-)
Anzeige
AW: Listbox
03.08.2005 17:41:07
Maximillian
Lieber Hajo,
dieser Code läuft wunderbar.
Allerdings möchte ich ab und an auch die Herstellerlisten unserer Posten in einer Listbox einbringen, welche allerdings nicht mit in der selben Arbeitsmappe abgelegt werden können. Allerdings weiß ich nicht, wie man einen ganzen Zellbezug auf eine andere Excel Tabelle verlegt. Könntest Du mir da helfen?
Da ich ein sehr blutiger Anfänger bin, könntest Du Deinen Erklärungen auch mehr Detail verleihen?
Mit freundlichen Grüßen
Maximillian D.
AW: Listbox
03.08.2005 17:50:00
Matthias
Hallo Maximilian,
könntest du dir das so vorstellen:
- Mappe mit Herstellerliste öffnen
- Herstellerliste in die aktuelle Mappe kopieren
- Mappe mit Herstellerliste schließen
- Listbox mit Liste (jetzt in aktueller Mappe) füllen.
für detailliertere Hilfen bräuchte ich auch detailliertere Auskünfte...
Gruß Matthias
Anzeige
AW: Listbox
03.08.2005 17:53:39
Maximillian
Der "Netzwerk - Administrator" hat mir gesagt, dass die aktuellen Listen nur in diesem Ordner finden zu sind und sich stündlich ändern.
Mit freundlichen Grüßen,
Maximillian D.
AW: Listbox
03.08.2005 17:58:48
Matthias
Hallo Maximilian,
das zähle ich nun nicht gerade zu einer detaillierten Erklärung, die du ja von uns auch erbittest...
Könntest Du also die Datei mit der Liste (schreibgeschützt) öffnen, die Liste kopieren und die Datei wieder schließen?
Gruß Matthias
AW: Listbox
03.08.2005 18:00:51
Maximillian
Lieber Matthias G.,
ich müsste dann ja die Liste stündlich kopieren, was ja nichts bringen würde.
Mit freundlichen Grüßen,
Maximillian D.
Anzeige
AW: Listbox
03.08.2005 18:03:57
Matthias
Hallo Maximilian,
oder aber automatisch beim Öffnen der Datei.
(auch einsilbig)
Gruß Matthias
AW: Listbox
03.08.2005 18:34:00
Maximillian
Gibt es denn keinen eleganteren Weg als den?
Direkt verknüpfen?
Mit freundlichen Grüßenj´,
Maximilian D.
AW: Listbox
03.08.2005 18:43:58
Matthias
Hallo Maximilian,
ich hab mal versucht, dies als ListFillRange einzugeben:
'D:\xl\Max\[liste.xls]Tabelle1'!A1:A10
(Pfad undDateiname musst du anpassen)
beim erneuten Öffnen fragt er auch, ob er die externen Datenquellen aktuialisieren soll. Bei ja ist die Liste jedoch plötzlioch leer.
Vielleicht klappt es ja bei dir.
Gruß Matthias
AW: Listbox
03.08.2005 18:48:49
Maximillian
Lieber Matthias,
leider möchte ich das Listeneld in einem "Formular" in dem "Visual Basic - Editor" haben.
In den "Eigenschaften" des Listfeldes existiert keine "List-Fill-Range".
Mache ich vielleicht etwas falsch?
Mit freundlichen Grüßen
Maximillian D.
Anzeige
AW: Listbox
03.08.2005 18:55:21
Matthias
Hallo Maximilian,
in einer Userform heißt die Eigenschaft "RowSource". Aber da gibt es die gleichen Probleme.
Ist denn die Datei so riesig, oder warum willst du sie nicht manuell laden?
Gruß Matthias
AW: Listbox
03.08.2005 19:03:13
Maximillian
Die Liste wird ständig über ein Netzwerk modifiziert und deshalb lohnt es sich einfach nicht, diese ins Makro einzufügen.
Maximillian D.
AW: Listbox
03.08.2005 19:08:13
Matthias
Hallo Maximilian,
also ein letzter Vorschlag:
Beim Öffnen der Userform wird die Liste geöffnet und lokal kopiert.
Mit direkten Bezügen erhälts du auch keine laufende Aktualisierung, da bäuchtest du schon eine Datenbank:
Beispiel:
Liste befindet sich in "D:\xl\Max\Liste.xls" in Tabelle1 Spalte A
wird kopiert in aktuelle Mappe, Tabelle1 Spalte A

Private Sub UserForm_Initialize()
ThisWorkbook.Sheets("Tabelle1").Range("A:A").ClearContents
Workbooks.Open "d:\xl\max\liste.xls"
With ActiveWorkbook
.Sheets("Tabelle1").Range("A:A").Copy ThisWorkbook.Sheets("Tabelle1").Range("A1")
.Close False
End With
ListBox1.RowSource = Sheets("Tabelle1").Range("A1:A" & Sheets("Tabelle1").Range("A65536").End(xlUp).Row).Address
End Sub

Gruß Matthias
Anzeige
AW: Listbox
03.08.2005 19:15:33
Maximillian
Du sagtest "Datenbank".
Das wäre toll, wenn man eine Access-Datenbank dafür verwenden könnte.
--
Mit freundlichen Grüßen
Maximillian D.
AW: Listbox
03.08.2005 19:20:17
Matthias
Hallo Maximilian,
ja, wäre es vielleicht.
Trotzdem habe ich den Eindruck, wir reden aneinander vorbei.
Tschüß,
Matthias
AW: Listbox
03.08.2005 19:31:41
Maximillian
Nicht ganz - ich bin immer auf die Excel Lösung ausgewichen, aber wenn auch Access-Databases gehen, dann ist das ja wunderbar!
Dann brauche ich ja meine Ausweichlösung nicht mehr.
Bleibt nur die Frage, wie man so etwas realisieren kann.
Maximillian
AW: Listbox
03.08.2005 20:21:35
Maximillian
Ich will doch gar nichts in Access programmieren - ich will AUF Access ZUGREIFEN.
Maxmillian
Wer hat eine Idee?!
03.08.2005 21:54:12
Maximillian
AW: Wer hat eine Idee?!
03.08.2005 21:57:36
Matthias
Hallo Maximilian,
wie gesagt, wenn dir die Recherche nichts nützt, stelle einen neuen Beitrag ein (oben im Fenster auf "Beitrag schreiben").
Hier schaut keiner mehr, der Thread ist "verbraucht" und die Fragestellung eine völlig andere geworden.
Gruß Matthias
AW: Listbox
03.08.2005 17:45:20
Hajo_Zi
Hallo Matthias,
ich gehe mal davon aus das Du das weiter betreust ich habe jetzt andere dringende Sachen zu erledigen.
Gruß Hajo

"Wer Rechtschreibfehler findet, darf sie behalten!"

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige