Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

2 Fragen, combobox und Autofilter
#1
Hi,

stecke mal wieder fest und komme nicht mehr weiter. 2 Dinge habe ich:
1.

Combobox befüllen (ohne leerzeilen) leider ohne aktualisierung. Mein Code
Code:
Private Sub UserForm_initialize()
Dim Zelle as Range
TextBox3.SetFocus
TextBox3.Locked = True

ComboBox1.Clear
With Worksheet("x")
For Each Zelle In .Range(.Range("C2"), .Range("C86").End(xlDown))
If Zelle.Value <> "" Then ComboBox1.AddItem Zelle.Value
Next
End With
End Sub

Die userform wird beim öffnen der Datei automatisch gestartet. Die combobox füllt sich alles ok. Änder ich nun im Zellenbereich C2:C86 einen Wert, wird dieser nicht aktualisiert in der box. (klar, liegt am userform_initialize)
ich habe nun den gleichen code in Combobox1_change / dropbuttonclick usw eingefügt dass diese neu lädt. Leider kann ich dann keinen Wert mehr auswählen wegen dem Combobox1.Clear. Lösch ich dieses, wird die combobox trotzdem nicht aktualisiert.

Dann habe ich noch probier mit Rowsource im eigenschaftsfeld die Werte zuzuweissen. Klappt gut, jedoch nimmt er immer die werte von dem letzten aktiven tabellenblatt wenn die datei abgespeichert wird. Hat jemand eine lösung?


2. ich habe eine grosse tabelle die autogefiltert wird. Bsp:

Filter 1: zeigt mir 100 Zeilen an.
dann suche ich etwas und scrolle nach unten.
Dann benutze ich den Filter 2, dieser zeigt reduziert den Filter auf 20 Zeilen.
Problem: da ich nach unter gescrollt habe, wird mir eine leere tabelle angezeigt. ich muss manuell hochscrollen um die 20 werte zu sehen.
gibt es einen kniff wie ich nach dem Befehl die erste Zeile der neuen gefilterten Daten sehe?

Vielen Dank für die Hilfe :)
Antworten Top
#2
Wenn ein Userform gestartet wird ist ein combobox/listbox immer leer.
Combobox1.clear oder listbox1.clear ist völlig redundant.

Eine Mustrdatei hochladen wäre nicht schlecht.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • rotzi
Antworten Top
#3
Hallo,

zu 1.
wenn es mit Rowsource gut klappt, dann musst Du noch den Tabellennamen dazu nehemne.

Tabelle1!C2:C86



zu 2.
ohne Makro keine Möglichkeit, denke ich oder Du hebst die Fixierung auf
Gruß Atilla
[-] Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:
  • rotzi
Antworten Top
#4
Hi Atilla, ja das ist ne vba programmierung, ich habe es mit ActiveWindow.SmallScroll Down:=-100 probiert, geht aber nicht

bezgl. der combobox, dann sind aber die leeren zellen noch drin :(
Antworten Top
#5
Hallo 'rotzi',

zu 2.:

Code:
 Application.Goto Reference:=.Cells(2, 1), Scroll:=True
Bei .Cells Deine erste Zelle im Datenbereich


Gruß Carsten

Edit zu 1.:
Keine Ahnung was Du genau willst.
Lade bitte eine Beispieldatei hoch, denn sonst müsste ich das erst nachbauen.
[-] Folgende(r) 1 Nutzer sagt Danke an DbSam für diesen Beitrag:
  • rotzi
Antworten Top
#6
Hi Carsten,

welche Zelle meinst du? Der Autofilter ist im Zellenbereich 4 gesetzt.

das erste filter ergebnis kann zb. Zelle 7 sein, das zweite wird 7 ausblenden und 10 einblenden. Was sollte ich nun setzten? hab rumprobiert, funkt ned
Antworten Top
#7
Hier bitte Datei.

Also, knopf drücken, userform erscheint mit cmobobox, ohne leerzeilen - > Passt.
Die userform soll nicht geschlossen werden und wieder aktiviert, sie ist dauerhaft da.
nun ändere einen wert in dem A bereich, dann wird die combobox nicht aktualisiert. (klar weil die prozedur auf activate greift)
ich habe alle prozeduren mit combobox ausprobiert, sie wird nicht upgedated. irgendwo hab ich ein denkfehler.


Angehängte Dateien
.xlsm   Mappe1.xlsm (Größe: 21,04 KB / Downloads: 7)
Antworten Top
#8
Hallo rotzi,

teste zu 2.

Application.Goto reference:=Cells(1, ActiveSheet.AutoFilter.Range(xlCellTypeVisible)), Scroll:=True

Wenn kein Filter, dann kann es zu Fehlern kommen.
Gruß Atilla
Antworten Top
#9
geht leider nicht :(
Antworten Top
#10
Code:
Private Sub CommandButton1_Click()
    UserForm1.Show vbModeless
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Column = 1 Then UserForm1.ComboBox1.List = Filter([transpose(if(isblank(snb),"~",snb))], "~", 0)
End Sub

in userform


Code:
Private Sub UserForm_initialize()
   Tabelle1.UsedRange.Name = "snb"
   ComboBox1.List = Filter([transpose(if(isblank(snb),"~",snb))], "~", 0)
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste