Hola Via
Sólo se me ocurre una cosa:
Los iconos en el escritorio son archivos que precisamente se encuentran ubicados en la carpeta que corresponde al escritorio. Con mover el/los archivo/s que te interesen de ubicación, éstos desaparecen del escritorio.
Para encontrar la vía de acceso al escritorio:
Option Explicit
Private Declare Function SHGetSpecialFolderPath Lib "shell32.dll" Alias "SHGetSpecialFolderPathA" _
(ByVal hwnd As Long, ByVal sPath As String _
, ByVal Folder As Long, ByVal Create As Long) As Long
Public Function GetPathEscritorio() as string
Const MAX_PATH_LEN = 256
Dim s1 As String, lRc As Long
s1 = String(MAX_PATH_LEN , Chr(0))
lRc = SHGetSpecialFolderPath(0&, s1, 0&, 0&)
If lRc > 0 Then
s1 = UCase(Left(s1, InStr(1, s1, Chr(0)) - 1))
If Right(s1, 1) <> "\" Then s1 = s1 & "\"
GetPathEscritorio = s1
End If
End Function
Espero que te arregles.
Chao.