Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bildunterschrift per VBA einfügen
#1
Hallo VBA-Freunde,
ich habe eine Foto-Doku erstellt und möchte gern die Bilder mit dem Bildnamen (z.B. IMG_0006, IMG_0007 usw.) mittels VBA-Lösung unter die Fotos betiteln.
Eine Möglichkeit funktioniert schon:

Code:
Sub PfadDateiNamenEinfügen()
 
Dim fso, d1, file, fileName
 Set fso = CreateObject("Scripting.FileSystemObject")
 fileName = "-------"
 ' Pfad anpassen
 Set d1 = fso.GetFolder(fileName)
 For Each file In d1.Files
 Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
 Selection.TypeParagraph
 Selection.InlineShapes.AddPicture fileName:= _
 file, LinkToFile:=True, SaveWithDocument:=False
 Selection.TypeParagraph
Selection.InsertCaption Label:="Abbildung", TitleAutoText:="", Title:=" - " + file, _
 Position:=wdCaptionPositionBelow, ExcludeLabel:=0
 Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
 Selection.TypeParagraph
 Next
 End Sub

 
Jedoch möchte ich nicht den ganzen Pfad als Bildtitel haben (aber erstmal besser als gar nichts)
Wäre es möglich, den Code zu modifizieren oder hat jemand noch eine Idee?
Eine zweite Möglichkeit wäre (gefunden J):

Code:
Sub Bildüberschrift()
 
'strPfad = UF03_BilderDiagramme.TextBox03_PfadBilder.Value + "\"
CaptionLabels.Add Name:=Bildueberschrift
Endung = "jpg"
sBilddateiname = Dir(strPfad & "*." & Endung)
Set Position = ActiveDocument.Sections(9).Range.Characters(10)
Do While sBilddateiname <> ""
Bildname = Left$(sBilddateiname, Len(sBilddateiname) - 4)
Set Bild = ActiveDocument.InlineShapes.AddPicture(fileName:= _
strPfad & sBilddateiname, LinkToFile:=False, SaveWithDocument:=True, Range:=Position)
Bild.Select
Bild.LockAspectRatio = msoTrue
Bild.Width = CentimetersToPoints(12)
Selection.InsertCaption Label:=Bildueberschrift, _
Title:=": " + Bildname, Position:=wdCaptionPositionAbove
Selection.TypeText Chr$(13)
Selection.TypeText Chr$(13)
sBilddateiname = Dir()
Loop
 
End Sub

 
Jedoch werden dort Laufzeichenfehler angezeigt!
 
Würde mich über eine Anmerkung und vllt einschneidenden Tipp freuen.


Gruß,
Philipp
Antworten Top
#2
Moin Philipp!
Warum willst Du eine Kalkulations-Software vergewaltigen?
Für so etwas gibt es doch etliche Grafik-Freeware-Programme.
Selbst der Explorer kann doch hervorragend kacheln:
   

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Hallo Philipp, :19:

nur den Namen, nicht den gesamten Pfad im ersten Code: :21:


Code:
Label:="Abbildung", TitleAutoText:="", Title:=" - " + file.Name, _
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • PhilippB.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste