Thanks, but still not working. It did not like RecordsetClone, Method or Datamember not found.
I appreciate your time, and working in the blind. I think I must try and see what happens when the database is closed and reopens, something remaining open. Just hope it's not one more of many bugs I have found with Access 2010.
Sorry it's long, and a bit primitive in parts, but maybe I will bore you with the code that fills the listbox LP in case you can see what gets left open.
Public Sub BuildList()
Dim MySql As String, i As Integer, strIN As String
On Error GoTo BuildList_Error
Me.LP = Null
If Me.PLIST > "" Or Me.TLIST > "" Or Me.STLIST > "" Or Me.RQLIST > "" Or Me.DTLIST > "" Or Me.DULIST > "" Then
MySql = "SELECT PARTNERS.Partner, ACTIVITIES.Type, ACTIVITIES.Status, ACTIVITIES.RequestedBy, ACTIVITIES.[Date Raised],"
MySql = MySql & " PROGRESS.[Updated On], ACTIVITIES.Identifier1, ACTIVITIES.[Task Comments],"
MySql = MySql & " ACTIVITIES.Resources, PROGRESS.Update, ACTIVITIES.[Task Description], PARTNERS.ID1, ACTIVITIES.ID3 FROM (PARTNERS LEFT JOIN ACTIVITIES ON"
MySql = MySql & " PARTNERS.ID1 = ACTIVITIES.ID1) LEFT JOIN PROGRESS ON ACTIVITIES.ID3 = PROGRESS.ID3"
MySql = MySql & " WHERE 1 = 1 "
If STRLIST1 > "" Then
MySql = MySql & " AND ACTIVITIES.[Date Raised] IN (" & (STRLIST1) & ")"
End If
Else
Me.LP.RowSource = ""
If WHATLIST = 0 Then
Me.DTLIST.RowSource = ""
End If
If WHATLIST2 = 0 Then
Me.DULIST.RowSource = ""
End If
Me.LP.Visible = False
Me.Command267.Enabled = True
Me.Command269.Enabled = True
Me.Label316.Visible = False
Me.NF.Visible = True
' Now need to refill date raised list
If MySql > "" Then
Me.DTLIST.RowSource = MySql
Else
MySql = "SELECT PARTNERS.Partner, ACTIVITIES.Type, ACTIVITIES.Status, ACTIVITIES.RequestedBy, ACTIVITIES.[Date Raised],"
MySql = MySql & " PROGRESS.[Updated On], ACTIVITIES.Identifier1, ACTIVITIES.[Task Comments],"
MySql = MySql & " ACTIVITIES.Resources, PROGRESS.Update, ACTIVITIES.[Task Description], PARTNERS.ID1, ACTIVITIES.ID3 FROM (PARTNERS LEFT JOIN ACTIVITIES ON"
MySql = MySql & " PARTNERS.ID1 = ACTIVITIES.ID1) LEFT JOIN PROGRESS ON ACTIVITIES.ID3 = PROGRESS.ID3"
MySql = MySql & " WHERE ((Not (ACTIVITIES.[Date Raised]) Is Null))"
MySql = MySql & " ORDER BY ACTIVITIES.[Date Raised], PROGRESS.[Updated On];"
Me.DTLIST.RowSource = MySql
End If
Exit Sub
End If
' Selected Partner
If [Forms]![TABBEDFORM]![PLIST] <> "" Then
MySql = MySql & " AND PARTNERS.Partner = '" & [Forms]![TABBEDFORM]![PLIST] & "'"
End If
' Selected Type
If [Forms]![TABBEDFORM]![TLIST] <> "" Then
MySql = MySql & " AND ACTIVITIES.Type = '" & [Forms]![TABBEDFORM]![TLIST] & "'"
End If
' Selected Status
If [Forms]![TABBEDFORM]![STLIST] <> "" Then
MySql = MySql & " AND ACTIVITIES.Status = '" & [Forms]![TABBEDFORM]![STLIST] & "'"
End If
' Selected Requested By
If [Forms]![TABBEDFORM]![RQLIST] <> "" Then
MySql = MySql & " AND ACTIVITIES.RequestedBy = '" & [Forms]![TABBEDFORM]![RQLIST] & "'"
End If
' Selected Date Raised from
If [Forms]![TABBEDFORM]![DTLIST] <> "" Then
MySql = MySql & " AND ACTIVITIES.[Date Raised] >= #" & Format([Forms]![TABBEDFORM]![DTLIST], "yyyy/mm/dd") & "#"
End If
' Selected Date Updated from
If [Forms]![TABBEDFORM]![DULIST] <> "" Then
MySql = MySql & " AND PROGRESS.[Updated On] >= #" & Format([Forms]![TABBEDFORM]![DULIST], "yyyy/mm/dd") & "#"
End If
MySql = MySql & " ORDER BY ACTIVITIES.[Date Raised], PROGRESS.[Updated On];"
Me.LP.RowSource = MySql
If WHATLIST = 0 Then
Me.DTLIST.RowSource = MySql
End If
If WHATLIST2 = 0 Then
Me.DULIST.RowSource = MySql
End If
If Me.LP.ListCount > 0 Then
Me.LP.Visible = True
Me.Command267.Enabled = False
Me.Command269.Enabled = False
Me.Label316.Visible = True
Else
Me.LP.Visible = False
Me.Command267.Enabled = True
Me.Command269.Enabled = True
Me.Label316.Visible = False
End If
On Error GoTo 0
Exit Sub
BuildList_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure BuildList of VBA Document Form_TabbedForm"
End Sub