Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mit VBA Makrosicherheit ändern

Frage Entwicklung Basic

Mitglied: mtriebler

mtriebler (Level 1) - Jetzt verbinden

26.07.2009, aktualisiert 10:46 Uhr, 7199 Aufrufe, 5 Kommentare

Problem: Verändern der Makrosicherheit der geöffneten Word-Datei mit VBA ??
(oder löschen des laufenden Makros ??)

Die Aufgabenstellung ist folgende:

Mit einem Makro wird bewirkt, daß Anwender, die nicht fit sind in Windows ihre Dokumente in einheitlicher Form (Dateinamen) ins richtige Verzeichnis speichern, wo sie später weiter bearbeitet werden können.

Lösung, so weit ich gekommen bin:

Das Dokument wird geöffnet. Mit InputBox() werden in Autoopen() 2 Informationen abgefragt (Schreiber bzw. Topic und das Datum, das im Dateinamen erscheinen soll).
Diese Daten werden auch ins Dokument übernommen (weil sie da gebraucht werden)

Dann wird das Dokument sofort mit Ursprungsnamen, ergänzt um die beiden Informationen, ins Zielverzeichnis gespeichert. Jetzt steht es für weitere Bearbeitung zur Verfügung.
Das Ausgangsdokument bleibt unverändert.

Problem, noch nicht gelöst:

Beim Öffnen der erzeugten Datei startet Autoopen() logischerweise wieder. Das ist überflüssig, und wenn die Anwender nicht sofort "Abbrechen" anklicken, besteht die Gefahr die alten Werte zu überschreiben.

Also möchte ich, daß Autoopen in der zweiten Datei

- entweder nicht mehr ausgeführt wird ( wenn das irgendwie geht)
- oder verschwindet. (Es schadet nichts, wenn das Makr jetzt abbricht. Hauptsache, die Anwender landen im Word-Dokument)

Gibts da eine Lösung?

mtiebler
Mitglied: 76109
26.07.2009 um 11:52 Uhr
Hallo mtriebler!

Dann füge doch einfach in Autoopen einen Test ein, der prüft, ob das Document bereits eine Dateinamenserweiterung enthält.

So in der Art:
01.
if IsDate(Right(ThisDocument.Name, 10)) Then Exit Sub
Gruß Dieter
Bitte warten ..
Mitglied: miniversum
26.07.2009 um 12:00 Uhr
Möglichkeit 1:
Überprüfe im Sutoopen ob der Dateiname dem Namen der Vorlagendatei entspricht. Wenn nicht wird das Makro beendet.
Möglichkeit2:
Die informationen wirst du ja dneke ich, wenn sie auch im Dokument verwendet werden sollen, wahrhscienlich in Feldern hinterlegen (wenn dem nicht so ist gib bescheid). Du musst also nur in der Autoopen funktion diese Felder abfragen und kontrollieren ob ihnen bereits Werte zugewiesen wurden. Wenn ja wird das Makro beendet.
Bitte warten ..
Mitglied: mtriebler
26.07.2009 um 12:11 Uhr
Herzlichen dank, alle Vorschläge helfen mir weiter mtriebler
Bitte warten ..
Mitglied: mtriebler
26.07.2009 um 12:12 Uhr
Gute Idee, aber das datum wird per Hand eingegeben, da es nicht identisch sein muß mit dem Bearbeitungsdatum. (z.B. "Protokoll vom..."

Werde Deinen Rat aber befolgen bzw. variieren, indem ich abfrage, ob eine Zahl im Dateinamen vorkommt. Das müßte klappen. Danke
Bitte warten ..
Mitglied: 76109
26.07.2009 um 12:32 Uhr
Hallo mtriebler!

Das könntest Du mit Like sehr einfach überprüfen z.B.:
If ThisDocument.Name Like "*##.##.*" Then Exit Sub

(#) steht für einen x-beliebigen numerischen Wert. Das Format entsprechend anpassen.

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...