¿Cómo correr ActiveSheet.Shapes.AddPicture en rango variable y "bypaseando" los errores?
Espero se encuentre bien.
Por favor apóyeme con lo siguiente: tengo dos columnas A y B. En la B están los url de varias imágenes online (a partir de B2). En la A (a partir de A2) quiero correr ActiveSheet. Shapes. AddPicture con esos url para mostrar las imágenes. El rango de B es variable y en ocasiones tiene filas vacías (que no pueden eliminarse) y url que no funcionan (cuando se abren en el browser da un error en el site, no tienen imagen asociada) lo cual evita que la macro se corra para el resto de celdas de B. Como "On Error Resume Next" y "On Error GoTo 0" están incluidos, no muestra ningun error sino que la rutina continúa pero sin evaluar el resto de las url como dije antes. Los incluí buscando que pasara por encima de los errores y corriera para todas las celdas de B. He tratado varios procedimientos alternativos así como ubicar los manejadores de errores en distintas líneas del código pero sin éxito. Este código es parte de otro más extenso, lo planteo aparte en esta pregunta para simplificar. Uso excel 2007 SP2.
1) Código:
Sub AddImgEnRango()
Dim RangoImagen As Range
On Error Resume Next
ActiveSheet.Range("A2").Select
Do While ActiveCell.offset(0, 1).Value <> Empty
Set RangoImagen = ActiveCell.offset(0, 1)
ActiveSheet.Shapes.AddPicture _
Filename:=RangoImagen.Value, _
linktofile:=msoFalse, savewithdocument:=msoCTrue, _
Left:=ActiveCell.Left, Top:=ActiveCell.Top, Width:=100, Height:=100
ActiveCell.offset(1, 0).Select
On Error GoTo 0
Loop
End Sub
2) Hoja Ejemplo: