Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Makro um eine Grafik auszutauschen





Frage

Hallo Leute, ich stehe vor einem für mich unlösbaren Problem. Ich habe eine Auswertedatei erstellt, bei dem auf einem Tabellenblatt eine Grafik (jpeg) ersezt werden soll und das am besten per Mausklick. Das heißt, ich bräuchte ein Makro welches zunächst die alte Grafik entfernt, dann soltte ich sich ein Fenster (Verzeichnis)öffnen, so dass ich das neue Jpeg auswählen kann. Dieses sollte dann an die Stelle J10 eingefügt werden. Weiterhin soll die Grafik automatisch formatiert werden, da die Größe nicht stimmt. Ist das möglich? Ich hoffe ihr könnt mir weiterhelfen!! Grüße struux

Antwort 1 von coros

Hallo struux,

nachfolgendes Makro sollte das machen, was Du Dir vorgestellt hast. Kopiere es in ein StandardModul und starte es über z.B. eine Befehlsschaltfläche.

Option Explicit

Sub Bild_wechseln()
Dim Bildname As String
Rem: Dialogfenster zur DGrafikausawahl öffnen
Bildname = Application.GetOpenFilename( _
    "Bilddateien (*.*), *.xls, Alle Dateien (*.*), *.*", 1, _
    "Bild auswählen...", MultiSelect:=False)
Rem: Wenn Grafik ausgewählt wurde
If Bildname <> "" Then
On Error Resume Next
With ActiveSheet
    .Range("J10").Select
    Rem: Altes Bild löschen
    .Shapes("Bild 1").Delete
    Rem: Neues Bild einfügen
    .Pictures.Insert(Bildname).Select
    With Selection
    Rem: Name der Grafik ändern
        .Name = "Bild 1"
        Rem: Seitenverhältnis deaktivieren
        .ShapeRange.LockAspectRatio = msoFalse
        Rem: Höhe der Grafik ändern
        .ShapeRange.Height = 28.5
        Rem: Breite der Grafik ändern
        .ShapeRange.Width = 283.5
    End With
End With
End If
End Sub


Mit dem Makro wird ein Dialogfenster geöffnet, in dem man die Grafik auswählen kann. Wenn eine Grafik ausgewählt wurde, wird die Alte gegen die Neue ausgewechselt. Du solltest in Deiner Datei der auszutauschenden Grafik den Namen "Bild 1" geben, da ansonsten das Makro nicht funktioniert.

Ich hoffe, Du kommst klar. Bei Fragen melde Dich wieder.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von struux

Danke Oliver,
allerdings klappt das irgendwie nicht. Wie ändere ich denn den Namen des Bildes auf Bild 1?
Gruß Daniel

Antwort 3 von DukeNT

Hi Daniel,
einfach das Bild makieren und oben links im Namenfeld in "Bild 1 " ändern.
Gruß Niels

Antwort 4 von struux

Danke,
klappt jetzt super. ich müsste jetzt nur noch eine Sachen wissen und zwar wie ich direkt ein bestimmtes Verzeichnis aufrufe und aus diesem meine bilder wähle.

Ach ja, ist es irgenwie möglich eine Arbeitsmappe so zu sperren, dass sie nicht überschrieben werden kann, sprich nur ein speichern unter anderem Namen möglich ist?

Danke euch

Daniel

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: