Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1324to1328
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
Inhaltsverzeichnis

Externe Bilder laden und in PPt ausgeben - Help

Externe Bilder laden und in PPt ausgeben - Help
08.08.2013 13:49:59
Benjamin
Hallo,
ich versuche mich gerade an VBA in Excel und stoße auf meine Grenzen des möglichen. Darum hoffe ich hier auf Hilfe von ein paar Profis ;)
(VBA Kenntnisse -= 0)!!!
Es soll MS Excel 2010 und MS Powerpoint 2010 verwendet werden!
-------------------------------------------------------------------------------------
Zu meinem Projekt:
Ich will in Excel eine Art Datenbank anlegen, mit der man durch Auswahl von einigen Kriterien, Bilder in die Mappe laden kann. Hierbei ist es mir wichtig, dass diese Bilder nicht in der Mappe eingelagert sind, denn es wird sich ca. um 1800 Bilder handeln. Da ich die Exceldatei nicht unnötig aufblähen will erscheint mir dass als einzigste Lösung.
Hat man alle Auswahlmöglichkeiten getroffen und die Bilder in die Mappe geladen (am besten durch einen Button) soll diese über einen weiteren Button den Bereich mit Bildern in PPt übertragen.
-------------------------------------------------------------------------------------
Nehmen wir an:
In Spalte A sind meine Teile die fest eingetragen sind.
In Spalte B sind über eine Liste vier verschiedene Auswahlmöglichkeiten die dann auf einen bestimmten Bilderpool (5 Bilder) zugreifen.
In Spalte C sind 5 Checkboxen in der ich dann das gewünschte Bild auswählen kann.
Erstmal peripher!
Wenn man die Spalten A/B/C um ein oder meherer Teile erweitert wäre es wünschenswert wenn man nicht den Code erweitern muss. Hier sind glaube ich Schleifen gut die prüfen ob die Spalte/Zeile leer oder befüllt ist.
-------------------------------------------------------------------------------------
Erste Ideen für den VBA Code:
Erst soll der Code in der Spalte A die Zeilen prüfen welches Teil denn gewünscht ist und auf welchen 1. Bilderpool er zugreifen soll. Wie gesagt sind hier in Spalte A die Werte fest, wie oben beschrieben.
Dann soll er in Spalte B prüfen welches Modell ausgewählt wurde und soll dann in dem Bilderpool von Spalte A in einen weiteren Unterordner gehen.
In der Spalte C hat man dann 5 Auswahlmöglichkeiten (5 Checkboxen für 5 Bilder).
Hat man alles ausgewählt soll über einen Button der Code gestartet werden indem er diese Schritte durch geht. Die Bilder sollten dann automatisch in ein Konzeptfeld in die Mappe geladen werden, damit man diese unter Umständen noch verschieben/löschen kann.
Über einen weiteren Button soll dann der Bereich als Bild in PPt geladen werden.
-------------------------------------------------------------------------------------
Als Datei hab ich ein abgespecktes Konzept angehängt damit ihr einen besseren Überblick darüber erlangt.
Die Übergabe von Excel an PPt habe ich schon gelöst, bin mir hierbei aber auch nicht sicher ob ich dass so einwandfrei gecoded habe.
Wie gesagt bin ich kompletter Laie in VBA Programmierung aber nicht ganz unbeholfen, also Code lesen und unter "Umständen" das Verständnis dazu aufbauen dürfte klappen.
Ich hoffe, ich habe es plausibel und verständlich genug erklärt und ihr könnt mir dabei weiterhelfen.
Gruß
Benny
https://www.herber.de/bbs/user/86759.xlsm

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Externe Bilder laden und in PPt ausgeben - Help
09.08.2013 11:02:53
fcs
Hallo Benjamin,
wenn du die Dateigröße und auch die Programmierung verweinfachen willst, dann solltest du dich von den Checkboxen verabschieden.
Bei 1800 Einträgen würdest du die Tabelle mit 9000!!! Checkboxen zupflastern - keine gute Idee.
Verwende in Spalte C eine Gültigkeitsauswahl mit den Werten von 1 bis 5.
Per bedingter Formatierung werden dann die 5 Farben gesetzt.
Die Alternative wären 5 Spalten, wobei die gewünschte Option per Doppelklick in die Zelle ausgewählt wird und ggf. ein bereits eingetragenen "X" in den anderen 4 Optionen automatisch gelöscht wird.
Der Eintrag von 1 bis 5 in Spalte C ist die bevorzugte Option, da am einfachsten umzusetzen.
Wenn ich dich richtig verstanden haben, dann möchtest du für mehrere Einträge in Spalte A die Optionen in Spalte B und C setzen/wählen. Für alle Einträge die in Spalte C einen Eintrag markiert haben soll dann der Transfer nach PP gestartet werden. D.h.:
1. 1. Bild laden nach klick auf 1. Schaltfläche
- sind alle Bilder in den Dateien gleich groß?
- soll die Größe der Bilder an den Zellbereich für die Bilder angepasst werden?
2. ggf. manuelle Korrekturen
3. Bild nach PP nach Klick auf 2. Schaltfläche
- wird jedes Bild in eine eigene PP-Datei kopiert oder sollen alle markierten Einträge in eine PP-Datei jeweils auf einen separate Folie kopiert werden?
4. Schritte 1 bis 3 für alle weiteren Schritte wiederholen.
Das alles läßt sich dann umsetzen, wenn das Verzeichnis der Bilder über die Einträge in den Spalten A bis C gefunden werden können.
Also z.B.
Basisverzeichnis\A1\AA\Bild1.jpg
Basisverzeichnis\A1\AA\Bild2.jpg
Basisverzeichnis\A1\AA\Bild3.jpg
Basisverzeichnis\A1\AA\Bild4.jpg
Basisverzeichnis\A1\AA\Bild5.jpg
oder
Basisverzeichnis\A1\AA\Neu.jpg
Basisverzeichnis\A1\AA\Neu_Variation.jpg
Basisverzeichnis\A1\AA\Bestand.jpg
Basisverzeichnis\A1\AA\Übernahme.jpg
Basisverzeichnis\A1\AA\Übernahme_Variation.jpg
Ohne eine Entscheidung, wie das Bild ausgewählt wird (Checkboxen, Auswahl 1 bis 5, ankreuzen mit "X in 5 Spalten) lohnt es sich nicht anzufangen über die Programmierung nach zudenken, denn da steckt dann ggf. ein hoher Anteil der Programmierung.
Außerdem sollte der Teil, in dem das Bild eingefügt wird und die Schaltflächen auf einem separaten Blatt angeordnet werden, so dass auf dem 2. Blatt nur noch die Liste und oberhalb davon die Legende ist. Die Aufteilung trägt erheblich zur Ergonomie bei.
Gruß
Franz

Anzeige
AW: Externe Bilder laden und in PPt ausgeben - Help
09.08.2013 14:40:11
Thorsten
Sorry, dass ich dieses Thema für die Kontaktaufnahme nutze, aber ich weiß mir leider nicht anders zu helfen:
@Franz: Kannst Du mir nochmals bei dem Problem "Diagramm je Zeile automatisch erstellen + Teil 2" helfen?
Danke! Thorsten

AW: Externe Bilder laden und in PPt ausgeben - Help
09.08.2013 15:10:02
fcs
Hallo Thorsten,
unter meinem Profil findest eine E-Mailadresse
Benutze die bitte.
Allerdings weiss ich nicht wann ich zum Antworten komme.
Dieses Wochenende sind Festivitäten und ab Montag bis nächsten Freitag ist Urlaubsreise angesagt.
Gruß
Franz

AW: Externe Bilder laden und in PPt ausgeben - Help
12.08.2013 08:50:28
Benjamin
Hallo Franz,
danke erstmal für deine Antwort, habe mir über das Wochenende nochmal eigene Gedanken gemacht, wie ich es lösen könnte. Bin aber leider immernoch nicht vorran gekommen.
Zu deinen Ideen:
Das mit den Checkboxen erschien mir anfangs auch ein bisschen zu umständlich, wusste aber keine bessere Lösung. Wenn du sagst, dass es mit der Gülitigkeitsauswahl schlauer und einfacher wäre, würde ich dies bevorzugen!
Zu 1:
Die Bilder haben eine unterschiedliche Größe (size)! Keines ist größer als 1 Mbyte (falls wichtig).
Zu 2:
Eine manuelle Korrektur in Excel bzw. wenn möglich in PPt wäre wichtig. Die Bilder sollten jedoch im vorraus schon auf der richtige Position sitzen. Also nicht alle übereinander!
Zu 3:
Es sollten alle Bilder auf eine PPt-Folie, von der größe passen diese auch auf eine Seite!
Wie in meinem Beispiel habe ich mir das so vorgestellt, dass man vielleicht eine bestimmte Range als Bild nach PPt überträgt.
Zu 4:
Genau, wenn man mal die Grundprogrammierung hat, sollte man den Rest Copy-Pasten können und halt dann einfach nur die unterschiedliche Bildpfade zu den verschiedenen Gültigkeiten einplfegen können!
Das Bilderverzeichnis wird genau wie du es beschrieben hast aussehen:
Basisverzeichnis\A1\AA\Bild1.jpg
Basisverzeichnis\A1\AA\Bild2.jpg
Basisverzeichnis\A1\AA\Bild3.jpg
Basisverzeichnis\A1\AA\Bild4.jpg
Basisverzeichnis\A1\AA\Bild5.jpg

Jetzt ist nurnoch die Frage wie ich das mit den Gültigkeitsnachweisen und der Programmierung anstellen soll.
Gruß
Benny

Anzeige
AW: Externe Bilder laden und in PPt ausgeben - Help
13.08.2013 14:00:17
Benny
Hallo,
ich habe nun diesen Code geschrieben, er funktioniert auch wie ich es gewünscht habe.
Jedoch muss ich für 1800 Bilder, diesen Code sozusagen 1800 mal schreiben, da ich ja jedes Bild einzeln ansprechen will.
Gibt es eine elegantere Lösung in Richtung schleifen dafür?
Gruß
Benny
Sub BilderImport()
'* * Variablen
Dim strVerzeichnis$, strDatei$
Dim pct As Picture
Dim lngZeile As Long
Dim lngSpalte As Long
'** If Abfrage der Spalte B und C
If (Worksheets("Tabelle1").Cells(2, 2) = "A1") And (Worksheets("Tabelle1").Cells(2, 3) = "AA")  _
Then
'** Pfad des Bildes für If Abfrage
strVerzeichnis = ThisWorkbook.path & "\Bilder\"
strDatei = Dir(strVerzeichnis & "\Bild1.jpg")
'** Startzeile + Spalte festelegen
lngZeile = 3
lngSpalte = 1
Cells(lngZeile, lngSpalte).Select
Set pct = Worksheets("Tabelle2").Pictures.Insert(strVerzeichnis & strDatei)
End If
'** If Abfrage der Spalte B und C
If (Worksheets("Tabelle1").Cells(2, 2) = "A1") And (Worksheets("Tabelle1").Cells(2, 3) = "AB")  _
Then
'** Pfad des Bildes für If Abfrage
strVerzeichnis = ThisWorkbook.path & "\Bilder\"
strDatei = Dir(strVerzeichnis & "\Bild2.jpg")
'** Startzeile + Spalte festelegen
lngZeile = 3
lngSpalte = 1
Cells(lngZeile, lngSpalte).Select
Set pct = Worksheets("Tabelle2").Pictures.Insert(strVerzeichnis & strDatei)
End If
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige