Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1096to1100
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

Daten in Combobox einlesen und sortieren

Daten in Combobox einlesen und sortieren
ray
Hallo,
dank der wirklich guten Leute hier, habe ich für mein Problem eine Lösung bekommen:
'#### ComboBox mit Mänglen füllen START ####
Dim wbk As Workbook
Dim wks As Worksheet
Dim vRow As Variant
Dim iRow As Integer, iRowT As Integer, iRowL As Integer
Application.ScreenUpdating = False
Set wbk = Workbooks.Open("E:\daten\mängelliste.xls")
Set wks = wbk.Sheets(1)
iRowL = Cells(Rows.Count, 8).End(xlUp).Row
Workbooks.Add
For iRow = 1 To iRowL
vRow = Application.Match(wks.Cells(iRow, 8).Value, Columns(1), 0)
If IsError(vRow) Then
iRowT = iRowT + 1
Cells(iRowT, 1).Value = wks.Cells(iRow, 8).Value
End If
Next iRow
Range("a1").CurrentRegion.Sort _
key1:=Range("a1"), order1:=xlAscending, Header:=xlNo
With cbMängelliste
.List = Range("A1").CurrentRegion.Value
If .ListCount > 0 Then .ListIndex = 0
End With
ActiveWorkbook.Close savechanges:=False
wbk.Close
Set wbk = Nothing
Set wks = Nothing
Application.ScreenUpdating = True
'#### ComboBox mit Mänglen füllen ENDE ####
Damit werden mir alle Eintrage derSpalte 8 alphabetisch sortiert und in der ComboBox angezeigt.
Jetzt möchte ich aber, dass nur die Zeile sortiert und angezeigt werden, bei denen in Spalte 3 der Text "111" steht.
Ich bekomme das nicht hingefummelt....
Hat jemand eine Idee?
Viele Grüße aus Hamburg diesig und viiiiiiiel zu kalt...
Ray

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

Betreff
Benutzer
Anzeige
AW: Daten in Combobox einlesen und sortieren
31.08.2009 10:50:47
MichaV
Hei,
ungetestet:
For iRow = 1 To iRowL
if wks.Cells(iRow, 3).Value="111" then
vRow = Application.Match(wks.Cells(iRow, 8).Value, Columns(1), 0)
If IsError(vRow) Then
iRowT = iRowT + 1
Cells(iRowT, 1).Value = wks.Cells(iRow, 8).Value
End If
endif
Next iRow
Gruß- Micha
(herbstlich, 13 Grad und regnerisch)
perfekte Lösung - respekt MichaV
31.08.2009 11:54:34
ray
Vielen Dank
bin zu zu blöd? Es hackt...
31.08.2009 12:30:18
ray
Hi,
Der code funzt, wenn er alleine läuft. Baue ich ihn jetzt aber in Deinen Code von gestern ein, geht es nicht mehr. (Ich habe 2 ComboBoxen. Eine soll mit allem gefüllt werden und die andere nur die mit 111)
'#### ComboBox mit ALLEN Mänglen füllen START ####
Dim wbk As Workbook
Dim wks As Worksheet
Dim vRow As Variant
Dim iRow As Integer, iRowT As Integer, iRowL As Integer
Application.ScreenUpdating = False
Set wbk = Workbooks.Open("F:\daten\mängelliste.xls")
Set wks = wbk.Sheets(1)
iRowL = Cells(Rows.Count, 8).End(xlUp).Row
Workbooks.Add
For iRow = 1 To iRowL
vRow = Application.Match(wks.Cells(iRow, 8).Value, Columns(1), 0)
If IsError(vRow) Then
iRowT = iRowT + 1
Cells(iRowT, 1).Value = wks.Cells(iRow, 8).Value
End If
Next iRow
Range("a1").CurrentRegion.Sort _
key1:=Range("a1"), order1:=xlAscending, Header:=xlNo
With cbMängelliste
.List = Range("A1").CurrentRegion.Value
If .ListCount > 0 Then .ListIndex = 0
End With
'Set wbk = Nothing
'Set wks = Nothing
'jetzt nochmal nur mit WhgNr
Set wks = wbk.Sheets(1)
iRowL = Cells(Rows.Count, 8).End(xlUp).Row
Workbooks.Add
For iRow = 1 To iRowL
If wks.Cells(iRow, 3).Value = "111" Then
vRow = Application.Match(wks.Cells(iRow, 8).Value, Columns(1), 0)
If IsError(vRow) Then
iRowT = iRowT + 1
Cells(iRowT, 1).Value = wks.Cells(iRow, 8).Value
End If
End If
Next iRow
Range("a1").CurrentRegion.Sort _
key1:=Range("a1"), order1:=xlAscending, Header:=xlNo
With cbMängelAlle
.List = Range("A1").CurrentRegion.Value
If .ListCount > 0 Then .ListIndex = 0
End With
ActiveWorkbook.Close savechanges:=False
wbk.Close
Set wbk = Nothing
Set wks = Nothing
Application.ScreenUpdating = True
'#### ComboBox mit Mänglen füllen ENDE ####
Was mach ich falsch?
Anzeige
@Micha
02.09.2009 08:08:35
ray
Hi Micha, danke, dass Du Dich noch mal gemeldet hast. Hatte Dir schon ne Email geschickt, die wohl nicht mehr funzt...
Stuttgart? Schweden? Norwegen? Ich seh bie Dir nicht mehr durch
Grüße aus HH, fahre gleich zu dem Kniearzt von St-Pauli bei Sonnenschein und 18 Grad.
Ray
AW: @Micha
02.09.2009 08:58:53
MichaV
funzt noch, aber kann ich mir mal 2..3 Tage Zeit lassen mit der Antwort?!
Gruss- Micha
AW: @Micha
02.09.2009 12:11:58
ray
Hey Micha, alles ist gut.
Bei uns im Office hab ich die Order gegeben, das Emails grundsätzlich innerhalb von 1 Stunde erledigt sein müssen und innerhalb von 10 min eine Vorantwort erhalten. Dafür das nicht virtuelle Post 14 Tage liegen...
Ich warte auf Deine Antwort, bin schon ganz gespannt.
Viele Grüße. (Bin beim KnieGuru mangels Versichertenstatus nicht drangekommen, obwohl ich Termin hatte und wurde vom Assis behandelt...)
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige