Red de conocimiento informático - Aprendizaje de programación - imagen de hipervínculo de descarga de excel vba

imagen de hipervínculo de descarga de excel vba

Se puede hacer con código vba:

1. Primero prepare la tabla:

2. Escriba el código de la macro de activación en la tabla:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim photoname As String

Si Target.Row = 3 And Target.Column gt 3 And Target.Column lt; 6 Luego

En Error Reanudar Siguiente 'Ignora el error y continúa ejecutando el código VBA para evitar mensajes de error

Application.ScreenUpdating = False

Application.EnableEvents = Falso

Para cada shp en hojas ("tabla de consulta"). Formas

Si shp.Type lt;gt; y shp.Type lt;gt; >

shp. Eliminar

Finalizar si

Siguiente

photoname = Cells(3, 4) amp ".JPG"

Celdas(3, "L").Seleccione

ActiveSheet.Pictures.Insert(ActiveWorkbook.Path amp; "\photo\" amp; photoname).Seleccione 'La imagen .jpg nombrada con la unidad contenido en el directorio donde se encuentra el archivo actual

Con selección

ta = Range(Cells(3, "L").MergeArea.Address).Height 'Altura de celda

tb = Range(Cells (3, "L").MergeArea.Address).Width 'Ancho de la unidad

tc = .Height 'Alto de la imagen

td = .Width 'Ancho de la imagen

tm = Application.WorksheetFunction.Min(ta/tc, tb/td) 'Valor mínimo de la relación de diferencia de largo a ancho entre la celda y la imagen

.Top = ActiveCell.Top 2

.Left = ActiveCell.Left 1

.Height = .Height * tm * 0.98 'Ajusta el ancho de la imagen proporcionalmente

.Width = .Width * tm * 0.98 'Ajustar proporcionalmente la altura de la imagen

Termina con

Celdas(3, 4).Selecciona

Aplicación. EnableEvents = True

Application.ScreenUpdating = True

End Sub<

/p>

3. Cree un subdirectorio llamado "Fotos" en el directorio actual, que contenga fotos en formato .jpg con el nombre.

4. , puedes insertar la imagen automáticamente