Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1280to1284
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

Beispiel: Popup-Kalender nur mit Bordmitteln

Beispiel: Popup-Kalender nur mit Bordmitteln
02.10.2012 15:39:45
Nico
Ich habe mal etwas Zeit in einen Popup-Kalender ohne zusätzliche Steuerelemente
(nur MS Forms 2.0) investiert. Das Ergebnis würde ich hier gerne zur Diskussion stellen.
https://www.herber.de/bbs/user/81958.xlsm
Für Verbesserungsvorschläge aller Art bin ich offen.
Vor längerer Zeit habe ich mir mal einen ähnlichen Kalender in Access gebastelt.
Jetzt benötigte ich einen Kalender für Excel, die Verwendung von zusätzlichen
Steuerelementen schied aber aus. Daher habe ich den Kalender nach Excel portiert.
Gruß
Nico

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beispiel: Popup-Kalender nur mit Bordmitteln
02.10.2012 18:51:24
Peter
Hallo Nico,
ich habe mir den Kalender mal angeschaut. Da steckt ja extrem viel dahinter! Die vielen Feiertage - aus ganz Europa oder der ganzen Welt? - wer braucht das eigentlich? Die Feiertage von Deutschland und einem ausgewählten Bundesland natürlich schon. Die eigentlichen Probleme in der Praxis sind m. E.
1. Auf welche (möglichst einfache) Weise kriegt man das Kalendermodul mit allem was dazugehört
in ein
a) neu zu kreierendes Arbeitsblatt und
b) in ein bereits bestehendes Arbeitsblatt
2. Das Ganze lohnt doch nur, wenn in einer Tabelle nicht nur einige wenige Kalenderdaten (die man
auch mit der Hand eintragen kann), sondern viele eingetragen werden müssen. Und in diesem Fall
sollte ein einziger Klick auf den Kalender genügen, um ein Einzel-Datum an die richtige Stelle
in dem Arbeitsblatt einzutragen, bzw. zwei Klicks, um einen Zeitraum mit zwei Kalenderdaten
(von ... bis) einzutragen.
So schön der von Dir vorgestellte Kalender ist, ich muss hier zunächst ein bestimmtes Feld auf dem Blatt auswählen, dann den Kalender einschalten, dann das Datum wählen (mit Doppelklick oder "o.k."). Danach ist der Kalender erst mal weg und für den Eintrag des nächsten Datums beginnt das Spiel von neuem. Daneben muss man zwischen den einzelnen Monaten und Jahren hin- und herschalten. Das alles kostet viel Zeit, die den gewünschten Zeitvorteil, das schnelle Eintragen eines Datums, gewissermaßen auffrist.
Übrigens bist Du nicht allein, der nach einer effizienten Lösung des Problems "Kalender" sucht. Ich habe auch einen entwickelt und werde diesen in Kürze vorstellen. Mir fehlt jetzt nur noch die Bedienungsanleitung dazu. Wenn die fertig ist, stelle ich das Ganze ins Netz.
Mit freundlichem Gruß
Peter Kloßek

Anzeige
AW: Beispiel: Popup-Kalender nur mit Bordmitteln
04.10.2012 08:46:15
Nico
Hallo Peter,
vielen Dank für Deine Anmerkungen.
zu 1.)
Es müssen das Formular und die beiden Klassen in eine neue Arbeitsmappe übernommen werden.
Aus dem Modul "modKalender" wird nur die globale Variable und und die Typendeklaration
benötigt. Der Rest ist ja nur für den Aufruf und kann natürlich auch anders gelöst werden.
zu 2.)
Ab wann es lohnt, kommt wohl auf den Verwendungszweck an. Ich benötige halt einen Ersatz
für die beiden MS-Kalender, der ohne zusätzliche Steuerelemente auskommt.
Es geht mir im meinem Fall auch nicht in erster Linie um das schnelle eintragen eines
Datums oder Zeitraums. Es geht wie schon gesagt, um den Ersatz der beiden MS-Kalender.
Die Feiertage sind dann nur der nächste logische Schritt. Ob nun auch die "unwichtigen"
Gedenktage angezeigt werden sollten oder nicht, ist natürlich auch Geschmackssache.
Da sie aber schon mal da sind... :-)
Wie ich gesehen habe, hast Du Deinen Entwurf schon hochgeladen. Den werde ich mir gleich mal ansehen.
Liebe Grüße
Nico

Anzeige
Meine Lösung: Kalender_xxl
03.10.2012 19:18:31
Peter
Guten Abend Nico,
hier nun wie versprochen meine Lösung. Dabei wird der Kalender nicht als Add-In in die zu bearbeitende Arbeitsmappe aufgenommen, sondern als eigenständige Datei zugeschaltet. Das von Dir verwendete Add-In ist immerhin über 150 KB fett und man müßte es ja auch in allen alten Arbeitsmappen, in die Kalenderdaten einzugeben sind, integrieren.
Bitte, schau Dir mal meine Lösung an. Benutzerhinweise liegen als WORD-Dokument bei. Adressat dieser ist ein anonymer Endbenutzer (mit geringer Excel-Kenntnis) und nicht etwa Mitglieder des Forums. Deshalb hier auch die Anrede "Sie". Ich habe selbst mal einige Beispiele erstellt und sie beigelegt. Ein wenig aufwendig ist die Aufrüstung von alten Dateien; dies ist aber pro Datei nur ein einmaliger Aufwand.
Bevor ich meinen Vorschlag dem Forum allgemein anbiete, würde ich gerne Deine Meinung hören.
Vielen Dank.
Mit freundlichem Gruß
Peter Kloßek
https://www.herber.de/bbs/user/81975.zip

Anzeige
AW: Beispiel: Popup-Kalender nur mit Bordmitteln
04.10.2012 14:23:36
Nico
Hallo Peter,
habe leider noch nicht die Zeit gefunden, alles im Ganzen zu testen. Muss auch mal arbeiten :-)
Von der Idee her finde ich das ganze schon recht interessant.
Was mir aber aufgefallen ist:
  • Ist es nötig die Cursor-Tasten excelweit mit "Application.OnKey" ins leere zu verbiegen?

  • Da ich die Dateien nicht in "Eigene Dateien" kopiert habe, läuft das Makro zum Öffnen der Kalender-Datei ins leere - Tipp: Workbooks.Open ThisWorkbook.Path & "\Kalender_xxl.xlsm"... (sofern die Kalender-Datei im gleichen Verzeichnis liegt)

  • Was rechnest Du da alles auf dem Kalender-Sheet? Ich habe es mir noch nicht genau angesehen, aber
    ich bin etwas verwirrt wegen der ganzen ausgeblendeten Zeilen und weißen Datumswerten...
    Ist das wirklich alles nötig? :-)

  • Ein einfaches Beispiel für einen Kalender direkt im Sheet habe ich hier mal hochgeladen:
    https://www.herber.de/bbs/user/81986.xlsx
    Ich werde mich aber noch weiter in Deine Lösung einarbeiten...
    Gruß
    Nico

    Anzeige
    AW: Beispiel: Popup-Kalender nur mit Bordmitteln
    04.10.2012 23:11:00
    Peter
    Hallo Nico,
    die Deaktivierung der RETURN-Taste und der Pfeil-Tasten bewirkt, dass die automatische Befüllung der Spalten in der Eingabedatei zuverlässig erfolgt. Der Benutzer kann durch Drücken der RETURN-Taste oder durch Drücken einer Pfeil-Taste die Zellposition nicht ändern. Sobald der Kalender geschlossen wird, werden die Tastenfunktionen auf ihren Ursprung zurückgesetzt. Was meinst Du mit "Excel-weit"? Das heißt doch wohl nicht etwa, dass sämtliche Excel-Benutzer auf dem Server meine speziellen Änderungen mitkriegen? - zum Beispiel in Netzwerken.
    Mit dem Laden der Kalenderdatei läuft man tatsächlich dann ins Leere, wenn die Eingabedatei direkt aus dem WINDOWS-Explorer per Doppelklick gestartet wird. Richtig wäre folgendes Vorgehen:
    1. Excel-Programm laden
    2. Vorhandene andere Excel-Anwendungen schließen
    3. Über die Schaltfläche "Office" und "Öffnen" die Eingabedatei laden.
    4. Über den Makro-Button die Kalenderdatei zuschalten
    (dies geht wegen des Kennwort-Schutzes nicht über Schaltfläche "Office" und "Öffnen")
    Grundvoraussetzung ist immer, dass die Eingabedatei und die Kalenderdatei auf dem selben Pfad liegen. Indem die Eingabedatei geladen wird, stellt Excel automatisch diesen Pfad ein. Danach soll auch keine andere Anwendung geladen werden (was möglicherweise eine Umstellung des Pfades verursacht). Bei der Benutzung der Kalenderdatei dürfen immer nur 2 Dateien im Speicher stehen. Erst wenn die Kalenderdatei geschlossen ist, kann die Eingabedatei wie jede andere Datei verwendet werden. Von der praktischen Seite ist es aber auch nicht erforderlich, während der Kalenderdaten-Eingabe gleichzeitig mit anderen Dateien zu hantieren. Auf diese Regeln sollte ich in den Benutzerhinweisen noch deutlicher aufmerksam machen, und deshalb vielen Dank für Deinen Hinweis.
    Die Kalenderdatei ist absolut Marke Eigenbau. Bestimmt würdest Du als VBA-Profi vieles anders machen. Ich weiß nur zu gut, dass mir selbst noch viel theoretisches Rüstzeug zu VBA fehlt. Ich glaube jedoch, dass es ganz wesentlich auf die praktische Anwendung des End-Benutzers ankommt. Der interessiert sich ohnehin nicht für die Formeln, die ich im Kalenderblatt verwende, und schon gar nicht für die Makros. Für ihn ist ganz einfach wichtig, dass es funktioniert.
    Die Formeln in den ausgeblendeten Zeilen bewirken den Schutz der Zellen bis zum Datum "Von", dadurch kann als "Bis" kein geringeres Datum eingegeben werden. Weiterhin werden die Wochenzuordnung und die Übergänge von einem Monat auf den nächsten und vom 1. Jahr auf das 2. Jahr gesteuert. So gelingt es mir, den Kalender auf die folgenden Jahre anzupassen, indem lediglich das Anfangsdatum des 1. Jahres eingegeben werden muss. Die in weiß formatierten Einträge sorgen für die Auswahl der Feiertage (und deren Kennzeichnung in rot und den Schutz) auf dem sichtbaren Kalender. Für den End-Anwender ist das alles nicht sichtbar und der Blattschutz wird dann im Echtbetrieb mit Kennwort verstärkt.
    Ich habe heute noch was anderes festgestellt: Die Einfügung von Makro-Schaltflächen in die Symbolleiste für den Schnellzugriff sind für diese Anwendung nur sehr bedingt brauchbar, weil sie fest dort eingefügt werden und immer erscheinen, egal welche Datei man aufruft. Man kann sie aber nur mit einer einzigen Eingabedatei verwenden.
    Ich freue mich, dass Du Dich weiter in diese Sache vertiefen willst und bist mir ein sehr willkommener Diskussionspartner.
    Mit freundlichem Gruß
    Peter Kloßek

    Anzeige
    AW: Beispiel: Popup-Kalender nur mit Bordmitteln
    05.10.2012 15:28:41
    Nico
    Hallo Peter,
    ich meine nicht alle User auf dem Server. Nur halt sämtliche offenen Arbeitsmappen.
    Wenn ich als Tastaturjunkie nebenbei noch ein paar weitere Dateien offen habe, kann
    ich in diesen nicht mehr mit den Cursor-Tasten navigieren. :-(
    Ok, ich soll auch keine anderen Dateien neben dem Kalender auf haben, nur kommt das
    schon öfters vor...
    Liebe Grüße
    Nico

    AW: Beispiel: Popup-Kalender nur mit Bordmitteln
    05.10.2012 18:20:53
    Peter
    Guten Abend Nico,
    entschuldige, ich bin noch von der alten Garde: Aufgeräumter Schreibtisch und aufgeräumte Arbeitsfläche in Excel; ich habe i. d. R. nur diejenigen Dateien geladen, die auch momentan gebraucht werden. Selbstverständlich gibt es auch Leute mit einer anderen Arbeitsweise. Deinem Problem kann ganz einfach abgeholfen werden: Um die Kalenderfunktionen zu verwenden, öffnest Du einfach eine weitere Excel-Sitzung. In der ersten Excel-Sitzung kannst Du dann so viele Dateien laden wie Du willst und der Wechsel zwischen den beiden Sitzungen ist in der Task-Leiste problemlos möglich. Die Deaktivierung der Tasten wirkt sich dabei nur in der Sitzung aus, in welcher der Kalender geladen wird. In der anderen Sitzung kann man ganz normal navigieren (habe ich gerade ausprobiert).
    Mit freundlichem Gruß
    Peter Kloßek

    Anzeige
    AW: Beispiel: Popup-Kalender nur mit Bordmitteln
    08.10.2012 21:30:34
    Nico
    Hallo Peter,
    ich meine nicht alle User auf dem Server. Nur halt sämtliche offenen Arbeitsmappen.
    Wenn ich als Tastaturjunkie nebenbei noch ein paar weitere Dateien offen habe, kann
    ich in diesen nicht mehr mit den Cursor-Tasten navigieren. :-(
    Ok, ich soll auch keine anderen Dateien neben dem Kalender auf haben, nur kommt das
    schon öfters vor...
    Liebe Grüße
    Nico

    AW: Beispiel: Popup-Kalender nur mit Bordmitteln
    11.10.2012 04:00:36
    Nico
    Hallo Peter,
    ich meine nicht alle User auf dem Server. Nur halt sämtliche offenen Arbeitsmappen.
    Wenn ich als Tastaturjunkie nebenbei noch ein paar weitere Dateien offen habe, kann
    ich in diesen nicht mehr mit den Cursor-Tasten navigieren. :-(
    Ok, ich soll auch keine anderen Dateien neben dem Kalender auf haben, nur kommt das
    schon öfters vor...
    Liebe Grüße
    Nico
    Anzeige

    300 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige