11.12.2017, 16:46
Hallo zusammen,
ich habe erneut eine Herausforderung und auch im Internet konnte ich keine Lösung finden, welche das Issue löst.
Zur Ausgangssituation
Ich habe eine Datenbank mit vielen Informationen, welche ausgelesen wird durch eine Matrixformel auf einem anderen Worksheet.
Um den korrekten Datensatz zu erhalten nutze ich eine Combobox, welche automatisch (dynamisch) befüllt wird.
Nun habe ich noch eine Funktion welche die Combobox durchläuft und jedesmal bei einer neuen Person die Seite als PDF speichert.
Das Problem
Wenn ich nun über die Funktion (Combobox durchlaufen und als PDF abspeichern) gehe, speichert er die PDF's so wie ich möchte, allerdings aktualisiert er als einziges das Bildsteuerelement nicht.
Versuchte Lösungen
Ich habe die Änderungen des Bildsteuerelementes schon durch "Worksheet_Change" versucht, sowie direkt in der Funktion.
Vielleicht habt Ihr noch Lösungsansätze, ich hänge die Codes einfach an.
Vielen Dank
ich habe erneut eine Herausforderung und auch im Internet konnte ich keine Lösung finden, welche das Issue löst.
Zur Ausgangssituation
Ich habe eine Datenbank mit vielen Informationen, welche ausgelesen wird durch eine Matrixformel auf einem anderen Worksheet.
Um den korrekten Datensatz zu erhalten nutze ich eine Combobox, welche automatisch (dynamisch) befüllt wird.
Nun habe ich noch eine Funktion welche die Combobox durchläuft und jedesmal bei einer neuen Person die Seite als PDF speichert.
Das Problem
Wenn ich nun über die Funktion (Combobox durchlaufen und als PDF abspeichern) gehe, speichert er die PDF's so wie ich möchte, allerdings aktualisiert er als einziges das Bildsteuerelement nicht.
Versuchte Lösungen
Ich habe die Änderungen des Bildsteuerelementes schon durch "Worksheet_Change" versucht, sowie direkt in der Funktion.
Vielleicht habt Ihr noch Lösungsansätze, ich hänge die Codes einfach an.
Vielen Dank
Code:
'Check if File exists with Name of selected Person and return TRUE or FALSE
Function FileExists(BrickID As String)
Dim strPathBild As String
BrickID = Range("[font=Courier New]B4[/font]").Value
strPathBild = ThisWorkbook.Path & "\Pictures\" & BrickID & ".jpg "
FileExists = Dir(strPathBild) <> ""
End Function
Function updatePicture()
Dim BrickID As String, strPathBild As String
'Select Name from Dropdown and set Value to BrickID
BrickID = Range("B4").Value
strPathBild = ThisWorkbook.Path & "\Pictures\" 'Set Path for Pictures
'Call Function FileExists and check if is TRUE
If FileExists(True) Then
Person.Picture = LoadPicture(strPathBild & BrickID & ".jpg ")
Else
Person.Picture = LoadPicture(strPathBild & "error.jpg"): Err.Clear
End If
End Function
Sub PrintPerson()
Dim lngZeile As Long
For lngZeile = 0 To UffzName.ListCount - 1
updatePicture
Range("B4").Value = PersonName.List(lngZeile)
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\Person_Sites\" & Range("[font=Courier New]B4[/font]") & ".PDF", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
Next lngZeile
End Sub