Word Makro

BL1zz4RD

Grünschnabel
Hallo zusammen,
ich will ein Makro schreiben, welches mir dabei hilft, den Aufdruck auf eine Cd zu gestalten. Den Code allgemein hab ich schon. Nun mein Problem: Wenn ich das Makro ausführe, öffnet sich das Fenster, in dem ich Cd Titel und Zusatztext eingeben kann. Wie kann ich die Eingabe limitieren?
Das an sich wäre kein Problem, man kann ja einfach die Anzahl Zeichen limitieren, aber da nicht alle Zeichen gleich breit sind (Courier will ich sicher nicht, denn das sieht scheusslich aus), kann der Text in der Länge stark varieren. Wie kann ich den Text trotzdem limitieren? Kann ich als Limit die Kästchenbreite des Eingabefensters angeben? Wenn ja, wie?
mfg
 
Zuletzt bearbeitet:
Hi BL1zz4RD,


also ich tipp jetzt einfach mal ins leere und frage dich ob es net wie folgt klappen könnte!? wenn nicht dann sag mir bitte die fehlermeldung!


eingabefenster.maxlenght=eingabefenster.width

GreeZ InEx
 
hi,

na ich würds am ehesten falls du nen extra sub für dein eingabefenster hast da rein schreiben ansonsten nach dem aufruf deines eingabefensters schreiben!

Hoffe das hilft dir und es funktioniert ....

falls nicht kannst auch deinen code posten dann kann man sich das bisschen besser vorstellen und vielleicht mehr machen ;)

GreeZ InEx
 
Hmm ja das danke. Aber jetzt habe ich ein neues Problem:
Wenn ich anfange zu schreiben wird das Fenster schmal. Ich muste bei "eingabefenster.width" 10 eingeben, dann hat der Text genau die richtige Länge. Dann wird allerdings das Eingabefenster unglaublich schmal.
 
Hmm ja das danke. Aber jetzt habe ich ein neues Problem:
Wenn ich anfange zu schreiben wird das Fenster schmal. Ich muste bei "eingabefenster.width" 10 eingeben, dann hat der Text genau die richtige Länge. Dann wird allerdings das Eingabefenster unglaublich schmal.


Kannst du es hochladen?
Wäre einfacher, da ich noch in der arbeit bin und leider nicht die Zeit hab das ich das jetzt selber mache und dann kucke woran er fehler liegt!

Kann mir immo nicht vorstellen warum es schmaler wird aber ich denke mal wenn das kann man sicher auch irgendwie mit minLenght in denn griff bekommen.
-> so hat das eingabefeld dann eine mindestLänge egal was Du eingibst und eine MaxLenght

_____
edit
---------

oder wenn du mit schmaler die höhe meinst dann kann es vllt auch daran liegen das du jetzt eine maxheight definieren musst!

Lg InEx
 
Zuletzt bearbeitet:
Das hier ist der Code, vom Fenster, welches beim Start des Makro angezeigt wird:

Private Sub CommandButton1_Click()

End Sub


Private Sub Create_Box_Button_Click()

TabellenEinfuegenBox

End Sub

Private Sub Create_Cd_Button_Click()

TabellenEinfuegenCd

End Sub

Private Sub Frame1_Click()

End Sub

Private Sub Label1_Click()

End Sub


Private Sub OptionButton2_Click()

End Sub

Private Sub ListBox1_Click()

End Sub

Private Sub txtMainTitle_Change()

'txtMainTitle.Width = 15
'txtMainTitle.MaxLength = txtMainTitle.Width


End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()

ComboBox1.AddItem "CD" 'ListIndex=0
ComboBox1.AddItem "DVD" 'ListIndex=1


End Sub
 
ich würds mal wie folgt versuchen....



Code:
Private Sub txtMainTitle_Change()

'txtMainTitle.Width = 15
'txtmaintitle.height=
'txtMaintitle.minlenght = 15
'txtMainTitle.MaxLength = txtMainTitle.Width


End Sub
-----
edit
-----
das maxheight kannst auch weglassen!
GreeZ InEx
 
Danke dir!
Ich probiers noch schnell aus, dann hab ich Feierabend. Vielleicht schreib ich morgen wieder rein.
mfg und schönen Abend
 
Also ich weiss jetzt wie ich es machen will. Das mit dem Eingabefenster und der Breite, etc geht nicht, weil es ja in jeder schriftart funktionieren soll, und die sind ja unterschiedlich breit.
Mein Vorgehen, wenn ich wüsste wie, wäre:
Jedes mal wenn ein Buchstaben eingetragen wird, checkt das Makro, ob ein Event (Zeilenumbruch) stattfindet. Das macht er bei jedem Buchstaben, und wenn dieses Event stattfindet, darf die Eingabe nicht mehr weitergehen.
Versteht ihr was ich meine?
mfg
 
Zurück