Office中国论坛/Access中国论坛

标题: 如何将备注记录数合并成一行 [打印本页]

作者: jicheng    时间: 2006-6-24 20:16
标题: 如何将备注记录数合并成一行
如何将备注记录(如一个表内备注有好几条记录)合并成一行
作者: andymark    时间: 2006-6-24 20:24
Dim Rs As New ADODB.Recordset
Dim Str As String
Rs.Open "select * from 表 ", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
Do While Not Rs.EOF
    Str = Str & Rs.Fields("备注")
    Rs.MoveNext
Loop
   
  MsgBox Str
Set Rs = Nothing

作者: jicheng    时间: 2006-6-25 02:10
忘了说,还有条件了,

如相同姓名的记录的备注合并起来,这个条件加哪儿呀
作者: andymark    时间: 2006-6-25 06:22



Dim Rs As New ADODB.Recordset
Dim Rst As New ADODB.Recordset
Dim Str As String

  Rst.Open "SELECT First(姓名) FROM 表1 GROUP BY 姓名", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
  
  Do While Not Rst.EOF

     Rs.Open "select * from 表1 where 姓名='" & Rst.Fields(0) & "'", CurrentProject.Connection, adOpenDynamic, adLockOptimistic

     Do While Not Rs.EOF
        Str = Str & Rs.Fields("备注")
        Rs.MoveNext
     Loop
   
     MsgBox Str
    Set Rs = Nothing
   
    Rst.MoveNext
  
  Loop
  
  Set Rst = Nothing
   

[此贴子已经被作者于2006-6-24 22:22:44编辑过]


作者: jicheng    时间: 2006-6-25 07:47
在试,谢谢
作者: jicheng    时间: 2006-6-25 08:30
  如果是查询表的话怎么办

好像上面的代码只能用在表上
作者: andymark    时间: 2006-6-25 22:22
以下是引用jicheng在2006-6-25 0:30:00的发言:


  如果是查询表的话怎么办

好像上面的代码只能用在表上

   改成查询做数据源就行了,更何况查询也是以表为基础的
作者: suve    时间: 2006-6-25 22:38
佩服啊佩服,斑竹做了几年做到这个水平?
作者: fan0217    时间: 2006-6-26 00:10
以下是引用suve在2006-6-25 14:38:00的发言:
佩服啊佩服,斑竹做了几年做到这个水平?



这个问题并不难,重要的有好的思路。

我在群里面看到一个朋友说过一句话:建议大家学习学习ADO,会ADO后解决问题的思路都会发生很大的变化。我个人觉得也是这样的。有不少问题采用一般的方法确实不能够解决,但使用ADO后这一问题就变得简单了。

对于现在开始学习的建议学习ADO,因为ADO是以后的发展方向,ADO的帮助信息全部是中文的,而且提供了很多非常好的示例。虽然现在还有些功能不能替代DAO,但相信后不断完善的。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3