Codigo:
Sub CopiarImagen()
Dim shp As Shape
Dim HojaOrigen As Worksheet
Dim ws As Worksheet
Dim Nuevo As Shape
Dim C As Long
Set HojaOrigen = ActiveSheet
' Verifica que haya una imagen seleccionada
On Error Resume Next
Set shp = HojaOrigen.Shapes(Selection.Name)
On Error GoTo 0
If shp Is Nothing Then
MsgBox "Selecciona primero la imagen que quieres copiar.", vbExclamation
Exit Sub
End If
Application.ScreenUpdating = False
shp.Name = "Logo"
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> HojaOrigen.Name And ws.Visible = xlSheetVisible Then
' Borra una copia anterior para no duplicar
On Error Resume Next
ws.Shapes("Logo").Delete
On Error GoTo 0
shp.Copy
ws.Activate
ws.Paste
Set Nuevo = ws.Shapes(ws.Shapes.Count)
With Nuevo
.Name = "Logo"
.Left = shp.Left
.Top = shp.Top
.Placement = shp.Placement
End With
C = C + 1
End If
Next ws
Application.CutCopyMode = False
HojaOrigen.Activate
shp.Select
Application.ScreenUpdating = True
MsgBox "Imagen copiada en " & cantidad & " hojas.", vbInformation
End Sub
⭐ Si te gustó, por favor regístrate en nuestra Lista de correo y Suscríbete a mi canal de YouTube para que estés siempre enterado de lo nuevo que publicamos
