Rob ha scritto di un problema che stava riscontrando durante la rimozione di immagini da un foglio di lavoro. Ha delle macro che aggiungono un’immagine (una firma) come forma, ma quando in seguito tenta di eliminare l’immagine, non riesce a trovarla nella raccolta Shapes.

Ci sono un paio di cose da verificare. Prima di tutto, dovresti assicurarti di utilizzare la sintassi corretta per eseguire l’eliminazione. Controlla per assicurarti di includere esplicitamente l’oggetto di lavoro nel codice.

Ad esempio, la seguente riga non funzionerà:

Shapes(1).Delete

Invece, devi specificare il foglio, usando un codice simile a una qualsiasi delle seguenti righe:

ActiveSheet.Shapes(1).Delete Sheets("Sheet1").Shapes(1).Delete Sheets(1).Shapes("Signature").Delete

Se si determina che l’immagine prevista non è nella raccolta Shapes, è possibile che Excel (per strani motivi noti solo a Excel) abbia spostato l’immagine in una raccolta diversa, come la raccolta Immagini. Se lo sospetti, prova a utilizzare la seguente macro:

Sub WhatAmI()

Dim sTemp As String

sTemp = "You selected this type of object: " & TypeName(Selection)

sTemp = sTemp & vbCrLf     sTemp = sTemp & "It's name is " & Selection.Name     MsgBox sTemp End Sub

Seleziona l’immagine della firma, quindi esegui la macro. Dovresti vedere una finestra di messaggio che indica il tipo di oggetto selezionato, insieme al suo nome.

È quindi possibile utilizzare le informazioni per modificare la macro in modo che elimini l’immagine, come desiderato.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (10037) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: