RRBegin
Structural
- Jul 31, 2001
- 38
I have a database that stores bitmap images (filename and path only) related to specific items in a table. I have a form tied to the table that lists the images that relate to the current item. The form has a command button that allows me to pick images from the list and view them in a separate image viewer form (in theory, anyway; I get an error message that indicates that the open form action was canceled).
I copied and modified the code from a developer's website (with the author's permission). The code came in the form of a sample address book database; I just changed the various form and table names to reflect the names in my database. The sample database works fine, so I know that the code is ok.
The form viewer works if I open it separately- it doesn't filter the images and just lists them all. The code works up until it gets to the openform action, at which point it triggers the error code.
Here is the code, any suggestions?
I copied and modified the code from a developer's website (with the author's permission). The code came in the form of a sample address book database; I just changed the various form and table names to reflect the names in my database. The sample database works fine, so I know that the code is ok.
The form viewer works if I open it separately- it doesn't filter the images and just lists them all. The code works up until it gets to the openform action, at which point it triggers the error code.
Here is the code, any suggestions?
Code:
Private Sub cmdViewImage_Click()
On Error GoTo Err_Handler
Dim strFilter As String, strImageList As String
Dim varItem As Variant
' open Images form modally if image(s) selected from list
If Me!lstImages.ItemsSelected.Count > 0 Then
' build comma separated string of ImageIDs selected
For Each varItem In Me!lstImages.ItemsSelected
strImageList = strImageList & "," & lstImages.Column(0, varItem)
Next varItem
' discard leading comma
strImageList = Mid$(strImageList, 2)
strFilter = "ArtifactID = " & Me!ArtifactID & _
" And ImageID In (" & strImageList & ")"
Me.Visible = False
DoCmd.OpenForm "frmImages", WhereCondition:=strFilter, _
WindowMode:=acDialog, _
OpenArgs:="NoAdditions"
Else
MsgBox "At least one image must be selected from the list.", vbInformation, "Images"
End If
Exit_here:
Exit Sub
Err_Handler:
MsgBox Err.Description & " (" & Err.Number & ")", vbExclamation, "Error"
Resume Exit_here
End Sub