Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Große Bilder in Excel-Datei aufspüren
#11
Dann werde ich vorsichtshalber doch für jede Datei eine Sicherheitskopie zunächst machen und sie zumindest überfliegen, um ausschließen zu können, dass sich irgendwo doch ein größeres Übel eingeschlichen hat. In den Dateien steckt jede Menge Lebenszeit schon drin. Da will ich dann doch lieber etwas vorsichtiger sein. ^^ Danke jedenfalls für deine Mühen schonmal. :) 
Antworten Top
#12
Mir ist ein erstes Problem aufgefallen. Bei den Bildern ist unter den Eigenschaften die Abhängigkeit von der Zellposition und  -größe verloren gegangen. Gibt es eine Möglichkeit, wie ich das für alle Bilder einer Datei in einem Schritt wieder anstellen kann, unabhängig davon, in welchem Tabellenblatt sie sich befinden? Ich krieg das bisher nur für ein gesamtes Tabellenblatt, nicht aber für die jeweils ganze Datei hin, die aus etlichen Tabellenblättern besteht.
Antworten Top
#13
Hallo,

hab die entsprechende Zeile in den Code eingefügt.
Lass es einfach nochmal drüber laufen.

Code:
Sub GestauchteBilderVerkleinern()
 Dim dblLeft As Double, dblTop As Double
 Dim oShape As Shape, oWs As Worksheet
 Application.ScreenUpdating = False
 For Each oWs In ActiveWorkbook.Worksheets
   For Each oShape In oWs.Shapes
     With oShape
       If .Type = 13 Then
         dblLeft = .Left
         dblTop = .Top
         .Copy
         With .Parent.Pictures.Paste
           .Left = dblLeft
           .Top = dblTop
           .Placement = xlMoveAndSize
         End With
         .Delete
       End If
     End With
   Next oShape
 Next oWs
 Application.ScreenUpdating = True
End Sub

Gruß Uwe
Antworten Top
#14
Hallo,

und hier mit der Korrektur allein:

Code:
Sub BilderVonGroesseUndPositionAbhaengigEinstellen()
 Dim oShape As Shape, oWs As Worksheet
 For Each oWs In ActiveWorkbook.Worksheets
   For Each oShape In oWs.Shapes
     With oShape
       If .Type = 13 Then
         .Placement = xlMoveAndSize
       End If
     End With
   Next oShape
 Next oWs
End Sub

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Philodoof
Antworten Top
#15
Der Code scheint funktioniert zu haben. :) Habe aber natürlich nur stichprobenhaft geschaut, ob Bilder nun abhängig sind von ihren Zellen. 

Bin jetzt mit allen Dateien durch und habe auch die Sicherheitskopien gelöscht. Was mir aufgefallen ist: in wenigen Fällen hat der Verkleinerungscode dazu geführt, dass sich der Speicherplatz erhöht hat. Das verstehe ich nicht so ganz. Huh Leider hatte ich den erten dieser Fälle wie in Trance von den monotonen Schrittabfolgen gespeichert, ehe ich realisierte, dass das dumm war. Da waren auch schon viele Dateien erfolgreich durchlaufen und ich ahnte nicht wirklich mehr etwas derartiges. Alles in allem hat es sich aber sehr gelohnt. Ich konnte grob 700 MB wegschlagen mit dem Code. Das ist ja schon ein enormer Gewinn. :)

Dann hoffe ich jetzt, dass mir nicht noch ein oberflächlich unsichtbares Problem auffällt.
Antworten Top
#16
Hallo,

dass sich der Speicherbedarf erhöht, könnte daran liegen, dass das Bild kleiner war als in Excel dargestellt.

Gruß Uwe
Antworten Top
#17
Aaaaahh. Ja das ist eine plausible Erklärung. :) In manchen Fällen habe ich zu kleine Bilder gefunden und dann damit Vorlieb genommen sie zu strecken, wenngleich es der Grafik mitunter abträglich war. 
Antworten Top
#18
Ach herrje, habe gerade erst gesehen, dass das alles immer nur bis zur jeweils 133 Zeile eines Tabellenblattest funktioniert hat. :( Alles darunter sind jetzt nadeldünne Bilder. :( Als ich geguckt hatte ob es funktioniert hat, habe ich die Tabellenblätter oben durchgeklickt, aber nie so weit heruntergescrollt. Ich schätze jetzt habe ich erstmal, Tage, wenn nicht sogar Wochen vor mir, alles verloren gegangene neu zu machen. Noch weiß ich nicht wieviele Bilder insgesamt betroffen sind und wie groß der Schaden somit insgesamt ist. Hätte ich doch lieber die Sicherheitskopien nicht heute morgen gelöscht.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste