• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Afbeeldingen automatisch verwijderen

Status
Niet open voor verdere reacties.

steef010

Gebruiker
Lid geworden
17 jun 2011
Berichten
9
Ik wil graag afbeeldingen automatisch verwijderen.
Dit doe ik met de volgende macro:

Range("F21:O32").Select
Selection.ClearContents
ActiveSheet.Shapes("Picture 1").Select
Selection.Delete
ActiveSheet.Shapes("Picture 2").Select
Selection.Delete

Het enige probleem is dat Picture 1 en Picture 2 niet altijd aanwezig zijn.
Zolang deze afbeeldingen erin staan, werkt de macro prima.
Wanneer de afbeeldingen niet aanwezig zijn, krijg ik telkens een foutmelding.
Kan ik er ook een regel in stoppen waardoor excel niks doet als deze 2 afbeeldingen niet aanwezig zijn?

Alvast bedankt.
 
Code:
Sub AfbeeldingenVerwijderen()
Dim SH As Shape
    For Each SH In ActiveSheet.Shapes
        SH.Delete
    Next
End Sub

Met vriendelijke groet,


Roncancio
 
Beste Roncancio,

Deze kwam ik ook al ergens anders tegen op t forum.
Als ik deze macro gebruik, worden de meeste afbeeldingen verwijderd, maar Picture 1 en Picture 2 blijven gewoon staan.
Bovendien is deze macro bedoeld voor de hele sheet en ik wil alleen in een bepaald bereik (F21:O32) de afbeeldingen verwijderen.
 
Code:
Sub AfbeeldingenVerwijderen()
Dim SH As Shape
    For Each SH In ActiveSheet.Shapes
        If SH.Top >= Rows(21).Top And SH.Top <= Rows(32).Top Then
            SH.Delete
        End If
    Next
End Sub

De afbeeldingen tussen rijen 21 en 32 worden verwijderd.
Eventueel kunnen we deze waardes uit een bepaalde cel halen.

Met vriendelijke groet,


Roncancio
 
Dit is nog steeds niet wat ik zoek helaas.
Deze macro haalt nog steeds niet Picture 1 en Picture 2 weg.
Bovendien worden op deze manier alle afbeeldingen in rij 21 tot 32 weggehaald.
Ik wil alleen de afbeeldingen in F21:O32 weghalen, de afbeeldingen in A t/m E moeten dus blijven staan. Op dit moment doet de macro dus precies het tegenovergestelde.

Bestaat er niet gewoon een regel waarbij je zegt: Als de bovenstaande afbeeldingen niet bestaan in F21:O32 dan moet je deze regel gewoon overslaan.
 
Oke, ik heb de macro iets gepimpt en nou verwijdert ie alles.
Nu is de enige uitdaging dus nog om niet de hele rijen te verwijderen, maar alleen het bereik F21:O32...
 
Om in een bepaald bereik te verwijderen kan je gebruik maken van Top icm Left.
Zoiets:
Code:
        If SH.Top >= Rows(21).Top And SH.Top <= Rows(32).Top And SH.Left >= Range("F21").Left And SH.Left <= Range("O32").Left Then

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan