Alguien que me explique ActiveSheet.pinture

Necesito conocer mas a cerca del uso de las Macro para insertar Imágenes a celda de excel; formula u opción que me permita solo utilizar un código o el nombre del archivo y me de como resultado la Imagen que deseo. De antemano gracias por su tiempo.

1 Respuesta

Respuesta
1

Estos son algunos ejemplos

1. Si tienes creado un control activex image

Sub im()
'Por.DAM
    ruta = "c:\trabajo\varios\"
    arch = "foto1.jpg"
    ActiveSheet.Image1.Picture = LoadPicture(ruta & arch)
End Sub

2. Insertar una imagen en la hoja, estableciendo en la variable fotografia el objeto insertado, de esta forma puedes ocupara en la macro la imagen insertada utilizando el objeto fotografia

Sub im2()
'Por.DAM
    ruta = "c:\trabajo\varios\"
    arch = "foto1.jpg"
    Set fotografia = ActiveSheet.Pictures.Insert(ruta & arch)
End Sub

3. Solamente insertando la imagen en la hoja

Sub im3()
'Por.DAM
    ruta = "c:\trabajo\varios\"
    arch = "foto1.jpg"
    ActiveSheet.Pictures.Insert (ruta & arch)
End Sub

4. Para poner la imagen dentro de una celda

Sub im4()
'Por.Dante Amor
    ruta = "c:\trabajo\varios\"
    arch = "foto1.jpg"
    '
    Set fotografia = ActiveSheet.Pictures.Insert(ruta & arch)
    'asignamos el rango de celdas que ocupará la foto
    With Range("D4")
        Arriba = .Top
        Izquierda = .Left
        Ancho = .Offset(0, .Columns.Count).Left - .Left
        Alto = .Offset(.Rows.Count, 0).Top - .Top
    End With
    '
    With fotografia
        .Name = "foto de la imagen"
        .Top = Arriba
        .Left = Izquierda
        .Width = Ancho
        .Height = Alto
    End With
    '
    'eliminamos el objeto
    Set fotografia = Nothing
End Sub

5. Para insertar en un formulario en un control image

Private Sub UserForm_activate()
'Por.Dante Amor
    ruta = "c:\trabajo\varios\"
    arch = "foto1.jpg"
    Me.Image1.Picture = LoadPicture(ruta & arch)
End Sub

Son algunos ejemplos para insertar una imagen, tienes que conocer el nombre del archivo y la ruta.

Si no conoces el nombre y la ruta, puedes buscar el archivo y seleccionarlo

Sub im5()
'Por.Dante Amor
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "Seleccione archivo de excel"
        .Filters.Clear
        .Filters.Add "Todos", "*.*"
        .Filters.Add "imagen", "*.jpg"
        .FilterIndex = 2
        .AllowMultiSelect = False
        .InitialFileName = ThisWorkbook.Path
        '.Show
        If .Show Then
            ActiveSheet.Pictures.Insert (.SelectedItems.Item(1))
             .SelectedItems.Item (1)
        End If
    End With
End Sub

Si tienes dudas sobre algún ejemplo en específico lo comentamos.

¡Gracias! Bien completa su ayuda, el detalle es que no estoy acostumbrado al lenguaje y se me hace complicado, estoy iniciando en el área.

Altamente agradecido por su tiempo. Poco a poco me iré metiendo y conociendo el programa.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas