![]() |
Betrifft: LOGO in der Tabelle
von: Riman
Geschrieben am: 30.09.2014 11:12:43
Hallo,
ich habe eine Excel Datei mit Makro, die eine CSV Datei importiert und anschließend bearbeitet.
Ich möchte neben die Spaltenüberschrieften in eine Zelle ein Logo(Bild) einfügen.
Das habe ich mit eine Makrorecorder gemacht, das Problem ist, dass an der Stelle LogoEinfügen() das Bild nicht an der Selbe Position ist, oder beim Speichern unter eine andere Datei. Also ich möchte z.b. in spalte "L1" ein LOGO (Bild)drinnen haben, fixiert, dass beim Ausführen der Makro, dass das Bild immer an der selbe Position ist.
Danke
Sub LOGOEinfügen() ' ' LOGOEinfügen Makro ' ' Columns("L:L").ColumnWidth = 14.57 Range("L1").Select ActiveSheet.Pictures.Insert( _ "C:\Users\LOGO\Logo.jpg" _ ).Select Selection.Placement = xlMoveAndSize Selection.ShapeRange.ScaleWidth 0.9359722924, msoFalse, msoScaleFromTopLeft Selection.ShapeRange.ScaleHeight 0.9359722924, msoFalse, msoScaleFromTopLeft Columns("L:L").ColumnWidth = 16 Selection.ShapeRange.ScaleWidth 0.8723401594, msoFalse, msoScaleFromTopLeft Columns("L:L").ColumnWidth = 18# End Sub
![]() ![]() |
Betrifft: AW: LOGO in der Tabelle
von: fcs
Geschrieben am: 30.09.2014 13:06:37
Hallo Riman,
zum Positionieren des Logos innerhalb der Zelle L1 würde ich mit anderen Eigenschaften arbeiten als mit der Skalierung.
Erst die Spaltenbreite setzen, dann das Bild einpassen/positionieren.
Die Probleme mit der Bildposition beim Speichern etc. kann ich nicht nachvollziehen.
Gruß
Franz
Sub LOGOEinfügen() ' ' LOGOEinfügen Makro ' Dim objShape As Shape, Zelle As Range ' Columns("L:L").ColumnWidth = 18# Set Zelle = Range("L1") 'Einfügezelle für Bild Zelle.Select Set objShape = ActiveSheet.Shapes(ActiveSheet.Pictures.Insert( _ "C:\Users\LOGO\Logo.jpg").Name) With objShape .Placement = xlFreeFloating ' oder xlMove .LockAspectRatio = msoTrue .Width = Zelle.Width - 4 .Left = Zelle.Left + 2 .Top = Zelle.Top + 1 End With End Sub
![]() |