Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1736to1740
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

VBA - Frage zu DateiPerShell

VBA - Frage zu DateiPerShell
26.01.2020 16:35:06
Uli
Hallo.
Ich benutze unten stehenden Code um ein Bild aus einem Ordner zu laden.
Es funktioniert auch.
Leider nur aus dem ersten Blatt
Benutze den Code in 3 unterschiedlichen Blättern.
Habe den Code für alle 3 Blatter mit 3 unterschiedlichen Ordnern zum Laden der Bilder angepasst.
Der Code funktioniert leider nur auf dem ersten Blatt. Wenn ich die Button in den beiden anderen Blättern drücke passiert nicht.
Eventuell kann mir jemand einen Tipp geben ?
Danke
Sub DateiPerShellObjectStarten()
Dim appSh As Object
Set appSh = CreateObject("Shell.Application")
appSh.Open "C:TempKLE.jpg"
Set appSh = Nothing
End Sub

41
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 16:39:13
Regina
Hi,
verlinkst Du bitte deine Beiträge in den unterschiedlichen Foren miteinander?
Außerdem wäre es hilfreich, wenn Du eine Beispieldatei hochladen würdest, so läßt sich die Frage wohl nicht beantworten.
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
26.01.2020 16:52:52
Uli
Hallo. Danke für den Hinweis-
Soll ich die ganze Excel Datei hier hochladen ?
AW: VBA - Frage zu DateiPerShell
26.01.2020 16:55:08
Regina
Zumindest die datei mit den 3 Tabellenblättern und dem Code. Solltes sich darauf sensible Daten befinden, musst Du die vorher löschen.
Bekommst Du die Verlinkung zwischen den Foren auch noch hin?
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
26.01.2020 17:00:11
Uli
Nein das verlinken kann ich nicht
AW: VBA - Frage zu DateiPerShell
26.01.2020 17:02:13
Regina
ok, mache ich für Dich: Vorgehensweise: Adresse in der Adressleiste des Browsers kopieren und dann im Beitrag einfügen.
https://www.ms-office-forum.net/forum/showthread.php?t=365329
gruß
regina
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 17:22:32
Regina
Hi,
vielleicht bin ich ja blind, aber ich kann den Code aus Deiner Fragestellung in dieser Datei nicht finden:?
Sub DateiPerShellObjectStarten()
Dim appSh As Object
Set appSh = CreateObject("Shell.Application")
appSh.Open "C:TempKLE.jpg"
Set appSh = Nothing
End Sub
Hast Du da zu viel raus gelöscht?
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
26.01.2020 17:45:57
Uli
Oh man...bin schon ganz durcheinander
Hatte den Code dann ausgetauscht
Unter steht der macht aber den gleichen fehler
Sub Frühschicht_laden()
Dim appSh As Object
Set appSh = CreateObject("Shell.Application")
appSh.Open "C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Frühschicht\" & Format(Now, " _
dd_mm_yyyy_") & ActiveSheet.Name & ".jpg"
Set appSh = Nothing
End Sub

Sub Spätschicht_laden()
Dim appSh As Object
Set appSh = CreateObject("Shell.Application")
appSh.Open "C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Spätschicht\" & Format(Now, " _
dd_mm_yyyy_") & ActiveSheet.Name & ".jpg"
Set appSh = Nothing
End Sub

Sub Nachtschicht_laden()
Dim appSh As Object
Set appSh = CreateObject("Shell.Application")
appSh.Open "C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Nachtschicht\" & Format(Now, " _
dd_mm_yyyy_") & ActiveSheet.Name & ".jpg"
Set appSh = Nothing
End Sub

Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 18:07:47
Regina
Hi,
der Fehler liegt wohl darin, dass Du Beim Anbinden der makros an die jeweilige Schaltfläche durcheinander gekommen bist. So war auf dem Blatt "Frühschicht" der Code für die "Spätschicht" angekoppelt. Da in dem Pfad zu dem Bild der Name des aktiven Blattes verwendet wird, wurde das dann in dem entsprechenden Ordner nicht gefunden.
Die Beschriftungen der schaltflächen passten auch nocht immer zum Blattnamen, aber das hatte keine Auswirkung.
Ich habe Dir das ganze Mal neu verbunden. Teste mal, ob es jetzt klappt.
Wenn es immer noch nocht funktioniert, überprüfe bitte, ob die Pfade korrekt sind. Das kann ich hier natürlich nicht testen. Wenn der Pfad nicht gefunden wird, erfolgt nämlich keine Fehlermeldung und man hat das gefühl "da passiert nichts".
https://www.herber.de/bbs/user/134720.xlsm
Gruß
Regina
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 18:23:38
Uli
Hallo. Vielen dank .
Das mit dern Verknüpfungen hatte schon seine Richtigkeit.
Weil die Frühschicht den Bericht der Nachtschicht laden muss,die Spätschicht den Bericht der Frühschicht und die Nachtschicht den Bericht der Spätschicht. Die Button "Frühschicht laden" Soll das abgespeicherte Bild im Ordner Archiv\Frühschicht laden. Und zwar das zuletzt gespeicherte.
Bin mal ratlos
AW: VBA - Frage zu DateiPerShell
26.01.2020 18:28:44
Regina
ok, die Info hatte ich nicht. Die Codes sind auf jeden Fall ok. Dann tippe ich darauf, dass die Ppad und Dateiangaben nicht stimmen. Das baust Du ja zusammen.
Setze mal vor den Ausruf des Bildes eine MessageBox mit dem zusammengbauten Pfad:
MsgBox "C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Nachtschicht\" & Format(Now, "dd_mm_yyyy_") & ActiveSheet.Name & ".jpg"
Überprüfe dann mal, ob exakt dieser Pfad und diese Datei existiert. Wie schon geschrieben, wenn der Aufruf des Bildes ins Leere geht, erfolgt keine Fehlermeldung.
Gruß
Regina
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 18:42:11
Regina
Nachtrag:
ich vermute, es könnte an dem Datum liegen, dass Dir "Now" liefert. Damit hast Du ja immer das aktuelle datum, wurde das Bilf evtl. unter dem Datum des Vortages gespeichert?
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:00:30
Uli
also, habe Box gibt aus :
C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Nachtschicht\26_01_2020_Frühschicht.jpg
obwohl eigentlich dort 26_01_2020_Nachtschicht.jpg
stehen müsste ...
Die Pfade sind alle richtig gesetzt aber es kommt dennoch die Meldung !
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:06:50
Uli
Wenn ich den Button der Frühschicht das Makro der Frühschicht zuweise den der Spät dem Makro der Spät und dem der Nacht aus das Makro der Nacht dann funktioniert alles.
Wie kann ich das lösen, das die Frühschicht das gespeicherte Bild der Nachtschicht lädt ?
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:10:54
Regina
Hi,
dann haben wir ja zumindest schon mal den Fehler ...
da Du ja für jedes Blatt ein eigenes Makro geaut hast, könntest Du doch statt "ActiveSheet.Name" fest z.B. "Nachtschicht" schreiben.
"C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Nachtschicht\" & Format(Now, "dd_mm_yyyy_") & "Nachtschicht.jpg"

AW: VBA - Frage zu DateiPerShell
26.01.2020 19:19:04
Uli
Jaaaaaaaaaaaaaaaaaaaaaa
Danke , Du glaubst gar nicht wie dankbar ich Dir bin.
Klasse,es funktioniert .
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:30:23
Regina
...na prima, dann "ist die Kuh ja vom Eis" !
Eine Sache würde ich noch zu Bedenken geben: Ist immer gewährleistet, dass das Bild unter dem datum abgespeichert wird, an dem es auch wieder geöffnet werden soll? Konkret: kann es sein, dass die Frühschicht am 27.1.2020 versucht das Bild der nachtschickt zu öffnen und dies evtl. noch am 26.1.2020 gespeichert wurde?
Wenn ja, müsste man den Codenoch erweitern und das Bild mit dem "neuesten" Datum herausfinden. Meld Dich dann nochmal.
Ansonsten noch einen schönen Restsonntag!
Gruß
Regina
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:35:23
Uli
ja da hast du recht.
es soll immer das zuletzt gespeicherte Bild der anderen Schicht zur Verfügung gestellt werden
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:42:42
Regina
... ok, hab da mal was vorbereitet am Beispiel Frühschicht_laden:
Sub Frühschicht_laden()
Dim appSh As Object
Dim lngMax As Long
Dim strDatNam As String
Dim strDatTmp As String
Const strPfad As String = "C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Frühschicht\"
strDatNam = Dir(strPfad & "*_Frühschicht.jpg")
strDatTmp = strDatNam
lngMax = CLng(DateSerial(Mid(strDatNam, 7, 4), Mid(strDatNam, 4, 2), Left(strDatNam, 2)))
Do While strDatTmp  ""
If CLng(DateSerial(Mid(strDatTmp, 7, 4), Mid(strDatTmp, 4, 2), Left(strDatTmp, 2))) > lngMax  _
Then
lngMax = CLng(DateSerial(Mid(strDatTmp, 7, 4), Mid(strDatTmp, 4, 2), Left(strDatTmp, 2)))
strDatNam = strDatTmp
End If
strDatTmp = Dir()
Loop
Set appSh = CreateObject("Shell.Application")
appSh.Open strPfad & strDatNam
Set appSh = Nothing
End Sub
Der Code bastelt aus dem vorangestellten Tag_Monat_Jahr-Konstukt ein Datum und vergleicht alle Dateien im Ordner deren name auf "Frühschicht" endet bis die Datei mit dem neuesten Datum gefunden ist.
Frohes Testen!
Gruß Regina
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:50:47
Uli
Da wird mir dies Angezeigt :
Laufzeitfehler 13 Typen unverträglich
in dieser zeile:
lngMax = CLng(DateSerial(Mid(strDatNam, 7, 4), Mid(strDatNam, 4, 2), Left(strDatNam, 2)))
AW: VBA - Frage zu DateiPerShell
26.01.2020 19:56:36
Regina
Ok, der Fehler taucht auf, denn die rausgefilterten Zeichen kein gültiges Datum darstellen. Sind in dem Ordner noch andere dateien gespeichert, die als letztes "_Frühschicht.jpg" heißen und die nicht mit "DD_MM_YYYY" anfangen? Wenn der Code auf den Laufzeitfehler läuft, zeige mal mit der Maus auf strDatNam. Welchen Inhlat hat die Variable?
Wenn ja, müssen die Dateien dort bleiben?
AW: VBA - Frage zu DateiPerShell
26.01.2020 20:04:13
Uli
Habe den Fehler gefunden.
Ich hatte keinen Unterstrich vor dem Frühschicht. Den Unterstrich habe ich aus Deinem Code raus genommen. Jetzt läuft es.
Hast mir das zweite mal Heute das "Leben" gerettet.
Echt klasse.
Danke
Anzeige
AW: VBA - Frage zu DateiPerShell
26.01.2020 20:13:57
Uli
Jetzt habe ich den Code von Dir auch für die beiden anderen Schichten gesetzt und bekomme den Fehler :
Sub ist dabei Gelb markiert und der Fehler heißt:
Fehler beim Kompilieren
...........können nur Kommentare stehen

Sub Spätschicht_laden()
End Sub

Dim appSh As Object
AW: VBA - Frage zu DateiPerShell
26.01.2020 20:24:08
Regina
... da ist Dir beim Kopieren evtl ein End Sub mitten in den Code gerutscht
AW: VBA - Frage zu DateiPerShell
26.01.2020 22:01:52
Uli
ja das war der Fehler.
Jetzt ist alles "erstmal" gut.
Danke schön und noch einen schönen Sonntag Abend.
AW: VBA - Frage zu DateiPerShell
26.01.2020 22:16:44
Uli
Wenn ich jetzt die Bilder unter dem Format DD_MM_YYYY_hh.mm abspeichern möchte. Also imm die Urzeit dazu .
Kann man dann mit dem Makro "laden" auch die neuste Datei aus dem Ordner holen ? Wenn zum Beispiel in der Frühschicht zweimal gespeichert wurde ?
Anzeige
AW: VBA - Frage zu DateiPerShell
27.01.2020 15:32:12
Regina
Hi,
sorry, dass ich jetz terst schreibe, aber tagsüber haben die zahlenden Kunden vVorrang :-))
Wenn Du wirklich immer die neuste Datei haben willst, würde ich das "Gespeichert-Datum" auswerten. Die Uhrzeit aus dem Dateinamen auszulesen, finde ich zu aufwändig. Mit dem folgenden Code wird die neueste jpg-Datei mit dem Zusatz "Frühschicht" aus dem angegebenen Ordner geöffnet:
Sub Frühschicht_laden()
Dim appSh As Object
Dim lngMax As Long
Dim strDatNam As String
Dim strDatTmp As String
Dim dteFile As Date
Dim dteLast As Date
Const strPfad As String = "C:\Users\ElCapitan\Desktop\Schichtübergabe\Archiv\Frühschicht\"
strDatNam = Dir(strPfad & "*Frühschicht.jpg")
strDatTmp = strDatNam
Do While strDatTmp  ""
dteFile = FileDateTime(strPfad & strDatTmp)
If dteFile > dteLast Then
strDatNam = strDatTmp
dteLast = dteFile
End If
strDatTmp = Dir()
Loop
Set appSh = CreateObject("Shell.Application")
appSh.Open strPfad & strDatNam
Set appSh = Nothing
End Sub
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
27.01.2020 17:40:50
Ulrich
Hallo.
Werde ich mir überlegen.
Mir ist soeben ein anders Problem gekommen.
Die Datei Schichtübergabe liegt jetzt auf dem Firmenserver.
Wenn ich Sie von meinem Acount versenden möchte, dafür habe ich ja meine Emailadresse im Code stehen.
Nun soll die Datei aber von dem versendet werden der gerade eingeloggt ist.
Wäre das machbar ?
Danke Uli
Sub Mail_senden_Frühschicht()
If MsgBox("Du möchtest das Protokoll absenden und speichern?", vbYesNo) = vbYes Then
Dim rng As Range
Dim olApplication As Object
Dim objEMail As Object
Set olApplication = CreateObject("Outlook.Application")
Set objEMail = olApplication.CreateItem(olMailItem)
With objEMail
Set rng = Sheets("Frühschicht").Range("A1:H49")
.SentOnBehalfOfName = "Felxible_adresse"
.To = "Empfänger_adresse"
.Subject = "Übergabe Frühschicht_MB"
.HTMLBody = RangetoHTML(rng)
.Send
End With
Set rng = Nothing
Set objEMail = Nothing
AW: VBA - Frage zu DateiPerShell
27.01.2020 18:00:10
Regina
Hi,
wenn Du die Zeile:
.SentOnBehalfOfName = "Felxible_adresse"
raus nimmst, sollte die Mail von dem Standardmailkonto des entsprechenden Outlook-Clients versendet werden. Ich habe die Zeile bei mir auskommentiert und der Cod egeneriert eine Mail, bei der "Ich" als Absender stehe. Die Zeile muss eigentlich nur rein, wenn ich ein anderes als das Standardkonto als Absender verwenden möchte.
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
27.01.2020 18:20:07
Ulrich
danke, funktioniert.
Allerdings steht nicht der Username als Absender sondern nur die Domain Endung wie zum Beispiel web.de
kann man den Usernamen noch auslesen ?
AW: VBA - Frage zu DateiPerShell
27.01.2020 18:22:31
Regina
Wo steht das?
Was als Absender angegeben wird, ist ja eine Einstellung in Outlook (datei Kontoeinstellungen - Ändern)
AW: VBA - Frage zu DateiPerShell
27.01.2020 18:57:47
Ulrich
Es funktioniert doch so wie Du geschrieben hast. Es wird der Name angezeigt.
Eine Kleinigkeit habe ich noch .
Wenn die Tabelle abgesendet wird und das Bild gespeichert, kann man dann auch sofort die Tabelle an sich speichern. So das man beim beenden nicht mehr gefragt wird ob man speichern möchte ?
Sub Mail_senden_Frühschicht()
If MsgBox("Du möchtest das Protokoll absenden und speichern?", vbYesNo) = vbYes Then
Dim rng As Range
Dim olApplication As Object
Dim objEMail As Object
Set olApplication = CreateObject("Outlook.Application")
Set objEMail = olApplication.CreateItem(olMailItem)
With objEMail
Set rng = Sheets("Frühschicht").Range("A1:H49")
.To = "XXXXXXXXXXXXXX"
.Subject = "Übergabe Frühschicht_MB"
.HTMLBody = RangetoHTML(rng)
.Send
End With
Set rng = Nothing
Set objEMail = Nothing
'ArbeitsmappeSpeichern()
ActiveSheet.Unprotect Password:=""
Application.ScreenUpdating = False
ActiveSheet.Range("A1:H49").CopyPicture Appearance:=xlScreen, Format:=xlPicture
With ActiveSheet.ChartObjects.Add(0, 0, Range("A1:H49").Width, Range("A1:H49").Height).Chart
.ChartArea.Select
.Paste
.Export "T:\HSM\Schichtübergabe\Archiv\Frühschicht\" & Format(Now, "DD_MM_YYYY") &  _
ActiveSheet.Name & ".jpg"
.Parent.Delete
End With
Application.ScreenUpdating = True
ActiveSheet.Protect Password:=""
End If
End Sub

AW: VBA - Frage zu DateiPerShell
27.01.2020 20:54:42
Regina
Hi,
setz mal vor das End Sub folgende Zeile:
ThisWorkbook.Save
Gruß Regina
AW: VBA - Frage zu DateiPerShell
27.01.2020 20:59:23
Ulrich
Mal wieder vielen Dank.
So lernt man in keinen Schritten
AW: VBA - Frage zu DateiPerShell
27.01.2020 21:06:50
Regina
... zur Erklärung:
ActiveWorkbook ist die Datei, die gerade "vorne" d.h. aktiv ist (würde hier auch funktionieren)
ThisWorkbook ist die Datei, in der sich der Code befindet
Workbooks("Datei.xlsx") apricht eine konkrete geöffnete Datei an
Gruß Regina
AW: VBA - Frage zu DateiPerShell
28.01.2020 06:53:21
Uli
Guten Morgen.
Gerne würde ich mit diese Mail noch eine Datei versenden die in einem anderen Ordner liegt.
Es ist eine .xlsx Datei. Sie soll nur als Anhang eingefügt werden.
Ist das machbar ?
Sub Mail_senden_Frühschicht()
If MsgBox("Du möchtest das Protokoll absenden und speichern?", vbYesNo) = vbYes Then
Dim rng As Range
Dim olApplication As Object
Dim objEMail As Object
Set olApplication = CreateObject("Outlook.Application")
Set objEMail = olApplication.CreateItem(olMailItem)
With objEMail
Set rng = Sheets("Frühschicht").Range("A1:H49")
.To = ""
.Subject = "Übergabe Frühschicht_MB"
.HTMLBody = RangetoHTML(rng)
.Send
End With
Set rng = Nothing
Set objEMail = Nothing
'ArbeitsmappeSpeichern()
ActiveSheet.Unprotect Password:=""
Application.ScreenUpdating = False
ActiveSheet.Range("A1:H49").CopyPicture Appearance:=xlScreen, Format:=xlPicture
With ActiveSheet.ChartObjects.Add(0, 0, Range("A1:H49").Width, Range("A1:H49").Height).Chart
.ChartArea.Select
.Paste
.Export "T:\HSM\Schichtübergabe\Archiv\Frühschicht\" & Format(Now, "DD_MM_YYYY") &  _
ActiveSheet.Name & ".jpg"
.Parent.Delete
End With
Application.ScreenUpdating = True
ActiveSheet.Protect Password:=""
End If
ActiveWorkbook.Save
End Sub

AW: VBA - Frage zu DateiPerShell
28.01.2020 11:45:15
Uli
Hallo
Habe es silber raus gefunden ...
.Attachments.Add "................"
AW: VBA - Frage zu DateiPerShell
28.01.2020 21:06:34
Ulrich
Hallo.
Leider hat sich ein neues Problem aufgetan.
Soald ich mit dem Button die Tabelle abgesendet habe und als jpg gespeichert, ist die Tabelle die in Excel auf ist ein Bild und keine Tabelle mehr.
Bin ratlos:
Sub Mail_senden_Frühschicht()
If MsgBox("Du möchtest das Protokoll absenden und speichern?", vbYesNo) = vbYes Then
Dim rng As Range
Dim olApplication As Object
Dim objEMail As Object
Set olApplication = CreateObject("Outlook.Application")
Set objEMail = olApplication.CreateItem(olMailItem)
With objEMail
Set rng = Sheets("Frühschicht").Range("A1:J70")
.To = "xxxxxxxxxxxxxx"
.Subject = "Übergabe Frühschicht_MB"
.HTMLBody = RangetoHTML(rng)
.Attachments.Add "T:\Montage\Focus Factory_Tagesdurchschnitt OEE\OEE_Tagesdurchschnitt.xlsx" _
.Send
End With
Set rng = Nothing
Set objEMail = Nothing
'ArbeitsmappeSpeichern()
ActiveSheet.Unprotect Password:=""
Application.ScreenUpdating = False
ActiveSheet.Range("A1:J70").CopyPicture Appearance:=xlScreen, Format:=xlPicture
With ActiveSheet.ChartObjects.Add(0, 0, Range("A1:J70").Width, Range("A1:J70").Height).Chart
.ChartArea.Select
.Paste
.Export "\\SOE-DATA01\openshare\Personal\bullmu\Schichtübergabe\Montage\Archiv\Frü _
hschicht\" & Format(Now, "DD_MM_YYYY") & ActiveSheet.Name & ".jpg"
.Parent.Delete
End With
Application.ScreenUpdating = True
ActiveSheet.Protect Password:=""
End If
End Sub

AW: VBA - Frage zu DateiPerShell
28.01.2020 21:12:47
Ulrich
Oh man-----ich hatte den blattschutz drin............zu viel Monitor.......
AW: VBA - Frage zu DateiPerShell
28.01.2020 21:19:08
Regina
Hi,
ich bin zurzeit auf Dienstreise und habe heute und morgen keine Zeit. Bin da auch etwas überfragt und müsste "basteln".
Mach doch dazu mal ein neues Thema auf, evtl. "beißt" da jemand drauf an. Sonst schaue ich am Freitag mal, was da schief ist.
Gruß
Regina
AW: VBA - Frage zu DateiPerShell
28.01.2020 21:39:12
Ulrich
Hallo
Habe den Fehler gefunden. War der Schreibschutz drin.............oh man zu viel vor dem Monitor.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige