Como cargar imágenes en Vba con ImageList1.ListImages

Necesito una mano con la siguiente macro, que al ser tan larga me da error y necesito optimizarla en unas cuantas líneas.

Los datos están en Sheets("Egger")

Lo normal es que valla recorriendo la columna A, donde está numerada de 1 al 1500 (. Add, "img1", ) y en la columna B está el nombre de la imagen. 22137.jpg

Private Sub Cargar_Listado_Egger_1()
'Dim lvItem As ListItem
Dim Wplan As Worksheet
Dim dias As Integer
Dim lin As Integer

Set h4 = Sheets("Egger")
Set Wplan = Sheets("Egger")
lin = 2

Wplan.Activate
Sheets("Egger").Select
ListView1.ListItems.Clear

With Wplan

While .Cells(lin, 1).Value <> ""
With ListView1
Set lvItem = ListView1.ListItems.Add(, , Wplan.Cells(lin, "A").Value)
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "B").Value, Wplan.Cells(lin, "A").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "C").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "D").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "E").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "F").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "G").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "H").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "I").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "J").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "K").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "L").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "M").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "N").Value
lvItem.ListSubItems.Add , , Wplan.Cells(lin, "O").Value

End With

lin = lin + 1
Wend
End With

End Sub

Private Sub ControleImageList()

Dim wbk As Workbook

Set wbk = Workbooks("Egger.xlsm")

With Me.ImageList1.ListImages

.Clear
.Add , "img1", LoadPicture(wbk.Path & "\Imagenes\8052.jpg") '1
.Add , "img2", LoadPicture(wbk.Path & "\Imagenes\8053.jpg")

.Add , "img1", LoadPicture(wbk.Path & "\Imagenes\7206.jpg")
.Add , "img2", LoadPicture(wbk.Path & "\Imagenes\8052.jpg")
.Add , "img3", LoadPicture(wbk.Path & "\Imagenes\6252.jpg")
.Add , "img4", LoadPicture(wbk.Path & "\Imagenes\7203.jpg")
.Add , "img5", LoadPicture(wbk.Path & "\Imagenes\22137.jpg")
.Add , "img6", LoadPicture(wbk.Path & "\Imagenes\29098.jpg")

End With

End Sub

Añade tu respuesta

Haz clic para o