Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: FlorianF am Februar 23, 2017, 20:33:37 Nachmittag

Titel: Abwägung von Lösungsalternativen (grundlegende Anfängerfrage)
Beitrag von: FlorianF am Februar 23, 2017, 20:33:37 Nachmittag
Titel: Antw: Abwägung von Lösungsalternativen (grundlegende Anfängerfrage)
Beitrag von: maninweb am Februar 24, 2017, 09:45:48 Vormittag
Hallo,

ja nachdem, wie Deine Userform aufgebaut ist, z.B. falls diese ermöglicht, alle Datensätze zu bearbeiten,
also nicht nur eine Zeile, bietet sich als performateste Methode an...

Klassen bieten sich beispielsweise an...
Die Beispiele hier oben (bis auf das erste mit den Steuerelementen) lassen sich aber auch als Module anlegen,
ohne Klassen zu verwenden. Das ist eine Designfrage.

Da Du sagst, Du bist Anfänger, und wenn Du Spass an der Sache hast, wäre ein Vorschlag, wie folgt
vorzugehen...
Gruß
 
Titel: Antw: Abwägung von Lösungsalternativen (grundlegende Anfängerfrage)
Beitrag von: FlorianF am Februar 24, 2017, 17:36:00 Nachmittag
Hi,

erstmal danke für die ausführliche Antwort.

Meine Form speichert immer nur einen einzelnen Datensatz. Ich habe es bis jetzt auch als Array gelöst um zunächst alle Felder einzeln in das Array zu lesen und dann über eine For-Next Schleife in die Tabelle zu schreiben. Das schien mir der effizienteste Programmier-Weg.

Dein Vorschlag habe ich in meinen Programm (es kann mehr als nur ein paar Projektdaten in eine Tabelle schreiben  :D) schon an einigen anderen Stellen so umgesetzt. Ich habe oft gemerkt, dass ich Dinge doppelt programmiere, lediglich mit anderen Parametern oder, dass der Code in eine Prozedur zu lang wird. Dann habe ich mir separate Prozeduren und Functions gebaut um es auszulagern. Ich denke da sieht mein Programm schon recht professionell aus, wobei es sicher auch noch an einigen Stellen besser geht. Aber das werde ich mit zunehmender Erfahrung bestimmt auch noch merken.

Was für mich vielleicht den "Klick" herbeiführt um das mit den Klassen richtig zu verstehen. Was wäre den ein oder mehrere Features die meine Form können müsste, damit es sinnvoll wäre über eine Klasse zu gehen? Oder ist es eher schon eine Glaubensfrage ob mit normalen Subs/Functions oder über eine Klasse?

Beste Grüße
Flo
Titel: Antw: Abwägung von Lösungsalternativen (grundlegende Anfängerfrage)
Beitrag von: maninweb am Februar 24, 2017, 17:53:56 Nachmittag
Hallo,

Angenommen, Du würdest in Deiner Userform die Steuerelemente per Code anlegen, also zur Laufzeit. Dann kämst Du um
Klassen nicht herum, um auf die Ereignisse (Click, Change, ...) zu reagieren.

Angenommen, Du hättest ganz viele Steuerelemente, jetzt wie aktuell statisch per Designer angelegt, so um, sagen wir mal
25 Checkboxen, und Du hättest keine Lust, für jede Checkbox die Ereignisprozedur anzulegen oder würdest das gerne zen-
tralisiert machen. Dann wäre ebenfalls eine Klasse sinnvoll. Für wenige Steuerelemente desselben Typs lohnt sich das nicht.

Ansonsten, schau' mal bei online-excel.de rein, die haben Beispiele.

Gruß