Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
656to660
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
656to660
656to660
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Userform Textboxen anpassen

Userform Textboxen anpassen
30.08.2005 09:04:18
Helmut
Hallo habe ein Problem und weiß nicht wie ich dieses lösen kann.
Habe eine Multipage in einer Userform. In dieser Userform sind wiederrum ca. 100 Textboxen und einige changeboxen. Ich möchte diese Userform in der Darstellung variabel halten. Es handelt sich hierbei um eine Mitgliederübersicht die über die Jahre auch Veränderungen erleben wird. Ich meine mit Veränderungen nicht die unterschiedlichen Daten in den Textboxen (durch Mitgliederveränderungen) sondern, eine mögliche Anpassung der Darstellung bzw. eine Erweiterung der Multipage mit Textboxen. Hierzu habe ich bereits einige Blanko - Textboxen (im jetzigen Betrieb "visible=false") ein gebaut um diese später über eine Konfigurationsmaske zu aktivieren.
Genau hier liegt mein Problem:
Die Anpassung über eine noch zu entwickelnde Konfigurationsmaske (ähnlich wie bei den meisten Programmen unter extras,optionen) soll von dem späteren Nutzer der VBA Lösung ohne Programierkenntnisse erfolgen. Ich stelle mir das so vor, das der betreffende Nutzer nach Eingabe eines Passwortes in die Konfigurationsmaske gelangt. Es werden alle Felder (auch die zur "Zeit =false") angezeigt. Der Nutzer clickt dann die entsprechend seinen Wünschen zu verändernde TB an und bearbeitet diese mit der Maus (Platzierung und Größe) bzw. gibt entsprechende Texte und Formatierungen über eine weitere Userform ein. Wichtig ist (gerade bei der Platzierung), dass die Veränderungen von (tb.top, tb.left, etc.) direkt am Bildschirm in der Multipage sichtbar sein muss, damit ein unnötiges hin und herspringen (Werte setzen - schauen war die Auswahl in Ordnung - eventuell Werte ändern) vermieden wird.
Vielleicht noch zur Info: Die Veränderungen an der TB soll nicht in der Programmierumgebung von VBA stattfinden. Der Nutzer der dieses Mitgliederverzeichnis nutzt kann kein VBA.
Würde mich über Lösungsansätze (muss kein VBA code sein) sehr freuen!
Helmut Palmen

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform Textboxen anpassen
30.08.2005 09:53:05
Heiko
Hallo Helmut,
da hast du dir was vorgenommen. Habe mal ein bisschen rumgespielt, siehe Tabelle
https://www.herber.de/bbs/user/26173.xls
Das geht zwar alles was du möchtest, aber die Daten müssen dann irgendwo hinterlegt werden, z.B. in der Tabelle Einstellungen. Und um das flexibel zu gestalten müßtest du beim Aufruf der Userfrom2 die Nummer der Textbox die verändert werden soll mit übergeben. Sonst hast bald sehr viele If oder Case Select Anweisungen drin.
Hast du dich schon mal mit dynamischen Steuerelemente beschäftigt die zur Laufzeit erzeugt werden. Vielleicht wäre das auch ne Lösung für dich.
Gruß Heiko

PS: Rückmeldung wäre nett !
Anzeige
AW: Userform Textboxen anpassen
30.08.2005 13:17:33
Helmut
Hallo Heiko,
wo finde ich was zu dynamische Steuerelemente? Kann ich meine VBA Lösung dabei beibehalten? Habe jede menge Arbeit da schon reingesteckt und würde ungern wieder ganz von vorne anfangen.
Werde mir heute abend mal Deine Überlegung anschauen und mich wieder melden!
Gruß,
Helmut
AW: Userform Textboxen anpassen
30.08.2005 14:49:44
Heiko
Hallo Helmut,
um dynamische Steuerelemente vernünftig einzusetzen muss du dich erstmal mit Klassenmodulen beschäftigen. Schau mal hier nach. Da ich deine bisherige Arbeit nicht kenne, kann ich dir nicht sagen ob du das bei dir noch einstreuen könntest.
http://www.online-excel.de/excel/grusel_vba.php?f=7
Darin enthalten auch Beispiele zu dynamischen Steuerelementen.
Gruß Heiko

PS: Rückmeldung wäre nett !
Anzeige
AW: Userform Textboxen anpassen
30.08.2005 19:53:34
helmut
Hallo Heiko,
manchmal sieht man den Wald vor lauter Bäumen nicht! Deine Lösung ist einfach spitze! Habe diese in klein (ohne Abfrage der Werte, etc.) mal eingebaut und war ganz überrascht, dass man im laufenden Prozess (VBA läuft) über eine zweite UF die Eigenschaften verändern kann. Es ist zwar keine Steuerung über Maus, aber das ist mehr als ich je gedacht habe!!! Diesen Ansatz habe ich nie weiter verfolgt. Ich lerne, das man nie auslernt!! Vielen Dank für Deine Unterstützung!! Übrigens: Ich habe mir die Seite mit dem Klassenmodul angeschaut. Ist auch sehr interessant. Habe mal aus Langeweile im Klassenmodul "gespielt" wusste aber nicht so recht was damit anzufangen. Werde nachdem ich mein jetziges Projekt fertig habe (wird wohl noch was dauern, habe leider nur sehr wenig Zeit dazu), mich mal um die Klassen kümmern.
Bis später mal und nochmals Danke!!
Mfg
Helmut
Anzeige
AW: Userform Textboxen anpassen
30.08.2005 09:55:40
Nepumuk
Hi,
dazu musst du dir eine ausgeblendete Tabelle anlegen, in der diese Eigenschaften gespeichert sind. Jetzt muss z.B. in einer Zelle, welche die Visible - Eigenschaft einer Textbox repräsentiert ein False stehen. Wenn der User die Textbox sehen will, schreibst du in die entsprechende Zelle True. Diese Eigenschaften muss du dann beim laden des Userforms alle setzen. Abfragen musst du keine stellen, sondern nur Eigenschaften setzen. Es passiert nichts, wenn eine Textbox deren Standardeigenschaft Visible False ist, diese Eigenschaft noch mal gesetzt bekommt.
Gruß
Nepumuk
Excel & VBA – Beispiele
Anzeige
AW: Userform Textboxen anpassen
30.08.2005 19:09:13
helmut
Hallo Nepumuk,
das was Du da geschrieben hast habe ich verstanden und wollte es so in der Art auch machen. Was mein eigentliches Problem darstellt ist, das ich - obwohl meine VBA Mitgliederverwaltung läuft - im Falle der Konfiguration (ein separater Einstieg über Passwort abgesichert) eine Einstellung der Textbox Eigenschaften (Top, left, etc.) mittels Maus an der sichtbaren Box erfolgen kann und diese dann von mir gespeichert wird.
Ich versuche es nochmals anders zu formulieren (reden ist einfacher als seine Frage in Worte zu fassen!):
-Ich habe die Mitgliederverwaltung laufen (VBA läuft im Hintergrund).
-ich gebe ein Passwort ein (über eine Userform)
-gelange in den Konfigurationsmodus (nicht vergleichbar mit der VBA Entwicklungsebene; meine VBA Mitgliederverwaltung läuft noch)
-kann dann die Textboxen mit der Maus anklicken und entsprechend von der Position und Größe anpassen
-gehe aus meine Konfigurationsebene raus und habe mein Textbutton so wie ich es gerne hätte
Versuche nochmals das Problem zu erläutern:
Sobald ich in VBA in der Menüleiste den Button "Makro starten" gedrückt habe, wird mir (wie jetzt in meinem Fall) eine Userform angezeigt und in dieser Userform sind die Textboxen fest verankert. Wenn ich in diese Textboxen klicke, dann kann ich dort Werte eingeben, aber (und hier liegt es das Problem) ich kann nicht mit der Maus und Mauszeiger die Position und Größe verändern. Und genau dieses möchte ich machen.
Würde mich über Antwort freuen!
Helmut
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige