05.12.2020, 12:59 (Dieser Beitrag wurde zuletzt bearbeitet: 05.12.2020, 13:21 von Chris Qu.)
Hallo zusammen,
brauch da mal fachmännische Unterstützung. Ich habe ein Userform in dem Fragen gestellt werden die mit Hilfe von Checkboxen "angekreuzt" werden sollen. Je nach Auswahl erhält man zu der Frage einen Wert zwischen -3 und +3. Diese Auswahl soll pro jeweils gewähltem Mitarbeiter gespeichert werden. (Wird später noch zu einer Berechnung benötigt)
Mein erstes Problem: Pro Frage darf nur eine checkbox von den möglichen 7 aktiviert werden, d.h. wenn eine box bereits aktiv ist und man wählt eine andere muß die erste ausgehen. usw.
Zweites Problem: Wie weise ich die entsprechend gewählte checkbox dem Mitarbeiter zu. Im Moment wenn ich eine checkbox wähle bleibt sie unverändert, wenn ich den Mitarbeiter Wechsel (ist ja auch im VBA Code noch nichts eingegeben) Hab da zur Zeit noch nicht einmal einen Ansatz wo ich anfangen muß (blutiger Excel-Anfänger)
Hier mal ein Screenshot von meiner Userform. Hoffe das macht mein Vorhaben halbwegs verständlich.
habe mir das angesehen, wenn du Optionsschaltflächen genommen hättest, wäre das relativ einfach zu lösen, denen braucht du pro Gruppe nur einen gemeinsamen Namen zuweisen, dann kann man nur jeweils ein Objekt auswählen. Bei Kontrollkästchen kann man da zwar was programmieren, da du die Objekte unnötigerweise umbenannt hast, wird das erschwert, deshalb von mir kein Vorschlag in diese Richtung.
Viele Grüße Klaus-Dieter Der Erfolg hat viele Väter, der Misserfolg ist ein Waisenkind Richard Cobden
Ich bin jetzt gerade auf die Options Buttons umgestiegen. Hab das mit den Gruppen auch gleich hinbekommen. Jetzt fehlt mir nur noch wie ich die den Mitarbeitern zuweise.
da liegt im Moment mein Problem. Keinen Plan wie ich das machen muß. Jedes Optionsfeld einzeln, oder kann man die Auswahl aus der Gruppe nehmen? Wie würde denn da der Code in etwa aussehen, das die Auswahl beim Mitarbeiter gespeichert und wieder mit aufgerufen wird. Suche schon seit Stunden im Netz, aber ich finde einfach nicht das richtige.
Hab mal aktuellen Stand hochgeladen mit den Optionsfeldern. Vielleicht könnte man ja mal ein Beispiel machen bei der ersten Gruppe mit den 7 Auswahlmöglichkeiten.
ganz ehrlich? So hätte ich das ohnehin nicht gelöst. Anstelle der jeweils sieben Objekte zum Anhaken / Anklicken, hätte ich entweder je eine Textbox genommen, wo man im Klartext den Wert eingetragen hätte. Oder, wenn es etwas mehr "Komfort" sein soll, hätte ich je ein Kombinationsfeld genommen, wo der gewünschte Wert ausgewählt werden könnte. Abspeichern muss man jedes einzelne Objekt, sonst kann man die Werte ja nicht wieder aufrufen.
Viele Grüße Klaus-Dieter Der Erfolg hat viele Väter, der Misserfolg ist ein Waisenkind Richard Cobden
Das komplette Formular ist an das Original in Papierform angelehnt. Deshalb soll es optisch auch in dieser Form behalten werden. Sagen wir einfach ich will unbedingt mein Problem in dieser Form lösen und wenn es denn sein muß jedes Optionsfeld einzeln speichern um es wieder aufzurufen. Dann habe ich immer noch mein gleiches Problem, ich habe keine Ahnung wie ich das anstellen soll.
Mein Versuch war jetzt diese Richtung:
If OptionButton64.Value = true Then data2020.cells(i,17) = OptionButton.Caption 'Vielleicht kann man da irgendwie ne Schleife machen'
dann hätte ich durch das Caption z.B. -3 in der entsprechenden Zelle. Allerdings steig ich mit diesem i noch nicht durch, aber ich denke das brauche ich irgendwo um die richtige Zeile in meinem Datenblatt zu finden. Das ist in meinem Hirn noch nicht wirklich angekommen.
Beim zurückschreiben könnte man doch dann aus dem Wert -3 wieder eine Anweisung machen das z.B. bei -3 OptionButton64 aktiv gesetzt wird.
(06.12.2020, 13:30)Chris Qu schrieb: Das komplette Formular ist an das Original in Papierform angelehnt. Deshalb soll es optisch auch in dieser Form behalten werden.
Wenn du unbedingt ein Druckformular 1:1 in elektronischer Form haben möchtest dann solltest du Formular-Software verwenden und nicht Excel missbrauchen.
Wir sehen uns! ... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.