Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Excel 2003 => 2007 VBA anders
22.10.2008 11:18:00
UweD
Hallo Experten
Ich habe mir mal unter Excel2003 ein Visitenkarten Makro gemacht.
Klappte dort ganz gut.
Jetzt unter Excel2007 gibt es aber Probleme.
Vorher: Wurde die Grafik in Zelle (B der aktuellen Zeile) beginnend angezeigt
Jetzt: immer vorne,oben
Im Code hier:

'Zielzelle aktivieren
        Cells(Target.Row, 3).Select


Vorher: wenn der Name nicht vorhanden war, wurde eine Hinweisgrafik angezeigt und nach 2 sek wieder ausgeblendet.
Jetzt: Läuft erst die Zeit ab, die Grafik blinkt nur kurz auf und ist direkt wieder weg.
Im Code hier:


          ActiveSheet.Pictures.Insert(Pfad & "Unbekannt" & Ext).Name = "Bild"
          Application.Wait Now + TimeSerial(0, 0, 2)
          ActiveSheet.Shapes("Bild").Delete


hier der gesamte Code


Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Dim Pfad$, Bild$, Ext$, Zeile1%, Spalte%, Da$
    '**** Grundeinstellungen ****
    Spalte = 1 '=Spalte A"
    Zeile1 = 2 ' erste Zeile mit Daten
    Pfad = ThisWorkbook.Path & "\" ' Bilddateien liegen im gleichen Verzeichnis
    Ext = ".jpg" ' Endung der Bilddateien
    '**** Grundeinstellungen **** Ende
    If (Target.Column = Spalte Or Target.Column = Spalte + 1) And Target.Row >= Zeile1 Then
        On Error Resume Next
        Cancel = True 'das normale Kontextmenü wird abgebrochen
        'Name des Bildes wird zusammengesetzt
        Bild = Me.Cells(Target.Row, Spalte) & "#" & Me.Cells(Target.Row, Spalte + 1)
        'altes Bild wird gelöscht
        ActiveSheet.Shapes("Bild").Delete
        'Zielzelle aktivieren
        Cells(Target.Row, 3).Select
        'Prüfung ob Bild zu diesem Namen vorhanden ist
        Da = Dir(Pfad & Bild & Ext)
        If Da = "" Then 'Bild fehlt
            ActiveSheet.Pictures.Insert(Pfad & "Unbekannt" & Ext).Name = "Bild"
            Application.Wait Now + TimeSerial(0, 0, 2)
            ActiveSheet.Shapes("Bild").Delete
        Else ' Bild vorhanden
            ActiveSheet.Pictures.Insert(Pfad & Bild & Ext).Name = "Bild"
        End If
    End If
End Sub


Hat jemand eine Idee, woran das liegt?
Ich habe die Datei und mal 3 Beispiel JPG#s angehangen.
https://www.herber.de/bbs/user/56188.zip
Besten Dank im Voraus
UweD
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel 2003 => 2007 VBA anders
23.10.2008 12:42:46
UweD
Hallo
ok. Das mit der TOP und Left Sache läuft gut. Besten Dank
Komisch ist nur, warum das alte Makro unter der alten Ecelversion ging und jetzt auf einmal anders.
Gruß Uwe
Anzeige
AW: Excel 2003 => 2007 VBA anders
23.10.2008 15:19:00
Tino
Hallo,
dies kann bestimmt nur Bill beantworten.
Gruß Tino

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige