Hallo Sag,
Hintergrund ist, dass ich wieder und wieder Fotodokumentationen erstelle und hierfür mir eine Vereinfachung schreiben wollte. Das Schema ist immer das selbe - 2 Bilder je Seite mit kurzer Bildbeschriftung. In der Bildbeschriftung sollte gleich der ehemalige Dateiname auftauchen,
Vor über 15 Jahren hatte ich das Problem auch schon. Mein Ansatz lief unter Word6.0 für Windows und war ganz anders (weil ich damals mit UserForms nicht umgehen konnte - wenn es sie überhaupt schon gab):
-
Dokumentvorlage mit AutoNew-Makro. Dies fragt den Benutzer, wieviele Bilder für die aktuelle Außergerichtliche Beweissicherung und was das häufigste Datum der Bilder war. Makro fügt daraufhin die benötigte Anzahl von meinen Rahmen ein.
-
Damals gab’s im Feld kaum noch digitale Fotographie, deshalb wurden 10*15-Fotos eingeklebt. Von Word aus gesehen waren meine Rahmen eine zweizeilige Tabelle.
Leerraum für Bild |
lfd. Nr. |
… Diese Tabelle steckte in einem Positionsrahmen.
… Für gerade und ungerade lfd. Nummern gab es je einen Positionsrahmen, der meine Rahmen jeweils korrekt in der oberen oder unteren Hälfte der Seite positionierte.
… Der Dokumentvorlage mitgegeben wurden meine Rahmen in zwei Textbausteinen (heute AutoText) namens BildOben und BildUnten — kreativ, nicht?
ich versuche gerade ein kleines Makro zu schreiben, aus dem ich markierte Bilder in ein Worddokument laden kann. Ich stecke hier beim Ermitteln der Anzahl der markierten Bilder im Dialog „Grafik einfügen“ fest. Mit der Anzahl möchte ich eine Scheife zur Anpassung der einzelnen Bilder an die Größe usw. durchlaufen lassen.
Man kann in der 2007er Version mehrere Dateien (Grafiken) gleichzeitig einfügen. Wenn ja, sollte es für die Anzahl von markeirten Dateien (Grafiken) auch schon einen Befehl geben oder besser gesagt die Anzahl der markierten Bilder sollte irgendwie zu ermitteln sein.
Generell funktioniert die Auswertung von Dialogen so, daß man sie mit Show anzeigen läßt und das Ergebnis auswertet, wenn der Benutzer OK geklickt hat:
Dialogs(wdDialog-Literalkonstante).Show
Beim jeweiligen Dialog findest Du in der Hilfe eine Parameterliste. Dort müßte auch der gesuchte Array sein.
Zum Problem denke ich aber folgendes.
-
Digitale Kameras, die ich kenne, liefern jpgs mit Dateinamen wie DSCN0001.jpg. Für die Bilder einer bestimmten Dokumentation gibt es dann doch einen bestimmten Nummernkreis, also DSCN0450 bis DSCN0478. Weil Du offensichtlich nicht alle Bilder verwenden willst, möchtest Du bereits im Einfügen-Dialog den Benutzer die Auswahl treffen lassen.
Wenn die Auswertung des Einfügen-Graphik-Dialogs aber nicht funktionieren sollte, könntest Du doch statt dessen den kompletten Nummernkreis in ein Dokument einfügen und den Benutzer auffordern, überflüssige Rahmen zu löschen. Mir ist letztere Methode sogar sympathischer, weil der Benutzer dann jedes Foto im Endzustand sieht.
-
Wenn die Bilder in einem Positionsrahmen stecken, kannst Du sie über die Shapes-Kollektion ansprechen (siehe Reinhards Code).
Zusätzlich kannst Du dem Benutzer zwei Makros schreiben, die den vorherigen bzw. nächsten Positionsrahmen anspringen. Die packst Du in eine Symbolleiste und gibst ihnen die vertrauten Vor-/Zurück-Schaltflächenbilder aus der Web-Symbolleiste.
HTH.
Markus
_________________
Und Sterne sammel’ ich noch immer.
P.S.: Fällt mir gerade noch ein: wenn man Bilder in eine Tabelle einfügt, werden sie an die Tabelle angepaßt, nicht?