Logo in Tabellenblatt

Hallo liebe Experten,

ich habe eine Tabelle in die ich über eine Userform Daten einfüge.
Desweiteren gibt es ein Makro was einen Reset durchführt, sozusagen die Urform des Blattes wieder herstellt.

Jetzt soll in dieser Tabelle unser Firmenlogo erscheinen aber weder von der Userform oder vom Makro beeinflusst werden.
Wenn ich es per VBA direkt in der Tabelle ablege, wird es vom „Reset“ - Makro wieder gelöscht.

Wie kann ich also eine Grafik dauerhaft hinterlegen?

Danke und MfG

Frank

Gibt es nicht die Möglichkeit das Grafikobjekt an eine Zelle zu Binden? Du kannst ja alle Zelleninhalte löschen, aber das Grafikobjekt nicht auswählen. Mit z.B.
Range(„A5:IV63536“).Select 'Markieren
Selection.Delete 'Markierte Felder Löschen

Wenn das Grafikobjekt nun in der Zelle „A1“ ist, wird es hiermit nicht gelöscht.

Grüsse Sebastian

Danke für deine schnelle Antwort.

Werde das mal probieren, leider steht das Logo nicht direkt am Anfang der Tabelle, das bedeutet das ich zwei bereiche markieren muss und diese einzeln zu löschen.

MfG

Danke, für deine schnelle Antwort!

Das Logo soll sich rechts von den Daten befinden, müsste dann zwei Markierungen setzen und diese einzeln löschen.
Ich werd den Ansatz mal ausprobieren!

Hallo Frank,

Wie funktioniert denn dein resetmakro? Wird das ganze tabellenblatt gelöscht oder nur die Zellen? Vielleicht kann man nach dem Reste einfach per Makro wieder das Bild einfügen

Lg

Hallo,

das ganze Blatt wird gelöscht.
Das hab ich auch schon überlegt, aber wie realisiere ich, das das Bild auch kommt wenn es nicht als Datei auf dem Rechner ist, gibt es die Möglichkeit das Bild in der Arbeitsmappe zu hinterlegen?

MfG

Nach meinem Wissensstand ist es nicht möglich das Bild direkt in der Arbeitmappe zu speichern. Schreib da reset makro doch einfach so um, dass alle Zellenbaues gelöscht werden und nicht das ganze sheet.

Oder: ein Template sheet basteln, wo das logo vorhanden ist, und unsichtbar machen. Dann immer, wenn ein neues leeres blatt benötigt wird, das Template sheet kopieren und als neues sheet einfügen.

MfG
OVM

1 „Gefällt mir“

Das wird wohl die einfachste Lösung sein, danke.

MfG

Wenn ich dir helfen konnte würde ich mich freuen, wenn du meine Beiträge als hilfreich markierst (rechts neben beitrag)

Danke und schöne Woche

OVM

Das wird wohl die einfachste Lösung sein, danke.

MfG

Hi Frank,

tut mir leid, aber da kann ich Dir nicht helfen.

Viel Glück
carsten

Grüezi Frank

ich habe eine Tabelle in die ich über eine Userform Daten
einfüge.
Desweiteren gibt es ein Makro was einen Reset durchführt,
sozusagen die Urform des Blattes wieder herstellt.

Da würde ich jeweils eine neue Datei aus einer Vorlage erzeugen, das ist IMO einfacher als jedesmal alle Daten wieder zu löschen.

Jetzt soll in dieser Tabelle unser Firmenlogo erscheinen aber
weder von der Userform oder vom Makro beeinflusst werden.
Wenn ich es per VBA direkt in der Tabelle ablege, wird es vom
„Reset“ - Makro wieder gelöscht.

Wie kann ich also eine Grafik dauerhaft hinterlegen?

Schreibe das Makro so um, dass es die Grafik nicht löscht.

Oder füge die entsprechend aufbereitete Grafik in die Kopfzeile des Dokumentes ein.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Frank,

dazu müsste man wissen, was genau der Reset verursacht.
Ich vermute fast, er löscht das ganze Tabellenblatt.
Kannst Du den Code von dem Reset-Makro mal posten?
Gruß,
Ptonka

Hallo Ptonka,

Genau!

Sub alles_wiederherstellen()

’ alles_wiederherstellen Makro

Sheets(„Schicht1“).Select
Cells.Select
Selection.Delete Shift:=xlUp
'Sheets(„Bild“).Select
'Cells.Select
'Selection.Copy
'Sheets(„Schicht1“).Select
'ActiveSheet.Paste
Sheets(„Urlaubsplan“).Select
Range(„Tabellenkopf“).Select
Selection.Copy
Sheets(„Schicht1“).Select
Range(„A1“).Select
ActiveSheet.Paste
Sheets(„Urlaubsplan“).Select
Range(„Schicht1“).Select
Selection.Copy
Sheets(„Schicht1“).Select
Range(„A7“).Select
ActiveSheet.Paste
Cells.Select
Cells.EntireColumn.AutoFit
Cells.EntireRow.AutoFit
Range(„D2“).Select
ActiveSheet.DrawingObjects.Delete
'Kopiert aus Urlaubsplan Tabellenkopf links
Rows(„2:3“).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range(„A2“).Select
ActiveCell.FormulaR1C1 = „Personalplanung“
With ActiveCell
Range(.Offset(0, 0), .Offset(0, 7)).Select
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
With ActiveCell.Characters(start:=1, Length:=15).Font
.Name = „Arial“
.FontStyle = „Bold“
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End With
Range(„A3“).Select
ActiveCell.FormulaR1C1 = „Schicht 1“
With ActiveCell
Range(.Offset(0, 0), .Offset(0, 7)).Select
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
With ActiveCell.Characters(start:=1, Length:=15).Font
.Name = „Arial“
.FontStyle = „Bold“
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End With
Range(„B2:h2“).Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Rows(„4:4“).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range(„B3:h3“).Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With

Sheets(„Schicht2“).Select
Cells.Select
Selection.Delete Shift:=xlUp
Sheets(„Urlaubsplan“).Select
Range(„Tabellenkopf“).Select
Selection.Copy
Sheets(„Schicht2“).Select
Range(„A1“).Select
ActiveSheet.Paste
Sheets(„Urlaubsplan“).Select
Range(„Schicht2“).Select
Selection.Copy
Sheets(„Schicht2“).Select
Range(„A7“).Select
ActiveSheet.Paste
Cells.Select
Cells.EntireColumn.AutoFit
Cells.EntireRow.AutoFit
Range(„D2“).Select
ActiveSheet.DrawingObjects.Delete
'Kopiert aus Urlaubsplan Tabellenkopf links
Rows(„2:3“).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
'fügt 2 neue Zeilen ein
Range(„A2“).Select
ActiveCell.FormulaR1C1 = „Personalplanung“
With ActiveCell
Range(.Offset(0, 0), .Offset(0, 7)).Select
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
With ActiveCell.Characters(start:=1, Length:=15).Font
.Name = „Arial“
.FontStyle = „Bold“
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End With
'Erstellt Überschrift
Range(„A3“).Select
ActiveCell.FormulaR1C1 = „Schicht 2“
With ActiveCell
Range(.Offset(0, 0), .Offset(0, 7)).Select
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
With ActiveCell.Characters(start:=1, Length:=15).Font
.Name = „Arial“
.FontStyle = „Bold“
.Size = 20
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End With
Rows(„4:4“).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
'Erstellt Überschrift
Range(„B2:H2“).Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
'Zentriert Überschrift
Range(„B3:H3“).Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
'Zentriert Überschrift

Sheets(„Urlaubsplan“).Select
Range(„D2“).Select
Application.SendKeys ("{esc}")
'Markierung aufheben


End Sub

Ja, dann wähle doch eine Zelle rechts von den datem und Platziere dort dein Logo. Dann machst Du einfach den Range(„A1:smiley:65536“).select.
Grüsse Sebastian

Hallo Frank, selbst habe ich auch so ein Problem schon gehabt.

Zum ersten habe ich mein Logo in den Kopf der Tabelle untergebracht und mein Lösch-Makro so gestaltet, dass es nur die eingegebenen Werte löscht. Mit dem Makrorekorder kann man die Makros leicht nach den eigenen Wünschen erzeugen.
Und zum zweiten kann man auch in Excel Kopf- und Fußzeilen einrichten. Vielleicht kann man dort auch ein Logo unterbringen. Das habe ich aber noch nicht probiert. Ansonsten klappt es mit den Kopf- und Fußzeilen gut.

Viel Erfolg beim probieren
Roland57