Typ eines Textformularfelds ändern Word97-VBA

Hallo,
ich habe folgendes Problem:

Ich habe eine Vorlage mit einem Textformularfeld, welches den Typ ‚aktuelles Datum‘ besitzt.
Nun möchte ich beim speichern des Dokuments den Typ des Formularfeld in ‚Datum‘ ändern, damit beim erneuten öffnen nicht wieder das aktuelle Datum reingeschrieben wird.

Den Dialog für FileSave bzw. FileSaveAs habe ich. Es geht nur um die Typänderung.

Kann mir jemand sagen, wie das geht?
Bin auch offen für andere Lösungsvorschläge…

Gruß,

Mächtiger Jones

Hallo,

Kannst Du das Problem etwas genauer beschreiben. Ich verstehe noch nicht ganz was Du erreichen möchtest.

Viele Grüsse

Christian

Hallo CharlyBye,
bin eigentlich kein Word-User (eher Excel). Daher kann ich auch kaum mit Details dienen, eher mit Ansätzen für eine Lösung.
Ich könnte mir bspw. vorstellen, den Wert in eine Variable des Typs Variant einzulesen und als String wieder rauszuschreiben.
Wie gesagt, praktische Umsetzung kann ich nicht mit dienen.
MfG MwieMichel

Textformularfeld,
Typ ‚aktuelles Datum‘
beim speichern des Dokuments Typ
‚Datum‘ ändern
Es geht nur
um die Typänderung.

sorry, habe leider keine Idee

Such das Datum und wähle es aus (selection) anschließend:
Selection.Fields.Unlink

Doppelposts sind - mindestens insoweit sie nicht als solche gekennzeichnet sind - ausgesprochen unhöflich. Die Frage habe ich Dir auf Office-Loesung.de schon beantwortet.

Ohne Gruß

Hallo!

In der Hilfe habe ich folgenden Punkt gefunden:
„Festlegen oder Bearbeiten von Formularfeldeigenschaften“
Außerdem gibt es die Möglichkeit, Makros aufzuzeichnen. Ich würde also die Aufzeichnung einschalten, dann den Anweisungen folgen, und mir anschließend das aufgezeichnete Makro ansehen.

mfg
Wolfram

Hallo,

Ich weiß nicht genau warum du das so machen willst.
warum nimmst du nicht einfach den Feldtyp Datum und machst als Standardwert =Jetzt()
dann ist das aktuelle Datum drin bis du den Feldwert überschreibst

Dann brauchst du den Feldtyp nicht während der Laufzeit zu ändern.

Gruß
Marco

Hallo CharlyBye,

Was bezeichnest Du als „Textformularfeld“? Die Feldfunktionen oder ein Textfeld vom Formular?

Feldfunktionen können markiert werden (.select) und dann mit Eigenschaften bestückt werden (z. B. WordBasic.FormatField Field:="CREATEDATE ").

Textfelder können über den Namen angesteuert werden.

Ich würde das Datum fest setzen, d. h. über Vorlage in der neuen Datei das Datum fixieren, damit dieses eben nicht mehr geändert werden kann.
Also: Keine Feldfunktion sondern über VB an Textmarke aktuelles Datum über date()einfügen.

Gruß
Harry

Sorry, habe einiges versucht, komm aber mit der Word-Hilfe nicht zurecht. Anbei Makro, mit dem Du die Namen erhälst.

Option Explicit

Sub DateiName()
Dim LinksName As String, RechtsName As String, LangName As Integer
LangName = Len(ActiveDocument.Name)
LangName = LangName - 12 - 5
LinksName = Left(ActiveDocument.Name, 11)
RechtsName = Mid(ActiveDocument.Name, 13, LangName)
MsgBox (LinksName)
MsgBox (RechtsName)
ActiveDocument.Bookmarks(1).Range.Text = LinksName
ActiveDocument.Bookmarks(2).Range.Text = RechtsName
End Sub

Das Ergebnis der Zerlegung erhälst Du in einer Messagebox. Ich war aber leider nicht in der Lage, das zuverlässig einer Textmarko zuzuordnen.

MfG MwieMichel