Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1864to1868
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Bilder (Grafiken) dynamisch einfügen
06.01.2022 19:54:27
Edmund
Hallo,
ich würde gerne in einer Tabelle ( für den späteren Ausdruck ) Grafiken einfügen, die sich je nach Wert ändern.
In einem Tabellenblatt wird ein Objekt ausgewählt und dann soll im Ausdruck die jeweilige Grafik / Bild eingefügt werden.
Ich habe bereits eine Beispieldatei hochgeladen:
https://www.herber.de/bbs/user/150212.xlsm
Vielleicht hat jemand eine passende Lösung parat.
lg Edmund

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: google: "excel bilder dynamisch einfügen" owT
07.01.2022 09:16:23
neopa
Gruß Werner
.. , - ...
AW: Bilder (Grafiken) dynamisch einfügen
07.01.2022 10:13:56
Pierre
Hallo Edmund,
ui ui ui...bissl chaotisch dein VBA (bzgl. der ganzen (größtenteils leeren) Module usw) ;-)
Also:
1. vorsichtshalber würde ich die Zellverbindung in B11 auf dem Blatt "Druck_Wert1914" rausnehmen...weiß zwar nicht, ob das in dem Falle wirklich negativ ist, aber ich hab es jetzt mal gemacht.
2. Kopiere alle deine Bildchen in das Blatt "Druck_Wert1914", verschiebe die alle in den gelben Bereich.
3. Folgendes Makro im Modul des Tabellenblattes "Druck_Wert1914" einfügen:

Private Sub Worksheet_Calculate()
Dim sh As Shape
For Each sh In ThisWorkbook.Worksheets("Druck_Wert1914").Shapes
sh.Visible = False
Next sh
Select Case Worksheets("Druck_Wert1914").Range("K5").Value
Case 12             'Mit Keller, Ohne DG, 3 Etagen
Shapes("Gruppieren 118").Visible = True
Case 11             'Mit Keller, Ohne DG, 4 Etagen
Shapes("Gruppieren 11").Visible = True
Case 10             'Mit Keller, Ohne DG, 5 Etagen
Shapes("Gruppieren 10").Visible = True
Case 18             'Mit Keller, DG nicht ausgebaut, 3 Etagen
Shapes("Gruppieren 145").Visible = True
Case 17             'Mit Keller, DG nicht ausgebaut, 4 Etagen
Shapes("Gruppieren 17").Visible = True
Case 16             'Mit Keller, DG nicht ausgebaut, 5 Etagen
Shapes("Gruppieren 164").Visible = True
Case 24             'Mit Keller, DG ausgebaut, 3 Etagen
Shapes("Gruppieren 196").Visible = True
Case 23             'Mit Keller, DG ausgebaut, 4 Etagen
Shapes("Gruppieren 186").Visible = True
Case 22             'Mit Keller, DG ausgebaut, 5 Etagen
Shapes("Gruppieren 22").Visible = True
End Select
End Sub
Ich habe da jetzt natürlich nicht alle drin, die fehlenden kannst du aber nach dem obigen Schema als weitere Cases erweitern.
Du musst natürlich schauen, welches Bild wie genau heißt und dies der Zahl, die in K5 ermittelt wird zuordnen. Das schaffst du dann aber selbst, denke ich.
Gruß Pierre
Anzeige
AW: Bilder (Grafiken) dynamisch einfügen
07.01.2022 18:25:06
Edmund
Hi Pierre,
vielen Dank, klappt perfekt, genauso wollte ich es haben.
Zu meinen etwas chaotischen VBA's und den Modulen.
Durch mein Testen sind viele Module entstanden die ich zum Schluss nicht mehr brauchte. Ich habe aber Angst welche zu löschen, da dann vielleicht das Programm nicht mehr läuft :-))
lg Grüße und nochmal vielen Dank für deine Hilfe
Edmund
AW: Bilder (Grafiken) dynamisch einfügen
07.01.2022 18:30:50
Oberschlumpf
Hi Edmund,
jedes Modul, in dem rein gar nix drin steht, kannst du gefahrlos löschen.
Was soll/kann denn auch passieren, wenn etwas gelöscht wird - und trotzdem nix fehlt?! :-)
Und trotzdem kann ich deine "Angst" verstehen - ich war ja auch mal "mit meinem "Wissen dort", wo zwar das, was ich programmierte, funktioniert hat, ich das aber trotzdem nicht immer verstanden habe :-)
Zu deiner Sicherheit kannst du ja vorm Löschen von wirklich leeren Modulen von der ganzen Datei eine Kopie erstellen.
Ciao
Thorsten
Anzeige
AW: Bilder (Grafiken) dynamisch einfügen
07.01.2022 18:44:25
Edmund
Hallo Torsten,
ok, hast Recht - werde aber auf alle Fälle eine Sicherungskopie erstellen und dann löschen was nicht ist.
Danke
Edmund
AW: Bilder (Grafiken) dynamisch einfügen
07.01.2022 20:18:21
Pierre
Hallo Edmund,
Bitte, gerne für die Hilfe. Da du ja einiges programmiert hast, bin ich davon ausgegangen, dass ich den Code nicht weiter erklären muss?
Habe halt nur das kommentiert, welche genauen Bilder ich schon drin habe, weil auch das ganz schön wild ist mit deinen Gruppierungen ;-) und durch das kopieren ins richtige Blatt haben die sich natürlich auch wieder umbenannt.
Naja, wie Thorsten schon sagte, alles, wo nix steht, kannst du auf jeden Fall löschen.
Gruß Pierre
Anzeige
AW: Bilder (Grafiken) dynamisch einfügen
07.01.2022 18:42:04
Edmund
Hi Pierre,
vielleicht kannst du ir ja noch einmal helfen.
Wenn ich z.B. ein Angebit als PDF abspeichern möchte und das gleiche Angebot mit dem selben Namen besteht schon stürzt mir Excel ab.
Kann man nicht in dem Fall im Code hinzufügen, dass er eine "(2)" hinter dem Speichernamen setzen soll ?
Oder zumindest eine Warnung, dass die Datei bereits vorhanden ist und fragen ob sie überschrieben werden soll?
Beim Drucken gibt es ja keine Probleme.
lg Edmund

Private Sub CommandButton2_Click()
'Angebot als PDF speichern
Dim NeuerName As String, Speicherpfad As String, antwort1, antwort2
'Speicherpfad = wird in der Vorbelegung eingetragen
Speicherpfad = Sheets("Vorbelegung").Range("B9").Value
NeuerName = Sheets("Eingabe").Range("D9").Value
'Wenn das Feld "Speicheradresse" (Vorbelegung B9) keine Daten enthält, wird ein MsgBox mit einem Fehler angezeigt
'und das Speichern wird abgebrochen.
If Sheets("Vorbelegung").Range("B9").Value = "" Then
antwort2 = MsgBox("Ihr Angebot kann nicht gespeichert werden!" & vbLf & _
"Sie haben keinen Speicherort angegeben!" & vbLf & _
"gehen Sie zuerst in die Vorbelegung" & vbLf & _
"und geben dort den Speicherort an!", vbCritical + vbOKOnly, "ImmoGrandeTool")
Unload Auswahl_Angebot
Exit Sub
End If
'Wenn das Feld "Objekt" (Eingabe D9) keine Daten enthält, wird ein MsgBox mit einem Fehler angezeigt
'und das Speichern wird abgebrochen.
If Sheets("Eingabe").Range("D9").Value = "" Then
antwort1 = MsgBox("Ihr Angebot kann nicht gespeichert werden!" & vbLf & _
"Sie haben keine Objektadresse angegeben!", vbCritical + vbOKOnly, "ImmoGrandeTool")
Unload Auswahl_Angebot
Exit Sub
End If
Sheets("Eingabe").Select
Sheets("Druck_Angebot").Visible = True
Sheets("Druck_Angebot").Select
Range("A1:G121").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Speicherpfad & NeuerName & "-" & Date & "-" & _
"Angebot" & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
ActiveWindow.SelectedSheets.Visible = False
Unload Auswahl_Angebot
End Sub

Anzeige

224 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige