access数据库,如果A表中a字段等于B表中b字段,则把符合条件的A表中的b字段和c字段值链接起来,
赋给B表中b字段,字段类型相同,但结果可能是一对多,怎么做?比如说A表有两条记录A.a=警察和A.a=警察,B.b=警察,A.c=“王刚”和A.c=”李明“,那么赋值B....
赋给B表中b字段,字段类型相同,但结果可能是一对多,怎么做?比如说A表有两条记录A.a=警察和A.a=警察,B.b=警察,A.c=“王刚”和A.c=”李明“,那么赋值B.c=“王刚,李明”
A
a b c
警察 王刚 河东区
警察 李明 北辰区
小偷 张三 和平区
小偷 马六 南开区
小偷 王五 红桥区
B
a b
警察 王刚“河东区”、李明“北辰区”
小偷 张三“和平区”、马六“南开区”、王五“红桥区”
是要达到这种要求,在B表中赋值b字段,用vba做也可以,怎么做帮帮忙
表A a字段名是发原链接 ,b字段名是本文扩全,有下面五条数据
发原链接 本文扩全
警察 王刚河东区
警察 李明北辰区
小偷 张三和平区
小偷 马六南开区
小偷 王五红桥区
表B a字段名是已发递增,b字段名是zsbc
已发递增 zsbc
警察 王刚河东区李明北辰区
小偷 张三和平区马六南开区王五红桥区
表A的发原链接和表B的已发递增是关联字段,最后这样就可以,中间所有字符串都可以不要,请帮忙再看看 展开
A
a b c
警察 王刚 河东区
警察 李明 北辰区
小偷 张三 和平区
小偷 马六 南开区
小偷 王五 红桥区
B
a b
警察 王刚“河东区”、李明“北辰区”
小偷 张三“和平区”、马六“南开区”、王五“红桥区”
是要达到这种要求,在B表中赋值b字段,用vba做也可以,怎么做帮帮忙
表A a字段名是发原链接 ,b字段名是本文扩全,有下面五条数据
发原链接 本文扩全
警察 王刚河东区
警察 李明北辰区
小偷 张三和平区
小偷 马六南开区
小偷 王五红桥区
表B a字段名是已发递增,b字段名是zsbc
已发递增 zsbc
警察 王刚河东区李明北辰区
小偷 张三和平区马六南开区王五红桥区
表A的发原链接和表B的已发递增是关联字段,最后这样就可以,中间所有字符串都可以不要,请帮忙再看看 展开
1个回答
展开全部
用vba写自定义函数
首先,建立一个模块,写入以下自定义函数:
Function rcMerge(whereStr$)
Dim rs As New ADODB.Recordset, sql$, resultStr$
sql = "select a,b,c from A where a='" & whereStr & "'"
rs.Open sql, CurrentProject.Connection, adOpenKeyset, adLockReadOnly
Do While Not rs.EOF
resultStr = resultStr & "、" & rs!b & """" & rs!c & """"
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
rcMerge = Replace(resultStr, "、", "", 1, 1)
End Function
然後,建立更新查询,查询的sql:
update B set b=rcmerge(a)
执行,OK!
注意,如果你实际操作的表名称、字段名称和以上的A、B、a、b、c不一样,用的时候以上表名和字段名都要对应修改
更多追问追答
追问
里面怎么还有乱码啊,看不太明白,能不能用sql语句玩成
追答
那不是乱码,已改,请再看看
只用sql做不到
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询