我希望用下列程序实现以下功能:通过statis2遍历boxid表,当发现该表中有keyid属性重复的记录时,记下该记录,还有就是用statis1比较boxid的keyid值和pbox表的“字段1”的值,如果pbox表中含有boxid没有的记录,记下该记录。
    Private Sub statis2()
  Dim conn As New ADODB.Connection
  Dim rst As New ADODB.Recordset
  Dim conn1 As New ADODB.Connection
  Dim rst1 As New ADODB.Recordset
  Dim conn2 As New ADODB.Connection
  Dim rst2 As New ADODB.Recordset
  Dim connp As New ADODB.Connection
  Dim rstp As New ADODB.Recordset
  Dim i, j As Integer
  Dim m, n As Integer
  i = 0
  
'Adodc1.ConnectionString = "dsn=boxnum"
'Adodc1.CommandType = adCmdText
'Adodc1.RecordSource = "select keyid from boxid group by keyid having count(keyid)>1"
'
'Set DataGrid1.DataSource = Adodc1
  conn.Open "boxnum"
  rst.CursorType = adOpenKeyset
  rst.LockType = adLockOptimistic
  rst.Open "select keyid from boxid group by keyid having count(keyid)>1", conn, , , adCmdText
  MsgBox rst.RecordCount
  
  conn2.Open "boxnum"
  rst2.CursorType = adOpenKeyset
  rst2.LockType = adLockOptimistic
  rst2.Open "boxo", conn2, , , adCmdTable
rst.MoveFirst
For i = 0 To rst.RecordCount
  rst2.AddNew
  rst2!boxcode = rst!调压箱编号
  rst2.Update
  rst.MoveNext
Next iEnd Sub
Private Sub statis1()
  Dim conn As New ADODB.Connection
  Dim rst As New ADODB.Recordset
  Dim conn1 As New ADODB.Connection
  Dim rst1 As New ADODB.Recordset
  Dim connp As New ADODB.Connection
  Dim rstp As New ADODB.Recordset
  Dim j As Integer
  
  conn.Open "boxnum"
  rst.CursorType = adOpenKeyset
  rst.LockType = adLockOptimistic
  rst.Open "boxid", conn, , , adCmdTable  connp.Open "boxnum"
  rstp.CursorType = adOpenKeyset
  rstp.LockType = adLockOptimistic
  rstp.Open "select * from P_box where 字段1 not in (select keyid from boxid)", connp, , , adCmdText
  MsgBox rstp.RecordCount
  
  conn1.Open "boxnum"
  rst1.CursorType = adOpenKeyset
  rst1.LockType = adLockOptimistic
  rst1.Open "boxo", conn1, , , adCmdTable问题是,在运行过程中,查boxid中的重复记录时,我并不只想查出一列keyid的值,还想所查出重复记录其他列的值,该怎么办?
而运行statis1时,boxo中显示的是80条完全相同的记录。怎么回事呢?我的P_box是一个导入表,和这有关系吗?