Zeile löschen wenn Auswahl in Combobox erfolgt

15/10/2008 - 15:08 von Andreas H. | Report spam
Hallihallo !

Jetzt stehe ich fast am Ende meiner Odysee!

Ich möchte, in einer Combobox die Namen einer anderen Tabelle
darstellen (Spalte B) welches ich mit

Sub UserForm_Initialize()

With Worksheets("Mitarbieter")
mitarbeiter.List = .Range(.Cells(3,
1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1)).Value
End With

mache, leider zeigt er mir immer nur Spalte A an, benötige aber B
mit .Cells(3, 2) geht es leider nicht..

wenn mann nun einen Mitarbeiter auswàhlt un den Commandbutton drückt,
soll die komplette Zeile in der der Mitarbeiter steht gelöscht
werden..

Kann mir da jmd nochmals unter die Arme greifen !?

Danke !
 

Lesen sie die antworten

#1 stefan onken
16/10/2008 - 09:20 | Warnen spam
hallo Andreas,
On 15 Okt., 15:08, "Andreas H." wrote:
Hallihallo !

Jetzt stehe ich fast  am Ende meiner Odysee!

Ich möchte, in einer Combobox die Namen einer anderen Tabelle
darstellen (Spalte B) welches ich mit

Sub UserForm_Initialize()

With Worksheets("Mitarbieter")
        mitarbeiter.List = .Range(.Cells(3,
1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1)).Value
    End With

mache, leider zeigt er mir immer nur Spalte A an, benötige aber B
mit .Cells(3, 2) geht es leider nicht..



ich nehme an, hier ist erstmal ein Tippfehler
Mitarbieter -> Mitarbeiter

die Angabe für List lautet prinzipiell
Range(Cells(zeile,spalte),Cells(zeile,spalte))

wenn du hier Spalte B (=2) haben willst, musst du beide spalte
anpassen:

mitarbeiter.List = .Range(.Cells(3,2), _
.Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 2)).Value

oder auch

mitarbeiter.List = .Range(.Cells(3, "B"), _
.Cells(.Cells(Rows.Count, 1).End(xlUp).Row, "B")).Value

der Unterstrich _ dient hier nur der besseren Darstellung.

wenn mann nun einen Mitarbeiter auswàhlt un den Commandbutton drückt,
soll die komplette Zeile in der der Mitarbeiter steht gelöscht
werden..



With Worksheets("Mitarbeiter")
.Rows(3 + mitarbeiter.ListIndex).EntireRow.Delete
End With
mitarbeiter.RemoveItem mitarbeiter.ListIndex

Listindex gibt den Index des ausgewàhlten Eintrages zurück, der Index
beginnt bei 0.
Deine Tabelle beginnt in Spalte 3, deshalb 3 + mitarbeiter.ListIndex

Gruß
stefan

Kann mir da jmd nochmals unter die Arme greifen !?

Danke !

Ähnliche fragen