Hallo zusammen,
das Makro hatte noch eine kleine Ungenauigkeit, nicht veränderte Dateien
wurden nicht geschlossen. Der korrekte Code ist:
option explicit
Dim oDialog as Object
Dim sPfad as String
dim oSFA as object
sub setZoom100
oDialog = CreateUnoService("com.sun.star.ui.dialogs.FolderPicker")
oDialog.setDescription("Bitte das Verzeichnis auswählen")
if oDialog.execute() then
sPfad = oDialog.Directory
end if
if sPfad = "/" then
MsgBox "nichts ausgewählt!"
Exit sub
end if
oSFA = createUnoService("com.sun.star.ucb.SimpleFileAccess")
Verzeichnisaufloesen(sPfad)
end sub
sub Verzeichnisaufloesen(Pfad as string)
dim ListeVerz() as string
Dim obVerz as long, i as long
ListeVerz = oSFA.getFolderContents(Pfad, TRUE)
obVerz = ubound(ListeVerz())
if obVerz = -1 then exit sub ' leeres Verzeichnis
' Dateien und/oder Ordner vorhanden
for i =0 to obVerz
if oSFA.isFolder(ListeVerz(i)) then
Verzeichnisaufloesen(ListeVerz(i))
else
if Right(ListeVerz(i),4) = ".odt" then
oDoc = StarDesktop.loadComponentFromURL(ListeVerz(i),
"_blank", 0, docArgs() )
if oDoc.currentController.ViewSettings.ZoomType = 3 then
if oDoc.currentController.ViewSettings.ZoomValue <> 100
then
oDoc.currentController.ViewSettings.ZoomValue = 100
oDoc.store
end if
end if
oDoc.close(TRUE)
end if
end if
next
end sub
Am 07.04.2024 um 23:03 schrieb Gerhard Weydt:
Hallo Rainer,
ich habe trotz Haralds Einwand, dem ich mich eigentlich anschließe,
ein Makro erstellt, das für ein auszuwählendes Verzeichnis und seine
Unterordner bei allen Writer-Dokumenten mit Maßstab ungleich 100 % den
Maßstab auf 100 % setzt.
Ich hänge das Makro unten an, zunächst ohne weitere Erläuterungen,
damit ich mir nicht unnötige Arbeit mache, wenn du mit Makros umgehen
kannst. Wenn du noch Erklärungen benötigst, melde dich noch einmal,
aber das kann dann per direkter Mail an mich sein, damit müssen wir
die Liste nicht belasten.
Starte das Makro für jedes Verzeichnis, in dem alle Writer-Dokumente
ggf. auf 100 % gesetzt werden dürfen, oder, wenn das ausnahmslos gilt,
für das ganz große Verzeichnis, in dem alle Writer-Doks zu finden sind.
Mache aber, auch wenn ich das bei mir getestet habe, erst einen Test
mit einem kleinen Verzeichnis mit einigen wenigen Dateien (und gleich
auch mit Unterordner(n)). Jedes betroffene Dokument wird kurz geladen
und wieder geschlossen, das Fenster ist dabei im Wesentlichen jeweils
schwarz.
Gruß
Gerhard
option explicit
Dim oDialog as Object
Dim sPfad as String
dim oSFA as object
sub setZoom100
oDialog = CreateUnoService("com.sun.star.ui.dialogs.FolderPicker")
oDialog.setDescription("Bitte das Verzeichnis auswählen")
if oDialog.execute() then
sPfad = oDialog.Directory
end if
if sPfad = "/" then
MsgBox "nichts ausgewählt!"
Exit sub
end if
oSFA = createUnoService("com.sun.star.ucb.SimpleFileAccess")
Verzeichnisaufloesen(sPfad)
end sub
sub Verzeichnisaufloesen(Pfad as string)
dim ListeVerz() as string
Dim obVerz as long, i as long
ListeVerz = oSFA.getFolderContents(Pfad, TRUE)
obVerz = ubound(ListeVerz())
if obVerz = -1 then exit sub ' leeres Verzeichnis
' Dateien und/oder Ordner vorhanden
for i =0 to obVerz
if oSFA.isFolder(ListeVerz(i)) then
Verzeichnisaufloesen(ListeVerz(i))
else
if Right(ListeVerz(i),4) = ".odt" then
oDoc = StarDesktop.loadComponentFromURL(ListeVerz(i),
"_blank", 0, docArgs() )
if oDoc.currentController.ViewSettings.ZoomType = 3 then
if oDoc.currentController.ViewSettings.ZoomValue <>
100 then
oDoc.currentController.ViewSettings.ZoomValue = 100
oDoc.store
oDoc.close(TRUE)
end if
end if
end if
end if
next
end sub
Am 07.04.2024 um 21:55 schrieb LO.Harald.Berger@t-online.de:
Hallo Rainer,
Am 07.04.2024 um 18:17 schrieb Gerhard Weydt:
[...snip...] Andererseits: was ist so störend, dass du sie nicht
einfach in dem Maßstab belässt?
Je suis d'accord
Worin würde der Sinn bestehen, tausende von Dateien (selbst wenn es
mit einem Macro ginge) in einem 100% Maßstab zu ändern und zu speichern?
Ich nehme an, du öffnest nicht täglich hunderte Dateien, oder?
== Workaround mit zwei Klicks ==
Öffne die Datei, mit der du arbeiten möchtest.
Rechtsklick auf die %-Zahl ganz rechts unten in der Statusleiste.
Im Auswahlmenü auf 100% klicken - fertig.
Bearbeite deine Datei und speichere (aber nur, wenn der Maßstab
stimmt😉).
Freundliche Grüße
Harald
[...snip...]
--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.