Private Declare Function ImageList_ReplaceIcon Lib "COMCTL32" (ByVal hImageList _ As Long, ByVal i As Long, ByVal hIcon As Long) As Long' Load a set of images from a disk file to a ImageList control' The file must have been saved using the SaveImageList control, and the' target ImageList control must contain enough images in its ' ListImage collection.Public Sub LoadImageList(ImageList As ImageList, ByVal FileName As String) Dim pb As New PropertyBag Dim varTemp As Variant Dim handle As Long Dim Li As ListImage Dim ImgLocal As Object ' can use early binding here! ' Error "File not found" if the file doesn't exisit If Len(Dir$(FileName)) = 0 Then Err.Raise 53 ' Open the file and read its contents handle = FreeFile Open FileName For Binary As #handle Get #handle, , varTemp Close #handle ' rebuild the property bag object pb.Contents = varTemp ' create a temporary ImageList control that isn't sited on any form Set ImgLocal = pb.ReadProperty("IMG") ' because we can't clear the ListImage collection of the target ' ImageList control if the control is bound to any other control, ' the only way to move the images from the temporary ImageList to ' the target ImageList is using the ImageList_ReplaceIcon API For Each Li In ImgLocal.ListImages ImageList_ReplaceIcon ImageList.hImageList, Li.Index - 1, _ Li.Picture.handle NextEnd Sub


The Role of Call Data: How Call Tracking Can Improve Customer Experience
Who would argue that experiences reign supreme? But not just any experiences — the ones that occur when customers interact with your business. It’s these real-life interactions that have the