En tiempo de diseño lo podeis hacer en un ListView o en un ListBox, pero con programación lo podeis hacer en un control MSFlexGrid o MSHFlexGrid poniendo en una columna un picture con una casilla de verificación sin marcar y al seleccionar poner otra marcada.
El código mas o menos sería así.
al cargar el grid (en un bucle For hasta el total de filas del Grid)
MSFlexGrid.Col = ColumnaDondeEstaelPicture
Set MSFlexGrid1.CellPicture = CasillaSinMarcar.Picture
y al seleccionar
With MSFlexGrid1
If .Col = ColumnaDondeEstaelPicture Then
' Set .CellPicture = IIf(.CellPicture = CasillaMarcada, CasillaSinMarcar, CasillaMarcada)
End If
End With
Con esto lo que haceis es que si la casilla está marcada, la desmarca y si no lo está la marca.