Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
892to896
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
892to896
892to896
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ListBox-Spalten formatieren

ListBox-Spalten formatieren
08.08.2007 19:31:46
eddman
Hallo zusammen,
ich hole mir mit folgendem Makro Daten aus einem Tabellenblatt in die ListBox. Soweit funktioniert das ganze problemlos, allerdings geht die Formatierung der Zahlen unterwegs verloren. Wie kann ich die einzelnen Spalten der Listbox formatieren, da einige Spalten im Zahlenformat 1.000,00 und manche im 1,00 %-Format in der ListBox erscheinen sollten. Das zweite Problem ist, dass die ColumnHeads nicht übernommen werden.
Ich bin absoluter VBA-Anfänger aber schier am verzweifeln. Bin für jede Hilfe dankbar.
Grüße eddman

Private Sub cmdRefresh_Click()
Me.lstTabelle.ColumnCount = "16"
usrInput.lstTabelle.List = Range("A1").CurrentRegion.Value
Me.lstTabelle.ColumnHeads = True
Me.lstTabelle.ColumnWidths = "150;35;60;60;80;65;55;40;35;43;25;50;60;60;52;50"
End Sub


4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ListBox-Spalten formatieren
08.08.2007 19:37:00
Hajo_Zi
Hallo eddmann,
bei gebundenen Listen kannst Du kein Format übernehmen.
Ich verwende immer folgenden Code bei gebundenen Listen.

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



Anzeige
AW: ListBox-Spalten formatieren
09.08.2007 07:49:00
eddman
Hallo Hajo,
vielen Dank für die Antwort. Diese Lösung kann ich aber leider nicht in folgendes Makro mit Autofilter einbauen, das ebenfalls Bestandteil meiner Gesamtlösung ist:
'Filterfunktion

Private Sub cmdFiltern_Click()
Dim sFilter As String
Application.ScreenUpdating = False
If optA.Value = True Then
sFilter = "A"
End If
If optB.Value = True Then
sFilter = "B"
End If
If optC.Value = True Then
sFilter = "C"
End If
If optGewonnen.Value = True Then
sFilter = "gewonnen"
End If
If optVerloren.Value = True Then
sFilter = "verloren"
End If
If sFilter = "" Then Exit Sub
Columns("B:B").AutoFilter Field:=1, Criteria1:=sFilter
Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy
Workbooks.Add
Range("A1").PasteSpecial xlPasteValues
Rows(1).Delete
'Ohne Range geht es hier nicht :(
Me.lstTabelle.List = Range("A1").CurrentRegion.Value
lstTabelle.ColumnCount = "16"
lstTabelle.ColumnHeads = True
Me.lstTabelle.ColumnWidths = "150;35;60;60;80;65;55;40;35;43;25;50;60;60;52;50"
ActiveWorkbook.Close savechanges:=False
lstTabelle.ListIndex = 0
Columns("B:B").AutoFilter
End Sub


Vielen Dank!

Anzeige
AW: ListBox-Spalten formatieren
09.08.2007 08:25:00
Hajo_Zi
Hallo Eddman,
man sollte schon alles beschreiben. Mir ist nicht klar wie Du eine Liste mit Autofilter und eine gebundene List hin bekommst. Ich baue das nicht nach. Ich bin raus.
Gruß Hajo

AW: ListBox-Spalten formatieren
09.08.2007 08:46:00
eddman
Hallo Hajo,
OK schade aber danke trotzdem für die Mühe.
Gruß eddman

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige