If rs.State = adStateOpen Then rs.Close

   rs.Open "select Distinct ActvID where ProjectNo = '" & ProjectNo1 & " ' ", db, adOpenDynamic, adLockReadOnly
If Not rs.EOF Then rs.MoveLast
While Not rs.BOF
actvID.AddItem rs(0)
ActvID2.AddItem rs(0)
ActvID3.AddItem rs(0)
ActvIdA.AddItem rs(0) & "   " & rs(1)
ActvID2A.AddItem rs(0) & "   " & rs(1)
ActvID3A.AddItem rs(0) & "   " & rs(1)
ActUnit.AddItem rs(2)

Set rs = Nothing

i got this error Rowset does not support fetching backward.

Well, I don't know if it will help but some possibilities:
1. If your DB is empty
2. You have a Jet DB that won't support adOpenDynamic
3. Try adOpenKeyset to see if the problem goes away (Yes, I understand you won't have real time updates, but you might be able to learn more about the problem.)