Excel-Vorlage.xlt: Tagesdatum einfügen

Hallo Wissende:
Ziel ist, unter Excel 2003 SP 3 in die Datei „Antrag1“, die über die Vorlage „Antrag.xlt“ erzeugt wird, in Zelle „D22“ automatisch das Tagesdatum einzufügen. Die Zelle ist schreibgeschützt, das Passwort kenne ich nicht.

Gibt es unter Excel etwas wie unter VBA den Befehl „New“?

Dank und Gruß
Wilhelm

Hallo Wilhelm,

Ziel ist, unter Excel 2003 SP 3 in die Datei „Antrag1“, die
über die Vorlage „Antrag.xlt“ erzeugt wird, in Zelle „D22“
automatisch das Tagesdatum einzufügen. Die Zelle ist
schreibgeschützt, das Passwort kenne ich nicht.

ich kenn da jetzt nix um ohne Kenntnis des Passwortes da was einzutragen, egal Excel oder Vba.
Und wenn da die xls die aus der xlt geboren wurde den PW_schutz auch hat, kannste nix machen außer das PW zu cracken.

Gibt es unter Excel etwas wie unter VBA den Befehl „New“?

? Was soll New bewirken?

New wird bei sowas eingesetzt
Dim colC as new Collection

Gruß
Reinhard

Hallo Wilhelm,

ja, auch Excel kann „Datei>Neu“. Aber das meinst Du vermutlich nicht.

Wenn Du das Passwort nicht kennst, hast Du gelitten. Oder Du musst irgendwie den Blattschutz knacken.

Es wäre aber vermutlich sinniger, das per Makro direkt beim Erzeugen eines neuen Dokuments zu erledigen. Vielleicht ist das auch so gemacht? Hast Du ggf. die Makrosicherheit auf hoch, so dass Du nicht gefragt wirst und die Makros deaktiviert sind?

Gruß, Manfred

Grüezi Wilhelm

Ziel ist, unter Excel 2003 SP 3 in die Datei „Antrag1“, die
über die Vorlage „Antrag.xlt“ erzeugt wird, in Zelle „D22“
automatisch das Tagesdatum einzufügen. Die Zelle ist
schreibgeschützt, das Passwort kenne ich nicht.

Dann musst Du den Ersteller der Vorlage bitten, diese Funktion mittels VBA-Programmierung in die Vorlage einzubauen.

Allenfalls könnte man diese auch mit der Funktion HEUTE() angehen, aber die aktualisiert sich dann auch, wenn das erstellte Dokument künftig geöffnet wird.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hi,
unter Word und VBA:

Private Sub Document_Open()
MsgBox „This document is copyrighted.“
End Sub

In diesem Beispiel wird eine Meldung beim Öffnen eines Dokuments angezeigt. (Die Prozedur kann im Klassenmodul ThisDocument eines Dokuments oder der damit verknüpften Vorlage gespeichert werden.)

Sollte es etwas ähnliches nicht auf für Excel geben?
Gruß Wilhelm

Hi,

ich hab’ das so verstanden: die EDV-Abteilung hat dem User eine Vorlage.xlt hingeknallt zur Verfügung gestellt, mit der er ein Antragsformular ausfüllen kann. Den User nervt, daß er in D22 stets händisch das Tagesdatum eintippen muß.

Ich sehe da zwei Lösungen:

  • ohne Kooperation der EDV-Abteilung: Strg+Punkt fügt das aktuelle Tagesdatum als festen Wert ein. Standardmäßig erscheint dd.MM.yy, wobei sich die Zelle sehr wohl auch schon vorher formatieren läßt

  • mit Koooperation der EDV-Abteilung: die EDV-Abteilung formatiert D22 mit dd.MM.yyyy und gibt in Workbook_New() der Vorlage.xlt ein

    Sheets(„blabla“).Cells(„D22“).Value = Format(Now(),„dd.MM.yyyy“)*

und setzt wieder ihr geliebtes Paßwort.

Mit dd.MM.yyyy ist natürlich das Datumsformat gemeint, das bei denen üblich ist (DIN!).

HTH.

Markus
_______________
Und Sterne sammel’ ich noch immer…

*Hoffentlich hab’ ich die Syntax richtig geraten…

1 „Gefällt mir“

In diesem Beispiel wird eine Meldung beim Öffnen eines
Dokuments angezeigt. (Die Prozedur kann im Klassenmodul
ThisDocument eines Dokuments oder der damit verknüpften
Vorlage gespeichert werden.)

Hallo Wilhelm,

nachstehenden Code in das Modul „Diese Arbeitsmappe“.
Aber der hilft dir nicht weiter.

Private Sub Workbook\_Open()
Dim T As String
With ThisWorkbook.Worksheets("Tabelle1")
 T = "Mappe " & IIf(.Parent.HasPassword, "", "nicht ") & "geschützt" & Chr(10)
 T = T & "Tabelle1 " & IIf(.Protect, "", "nicht ") & "geschützt" & Chr(10)
 T = T & "Tabelle1!D22 " & IIf(.Range("D22").Locked, "", "nicht ") & "gesperrt"
MsgBox T
End With
End Sub

Gruß
Reinhard

Ziel ist, unter Excel 2003 SP 3 in die Datei „Antrag1“, die
über die Vorlage „Antrag.xlt“ erzeugt wird, in Zelle „D22“
automatisch das Tagesdatum einzufügen. Die Zelle ist
schreibgeschützt, das Passwort kenne ich nicht.
Gibt es unter Excel etwas wie unter VBA den Befehl „New“?

Hallo Wilhelm,

so eine Insellösung erfreut die IT Abnteilung sicher nicht.
Markiere mal das ganze Blatt von Antrag1.xls und kopiere das dann in A1 einer neuen leeren Mappe in ein Blatt.

Dann müßte der Blattschutz weg sein.
In "DieseArbeitsmappe kommt der nachstehende Code.

Speichere dann die neue mappe als Antragb.xlt ab.

Gruß
Reinhard

Private Sub Workbook\_Open()
If ThisWorkbook.Name Like "\*.xlt" Then Exit Sub
If Worksheets("Tabelle1").Range("D22").Value = "" Then
 Worksheets("Tabelle1").Range("D22").Value = Format(Date, "DD.MM.YYYY")
End If
End Sub

THX
Hi,
den Blattschutz bekomme ich nicht weg, werde also, wie Markus empfahl, mit „STRG .“ arbeiten.
Dank und Gruß
Wilhelm

Hallo Wilhelm,

ich poste stets in der Reihenfolge, damit der Post inhaltlich lesbar bleibt. Das Durcheinander der Antwortreihenfolge ist ein echtes Manko in diesem Forum.

Deine Frage war auch „Gibt’s so 'was wie Document_Open()“ auch als „Document_New?“ Antwort: Es kommt darauf an* :smile:

Die Ausdrücke mit _Document\ __vornedran gehören zu Word, in Excel heißen sie Workbook_ oder Worksheet_. Das sind Ereignisse (terminus technicus!), die der Benutzer mit Programmierung manipulieren darf. Um sie vernünftig zu nutzen, mußt Du Dich ein wenig mit den Grundlagen von VBA beschäftigen. Mit _New Du hattest den richtigen Riecher, deshalb möchte ich Dich dazu ermuntern.

Zu Deinem Post von gestern: ein Datei>Neu mit der geschützten Vorlage.xlt erzeugt eine ungeschützte .xls, nicht? Dann so:

  • erzeuge ein neues leeres Antragsformular

  • formatiere D22 mit dem Datum, wie Eure Firma es verlangt (DIN = jjjj.MM.tt)

  • speichere die Datei, aber beachte
    … der Cursor muß in D22 stehen
    … vergib einen aussagekräftigen Namen wie „Antrag auf …“
    … der Dateityp muß sein Mustervorlage (*.xlt)
    … der Speicherort muß sein

    C:\Program Files\Microsoft Office\Templates\1033

Erklärung:

  • in Excel gibt es kein CREATEDATE wie in Word. Also bleibt Dir nur eine Makrolösung in Workbook_Open. Da Du Dich zu Strg+Punkt durchringen konntest, halte ich eine Makrolösung für übertrieben.*
  • wenn der Cursor beim Speichern in D22 steht, ist er auch bei neuen Dateien dort. Also kannst Du direkt mit Strg+Punkt loslegen.
  • der vorgeschlagene Speicherort stammt aus der Microsoft Knowledge Base und gilt für WindowsXP. Damit kannst Du in Excel bei Datei>Neu zwischen normaler Excel-Tabelle und einen Antrag_auf wählen.

Nach dem selben Prinzip erzeugst Du Dir weitere Vorlagen.

HTH.

Markus
_______________
Und Sterne sammel’ ich noch immer…

* Die typische Antwort. Zwei Juristen, drei Meinungen…
** Schließlich wirst Du als Jurist nicht täglich mehrere zehn Anträge ausfüllen wie eine Schreibkraft. Zudem halte ich ein Makro, das nur das Tagesdatum einträgt, für auf halbem Wege stehengeblieben. Ein solches Makro sollte und könnte auch den Dateinamen vorbereiten (z.B. 110116 Mandandt AntrPKH.xls), die Angaben des Mandanten anzeigen, den Speicherort festlegen (wenn für jeden Mandanten ein Ordner existiert) etc. Du siehst, Beschäftigung mit VBA kann sich lohnen.

… der Dateityp muß sein Mustervorlage (*.xlt)
… der Speicherort muß sein

C:\Program
Files\Microsoft Office\Templates\1033

  • der vorgeschlagene Speicherort stammt aus der Microsoft
    Knowledge Base und gilt für WindowsXP.

Hallo Markus,

hast du das bei deutschem Win und Office getestet?

Normalerweise benutzt MS 1033 für englische Sprachpakete als Ordnername, in deutschen Programmpaketen ist es die 1031.

Hier ist eine Liste der Nummern und Sprachen, passt wahrscheinlich hier auch:
http://msdn.microsoft.com/de-de/library/ms190303.aspx

Ich habe WinXP, aber keinen Ordner C:\program files.
Ich nehme ohne Test an, mein Ordner wäre dann:
c:\programme\microsoft office\1031

Und, ich würde mal tippen, wenn ich in Excel eine Mappe als xlt abspeichere schreibt Excel schon von sich aus in diesen Ordner, ist aber unbestätigt.

Gruß
Reinhard

Hallo Markus,
schmunzel, schmunzel: Da machtst Du Dir Gedanken über unsere Kanzleiorganisation und ich hatte mich doch nur über den Kostenerstattungsantrag einer Krankenkasse geärgert, in den man das Antragsdatum einfügt und den man erfreulicherweise nur sehr sporadisch ausfüllen muss!
Den Blattschutz kann ich trotz Deiner Hinweise nicht überlisten und hoffe nun darauf, dass jemand sich die xlt.-Datei einmal anschauen will.
Herzlichen Dank für Deine Mühe!
Gruß Wilhelm

Den Blattschutz kann ich trotz Deiner Hinweise nicht
überlisten und hoffe nun darauf, dass jemand sich die
xlt.-Datei einmal anschauen will.

Hallo Wilhelm,

wo finde ich denn die Datei?
File-Upload, s. FAQ:2606 kennst du?

Gruß
Reinhard

Hallo Reinhard,
file-upload kenne ich nicht. Die Excel-Datei findest Du unter:

http://www.dkv.com/kunden-service-download-leistungs…

Das Datum gehört in die Zelle D47.
MfG Wilhelm

http://www.dkv.com/kunden-service-download-leistungs…

Das Datum gehört in die Zelle D47.

Hallo Wilhelm,

ich verstehe jetzt nix, hab auch keine Lust den ganzen langen Thread durchzusuchen.

Ja, das Blatt an sich ist geschützt.
Aber, ich kann problemlos mit Strg+Punkt das Datum eintragen.

Da du da wohl mit Versicherungen involviert bist ist dir von Haus aus bzw. berufsbedingt legal oder illegal sowieso egal :smile:)
Soll ich die Mappe hochladen ohne Blattschutz?
Das bringt dir aber nix bei der xlt.

Wenn, bräuchte ich die xlt.

Gruß
Reinhard

http://www.dkv.com/kunden-service-download-leistungs…

Das Datum gehört in die Zelle D47.

Hallo Wilhelm,

ich verstehe jetzt nix, hab auch keine Lust den ganzen langen
Thread durchzusuchen.

Ja, das Blatt an sich ist geschützt.
Aber, ich kann problemlos mit Strg+Punkt das Datum eintragen.

Ja, kann ich auch, das geht sowohl in der .xlt- als auch in der .xls-Vorlage.

Da du da wohl mit Versicherungen involviert

Nein, bin im Ruhestand und benötige den Antrag nur ganz privat.

Haus aus bzw. berufsbedingt legal oder illegal sowieso egal

-))

Aber natürlich n i c h t!

Soll ich die Mappe hochladen ohne Blattschutz?

Ja, bitte. Dann haben wir doch eine .xls-Datei.

Das bringt dir aber nix bei der xlt.

Hätte man nicht die von Dir benötigte .xlt-Datei, wenn man die .xls-Datei mit „Speichern unter“ als Mustervorlage (*xlt)abspeichert und kommst Du damit weiter?

Gruß Wilhelm

Hallo Reinhard,

nein, hatte ich nicht mit deutschem Office getestet

Ich habe bei meiner Antwort im Nebel gestochert. Dann mache ich erst einmal Vorschläge. Meist teste ich diese nicht: der Anfrager meldet sich sowieso, wenn er die Tipps brauchen kann und es nicht klappt. Wenn es klappt oder wenn er die Tipps nicht brauchen kann, meldet er sich meist gar nicht. (Wäre das so hier so strikt wie bei tek-tips, würde ich auch testen.)

Heute morgen ist mir einfach nur ein Lapsus unterlaufen. Ich lese die KB grundsätzlich nur auf englisch, weil die maschinelle Übersetzung ins Deutsche so scheiße ist. Ich hatte es eilig und habe den Pfad aus der englischen Version kopiert. Erst nach Abschicken der Antwort fiel es mir auf. Ich weiß genau, daß Program Files und die Zahl 1033 falsch sind. Ich wollte aber nicht noch einen Post hinterherschieben, wenn ich doch gar nicht weiß, ob der Anfrager meinen Tipp überhaupt brauchen will.

Und siehe da, ich hatte - wie Du an Wilhelms Antwort (schmunzel, schmunzel) siehst - wieder einmal daneben gelegen, so daß das Nicht-Testen nicht so schlimm war.

Gruß

Markus