Código para guardar una imagen con nombre de celda

Hola, buen día, en el foro me aportaron este excelente código:

Sub ejemplo2()
'Por.DAM
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
For Each img In ActiveSheet.DrawingObjects
If img.Top >= Cells(i, "A").Top And img.Top < Cells(i + 1, "A").Top Then
img.Select
img.CopyPicture
ActiveSheet.Shapes.AddChart
ActiveSheet.ChartObjects(1).Select
With Selection
.Chart.Paste
.Chart.Export "C:\Users\Luz\Desktop\KCM\Nueva carpeta\" & Cells(i, "A").Value & ".JPEG"
.Delete
End With
Exit For
End If
Next
Next
End Sub

Y me funciona bien hasta cierto punto, ya que en cierto momento me marca un mensaje de error "El error 76 en tiempo de ejecución, no se encontró la ruta de acceso", pero lo raro es que las otras imágenes si las guarda como debe, solo me aparece en algunas imágenes, yo deseo guardar alrededor de 500 con el nombre de una celda y algunas si lo hace, pero otras no, sabrán porque? O que código anexaría para que si hay error, continué con la siguiente imagen.

Tengo Excel 2010

Saludos Cordiales

1 respuesta

Respuesta
1

Revisa que la imagen se encuentre dentro de la fila, si no está dentro de la fila puede ocurrir el error.

Para brincar el error y pasar a la siguiente imagen, en la macro, después de esta línea

'Por. DAM

Agrega esta línea

On Error Resume Next

Hola experto, le comento que ya revise las imágenes y si están dentó de la fila, desconozco si sea por el formato de la imagen, pero no creo, en este caso me recomendaría guardar manualmente las que faltan?

¿Siempre se detiene en la misma imagen?

Tal vez la macro tiene problemas al momento de guardar, puede que está guardando y también está intentando, al mismo tiempo, poner otra imagen. Entonces si tienes identificadas las imágenes que no se guardaron en la primera ejecución, podrías ponerlas en otro archivo y ejecutar la macro nuevamente para que las guarde.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas