Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1860to1864
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
VBA Sortieren Blatt und Listbox
15.12.2021 17:21:40
Peer
Hallo zusammen.
Mein Ziel ist es, eine benutzerfreundliche schnelle Eingabe des Urlaubs in einen Jahreskalender einzufügen.
Ich habe einen Jahreskalender, bei dem zuzüglich des Datums auch noch die Urlaubstage, die ich per UF anlege, eintragen soll. Dabei soll er dem Beginn und das Ende in des jeweiligen Datums in Spalte C den Text "Urlaub" schreiben. So mein Plan.
Ich hänge seit gestern an einer Lösung von vorerst zwei Problemen.
Erstens
Ich habe in meiner Mappe 12 Monatskalender und ein Blatt Urlaub und ein Blatt Feiertage.
Im Blatt Urlaub trage ich in den Spalten A den Beginn und B das Ende des Urlaubs ein. Spalte C errechnet die Nettoarbeitstage zwischen den beiden Spalten unter Berücksichtigung der Feiertage.
Mein Grundgedanke war, weitere Einträge jeweils unter den letzten Eintrag anzufügen, den ich über frm_Urlaub eingebe.
Die Einträge sind (erstmal absichtlich) unsortiert.
Nun möchte ich beim Öffnen einer UF frm_Urlaub (im Blatt Urlaub) beim Öffnen in der ListBox lst_Urlaub jene Einträge gleich sortiert haben und am besten das Sortierte zurückschreiben.
Aber der Debugger bleibt bei

.Apply
hängen.
Zweitens,
würde ich gern die Einträge in der UF mit Klick auf einen Listeneintrag bearbeiten und zeilenselektiv aktualisieren. Hier wird aber in den TextBoxen nur eine Zahl dargestellt, statt des Datums aus der ListBox.
Ich befürchte, dass die ursprünglichen Zellenformate im Blatt nicht in die ListBox übertragen wurden und nun Text sind. Oder die TextBoxen bekommen ja von Haus aus das Textformat. Nur habe ich bis hierher kein Möglichkeit gefunden, das Datumsformat auch auf die TextBoxen zu übertragen. Aber ich brauche in den TextBoxen das Datum um damit weiter zu rechnen. Dabei möchte ich schon in der UF die Nettoarbeitstage aus den beiden Textboxen ermitteln, damit der Nutzer gleich die Anzahl der Tage bei der Eingabe erkennt.
Vielleicht kann mir jemand aus der Runde einen Tipp, egal für welches Problem geben?
Ich bedanke mich schon ein mal im Voraus für eure Unterstützung.
Beispielmappe dabei
https://www.herber.de/bbs/user/149829.xlsm
Gruß
Peer

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Sortieren Blatt und Listbox
15.12.2021 20:16:05
Alwin
Hallo Peer,
Die Textboxen mit Datumsformat so:

txt_UrlaubBeginn = CDate(lst_Urlaub.List(lst_Urlaub.ListIndex, 0))
txt_UrlaubEnde = CDate(lst_Urlaub.List(lst_Urlaub.ListIndex, 1))
Was du da baust ist maximal zum Lernen geeignet. Um den Urlaub mehrerer Mitarbeiter zu erfassen, wird das so wahrscheinlich nichts. Besser wäre eine Tabelle Spalte A den Namen, Spalte B Urlaubstage im Jahr, Spalte C Resturlaub aus Vorjahr und Spalte D Sonderurlaub. Ab Spalte E je nach Bedarf die Beantragten Urlaubsbereiche. In Spalten weiteren Spalten die Summen und Zwischensummen wie z.B. bereits erhalten und/oder wieviel Urlaub noch übrig etc. Das was ich da geschrieben habe ist auch nur eine Grobbeschreibung, wie man das machen könnte.
Gruß Uwe
Anzeige
AW: VBA Sortieren Blatt und Listbox
15.12.2021 20:26:22
Peer
Guten Abend Uwe.
Vielen Dank für deine schnelle Rückmeldung.
Stimmt, an CDate hatte ich zwar gedacht, wußte nicht, wo ich es ansetze. Danke für den Anstoß.
Ich muss zu dem Urlaubsprocedere noch erwähnen, das es hier nur für einen Benutzer vorgesehen ist. Mehrere sind nicht geplant. Es geht mir darum, meinen geplanten Urlaub in den Kalender statt über jeden Tag einzeln über eine Schleife als Batch einzutragen.
LG
Peer
AW: VBA Sortieren Blatt und Listbox
16.12.2021 02:52:06
Oberschlumpf
Hi Peer,
ich hab deinen Sortier-Code ausgetauscht und die richtige Datumsanzeige in den txt-Boxen eingebaut.
https://www.herber.de/bbs/user/149834.xlsm
Die Tabelle selbst wird erst bei Klick auf den Urlaubs-Button sortiert.
Dann werden die sortierten Daten in die Listbox übertragen.
Ach ja, du hattest als RowSource fix bis Zeile 120 in die Listbox eingetragen. Ich hab das bis auf die letzte, benutzte Datenzeile korrigiert.
Deine anderen Fragen hab ich noch nicht bearbeitet, da ich doch noch müder bin als ich dachte :-)
Aber jetzt kannst du ja erst mal wieder selbst ausprobieren oder auch wieder die anderen Helfer fragen.
Hilfts?
Ciao
Thorsten
Anzeige
AW: VBA Sortieren Blatt und Listbox
16.12.2021 16:09:21
Peer
Hallo Thorsten.
Vielen Dank für deine späte Antwort und dein Überwinden der Müdigkeit. ;-)
Gestern Abend war meine Grenze auch erreicht, wenn man die letzten Tage nur am PC mit HomeOffice und zusätzlich mit diesem Projekt beschäftigt ist.
Wird Zeit, daß man wieder mal die Welt draußen kennen lernt.
Die Variante mit der letzten Zeile hatte ich meinen Gedanken gehabt, deshalb auch die Deklaration der Variable. Nur hat bei mir das Ergebnis nicht so funktioniert wie erhofft. Dank dir funktioniert es jetzt. Danke dafür.
Zum Thema Sortierung sind meine Ansätze gar nicht so verschieden wie deine. Das gibt mir Hoffnung.
Der Unterschied ist, daß es bei dir funktioniert. ;-)
Wenn die Einträge sich in einer Tabelle in anderen Zellen stehen würden und ich die letzte Zeile auslesen lassen will, muss ich bei

LoLetzte = IIf(IsEmpty(.Cells(.Rows.Count, 1)), .Cells(.Rows.Count, 1).End(xlUp).Row, .Rows.Count)
nur die Angaben

LoLetzte = IIf(IsEmpty(.Cells(beginnendeZeile, beginnendeSpalte)), .Cells(endendeZeile, endendeSpalte).End(xlUp).Row, .Rows.Count)
anpassen, oder?
Gruß
Peer
Anzeige
AW: VBA Sortieren Blatt und Listbox
16.12.2021 16:12:50
Oberschlumpf
Hi Peer,
sorry...aber...
Wenn die Einträge sich in einer Tabelle in anderen Zellen stehen würden
wasn das für n Deutsch?
Ich versteh nix.
Ciao
Thorsten
AW: VBA Sortieren Blatt und Listbox
16.12.2021 16:56:02
Peer
Sorry Thorsten.
Klingt wirklich doof.
Ich meinte, wenn die Einträge nicht bei Spalte A1 anfangen würden sondern bei D5?
AW: VBA Sortieren Blatt und Listbox
18.12.2021 08:06:52
Oberschlumpf
Hi Peer
zeig doch bitte per Upload eine Bsp-Datei, welche - die selben Zeilen/Spalten - benutzt, wie dein Original.
Dann könnte es einfacher sein, passenden Code zu liefern.
Ciao
Thorsten
AW: VBA Sortieren Blatt und Listbox
18.12.2021 17:33:34
Peer
Guten Abend Thorsten.
Gern schicke ich die eine Beispieldatei, bei der ich die Werte in der Tabelle "Urlaub" verschoben habe.
Ich hoffe, du kannst erkennen, was ich gemeint habe.
https://www.herber.de/bbs/user/149891.xlsm
Ich inzwischen noch etwas hinzugefügt zur vorherigen Datei. Das Grundgerüst ist aber unverändert.
Gruß
Peer
Anzeige

70 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige