ToDo-Liste mit Makros?
#1
Information 
Hallo zusammen,

ich bin ein absoluter Neuling auf dem Gebiet und hoffe, dass ich mein Problem einigermaßen verständlich beschreibe:

Ich habe den Auftrag bekommen, eine Art "ToDo-Liste" mit Excel Makros zu erstellen. Ziel ist es, dass man via Click auf einen dafür angelegten Button im Excel-Arbeitsblatt zu einem Userform gelangt, auf dem sich bestimmte Einträge machen lassen (z.B. Größe, Gewicht, Datum, etc.). Wenn man dann alle Eintragungen gemacht hat, kann man dann ins Arbeitsblatt zurückkehren - und die Eintragungen im UserForm sollen gespeichert werden.

Die Struktur sollte als ungefähr so sein:
Produkt 1: Button im Arbeitsblatt > öffnet Userform -> Eintragungen zu Produkt 1 (Größe, Gewicht, etc.)
Produkt 2: Button im Arbeitsblatt > öffnet Userform -> Eintragungen zu Produkt 2 (Größe, Gewicht, etc.)

Ziel ist es, den immer wiederkehrenden Prozess der Datenerfassung zu unseren Produkten so zu vereinfachen und alle Daten in einem Arbeitsblatt möglichst übersichtlich beieinander zu haben.

Mein Problem ist folgendes: Ich habe sowohl ein generisches UserForm erstellt, das alle relevanten Aspekte des Produkts abfragt, als auch eine Schaltfläche im Arbeitsblatt installiert. Ich kann auch Eintragungen im UserForm machen, die zumindest für den Zeitraum der aktuellen Session gespeichert bleiben. Wenn ich Excel nun aber schließe, gehen (trotz "Speichern") die Angaben im UserForm verloren. Gibt es eine Möglichkeit, diese zu speichern? Bzw. ist unsere Idee überhaupt praktikabel?

Liebe Grüße und besten Dank

schnablu
Antworten Top
#2
Moin,

schon die Aufgabenstellung scheint mir recht unreflektiert. Warum sollte der Weg (Makro! UserForm!!) teil der Lösung sein? Gibt es irgendeinen stichhaltigen Grund, die benötigten Informationen nicht direkt in einer Tabelle zu erfassen? Excel bringt ja ein UserInterface "Tabellenblatt" mit, das ist milliardenfach getestet und funktionell recht ausgereift, in wiefern sollte da eine selbst "gebastelte" Lösung überlegen sein?
Oder steht der Wunsch im Vordergrund, so zu tun, als hätte man eine ziemlich professionelle Lösung erarbeitet?

Viele Grüße
derHöpp
[-] Folgende(r) 1 Nutzer sagt Danke an derHoepp für diesen Beitrag:
  • schnablu
Antworten Top
#3
Hallo Schnablu,

Du gibst die Daten ins Userform ein. Und dann?
Was passiert mit den Daten?

Ich würde erwarten, dass Du sie dann irgendwo in dein Blatt schreibst, um sie später auszuwerten.
Entsprechend kannst Du beim Initialisieren des Userforms den letzten Datensatz aus dem Blatt ins Userform schreiben.

Gruß,
Lutz
[-] Folgende(r) 1 Nutzer sagt Danke an Lutz Fricke für diesen Beitrag:
  • schnablu
Antworten Top
#4
Also, die Idee war, das alles möglichst übersichtlich zu halten: Wir müssen nämlich bestimmte Daten zu unseren Produkten, die sich laufend vermehren, immer wieder erfassen. Wenn man das alles in Arbeitsblätter schreiben würde, hätte man irgendwann entweder eine enorm große oder sehr viele Tabellen. Um das zu vermeiden, dachten wir uns, es wäre schön, hinter jedem Tabelleneintrag (Produkt 1, 2, 3, 4, etc.) eine Schaltfläche mit entsprechendem PopUp (eben das UserForm) setzen zu können, und die Daten einfach dort zu hinterlegen. So würde dieser Teil so lange schön ordentlich hinter seiner Schaltfläche versteckt bleiben, bis man ihn abruft. Noch dazu könnte man dann das in seinen Abfragen generisch auf alle Produkte abgestimmte UserForm immer wieder verwenden.

Da das nicht meine Idee war (bin Praktikant), habe ich natürlich erstmal selbst ein bisschen recherchiert: Nun scheint es mir so, dass ein UserForm eigentlich nur als eine Art Eingabemaske für Daten verwendet werden kann, für die man dann definiert, wo im Arbeitsblatt sie hinterlegt werden sollen. Für unsere Idee müssten die Daten aber IM UserForm selbst hinterlegt werden, das heißt, es müsste sich selbst umprogrammieren? Und das geht vermutlich nicht - oder doch? 

Mir wäre schon damit geholfen, wenn mir jemand eine Erklärung dafür geben könnte, warum unsere Idee nicht praktikabel ist. Den Vorwurf "unreflektiert" lasse ich, was mich betrifft, uneingeschränkt gelten: Ich frag ja euch Profis, um das Reflexionsniveau möglichst zu erhöhen! 19
[-] Folgende(r) 1 Nutzer sagt Danke an schnablu für diesen Beitrag:
  • derHoepp
Antworten Top
#5
Hallo,

UserFormen leben nur zur Laufzeit des Programms und verlieren danach alles, was nicht Einstellung eines Steuerelements ist. Die Daten müssen also ohnehin irgendwo gespeichert, geladen, aufbereitet und wieder gespeichert werden. In Excel ist die gewöhnliche Speicherform eine Tabelle. Eine einzelne Tabelle bietet platz für 1.048.575 Datensätze. Ein Datensatz kann dabei theoretisch 16.384 Merkmale speichern. Das sollte für gewöhnlich ausreichen. Eine Tabelle lässt sich in Excel in vielfältiger Weise auswerten, filtern, anders darstellen. Eine UserForm, die auf Excel-Tabellen aufbaut ist zunächst einmal eine zusätzliche Mensch-Maschine-Schnittstelle, die der /die ProgrammiererIn mit Leben und Logik füllen muss. Meistens werden dabei bereits vorhandene Excelfunktionen umständlich und fehlerhaft nachprogrammiert.

Die Idee ist aus meiner Sicht also nicht praktikabel, weil der einfachste und effektivste Weg umgangen wird um durch eine Simulation eines "echten" Verwaltungsprogramms ersetzt zu werden. Sinnvoller wäre es einfach alle Informationen in +eine+ Tabelle untereinander zu erfassen. Erledigte Punkte erhalten dann einfach ein erledigt-Datum und können weggefiltert werden.

Viele Grüße
derHöpp

PS: Für konkretere Hinweise wäre eine konkretere Beschreibung der Datenstrukturen hilfreich.
[-] Folgende(r) 1 Nutzer sagt Danke an derHoepp für diesen Beitrag:
  • schnablu
Antworten Top
#6
Moin

Ganz anderer Ansatz:
https://support.microsoft.com/de-de/offi...3163315308
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

[-] Folgende(r) 2 Nutzer sagen Danke an shift-del für diesen Beitrag:
  • knobbi38, schnablu
Antworten Top
#7
Hallo schnablu,

die Idee ist deshalb nicht praktikabel, weil man die Daten persistent abspeichern muß, und das geht nicht in einer Userform, sondern nur in einer Tabelle. Diese Tabelle stellt dann im weitesten Sinne eine Datenbank dar und die Daten sollten also nach einem entsprechenden Datenmodell organisiert und strukturiert sein. Das gilt für Datenbanken allgemein und auch für Excel, damit mit diese Daten später auch vernünftig gearbeitet werden kann.

Dazu wäre es notwendig, zunächst ein entsprechendes Datenmodell zu entwickeln und sich dann Gedanken darüber zu machen, mit welchem "Werkzeug" diese Anwendung - Excel oder gleich eine richtige Datenbank - realisiert werden könnte bzw. sollte.

Mal gerade eben wird so nicht funktionieren, schon gar nicht, wenn es später gewerblich und produktiv eingesetzt werden soll. Anstatt einem Praktikanten so eine Aufgabe zu übertragen, wäre es wohl angebrachter, hier gleich einen Auftrag für einen Freelancer auszuloben.

Gruß Knobbi38
[-] Folgende(r) 1 Nutzer sagt Danke an knobbi38 für diesen Beitrag:
  • schnablu
Antworten Top
#8
Hi,
auch wenn ich mich damit mal wieder weit rauslehne und dies keinerlei Hilfe ist:
Wie ich dies seit Jahrzehnten verabscheue. Da will ein Chef eine Eierlegende Wollmilchsau ist aber zu knausrig, jemanden damit zu beauftragen, der weiß worum es geht.
Man müsste die Anforderungen untersuchen, ein Konzept entwickeln und überlegen, welche Anwendung überhaupt dafür geeignet ist (scheint eher Datenbank lastig zu sein - aber das ist geraten)

Und dann wird ein Praktikant daran gesetzt, der nichts kostet und soll mal schauen wie weit er kommt, indem er im Netz Leute versucht zu finden, die dem Chef die Kröten sparen.
Vielleicht noch ein wenig KI hinzumischen - die völlig verblödet dann irgendwas konstruiert - und sich dann wundern, das nichts funktioniert.

Und dann gibt es immer noch wieder Leute, die so etwas unterstützen. 

Sorry, aber mich kotzt diese Mentalität von diesen alles kostenlos haben wollen Menschen (ich meine nicht dich) einfach an. Verschenkt dein Chef eigentlich die Produkte?

Gruß P
[-] Folgende(r) 1 Nutzer sagt Danke an OnlineExcel für diesen Beitrag:
  • RPP63
Antworten Top
#9
Moin!
Auch wenn ich @OnlineExcel positiv bewertetet habe:
Aus Erfahrung weiß ich, wie mit Praktikanten "umgegangen" wird.
Der Verantwortliche denkt sich etwas möglichst Umfangreiches aus, welches der Qualifikation des Praktikanten diametral gegenübersteht.
Wohl wissend, dass man ihn erst mal ruhig gestellt hat.
Sollte wider Erwarten etwas Praktikables dabei herauskommen, wird es dennoch niemals im Produktivbereich eingesetzt.
Dies ist das vorhersehbare Schicksal etlicher Werksstudenten / Praktikanten, whatever.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#10
Hallo schnablu 

sollte dein Chef dir eine unlösbare Aufgabe gestellt haben, kannst du ihn trotzdem lächelnd "aufs Kreuz legen."
Keine UserForm kann Daten speichern, die gehen beim schliessen IMMER verloren. Da haben die Kollegen recht!

Nur ein alter Mann aus Izmir/TR weiss, wie die Daten OHNE Tabelle im Dialog erhalten bleiben.
Da könnten die Forum Kollegen ziemlich ins staunen kommen!  (Excel 95/97 Dialog Sheet)
Macht aber -Keinen Sinn- bei tausenden von Daten!

Lade doch bitte mal eine Beispieldatei hoch, und gib uns an, welche Daten da drin stehen sollen.
Nur um mich köstlich zu amüsieren könnte ich dir da was programmieren! Einfach nur zum Spaß!
Ist aber eine nicht mehr von MS publizierte Uralt Kamelle, 1994 gerne verwendet in Excel 7 Dateien.

mfg Gast 123

Nachtrag für Kollegen:   der Uralt Code -DialogSheets.Add- funktioniert auch bei xlsm immer noch!
Antworten Top


Gehe zu:


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