Office中国论坛/Access中国论坛

标题: [求助]请教各位教师一个简单的循环问题 [打印本页]

作者: lyhlyh    时间: 2005-12-23 01:37
标题: [求助]请教各位教师一个简单的循环问题
(叙述一大段,实际是个小问题,请教师们一定看完,并简要指点解决的步骤,菜鸟敬上)





现有12个一模一样的Excel数据表,表中有4个字段,字段为整型,值的范围为0-10,每表约有2.5万条记录,这些表分别依次命名为book1、book2、book3、……book12。其中:1、表中每条记录4个字段之和暂命名为变量“X”


2、book1至book12,每表4个字段中的数分别依次乘以4个常数,可得4个新变量(如下),这4个新变量之和暂命名为“Y”。


book1:Y=“字段一”*11+“字段二” *23+ “字段三” *35+ “字段四” *47


book2:Y=“字段一”*10+“字段二” *22+ “字段三” *34+ “字段四” *46


book3:Y=“字段一”*9+“字段二” *21+ “字段三” *33+ “字段四” *45


……


Book11:Y=“字段一”*1+“字段二” *13+ “字段三” *25+ “字段四” *37


Book12:Y=“字段一”*12+“字段二” *24+ “字段三” *36+ “字段四” *48





要求设计程序,完成以下数据的查找并将查找出的数据保存在一个Excel文件中:


在12个Excel表中,每表选取一条记录,共12条记录符合下达表达式的要求:


X book1+X book2+ X book3 +……+ X book12=150


Y book1+ Y book1+ Y book1+……+ Y book1=3880


将找到的12条记录以横排的形式作为一条记录,共有48个字段,按book1、 book2、 book3……book12的顺序排列,然后将所有符合要求的共有48个字段的记录保存在一个Excel文件中。
作者: 阿笨    时间: 2005-12-23 03:04
EXCEL我不懂,假设是ACCESS中的12张表吧

for i=1 to 12

  docmd.runSql("update BOOK" & i & " set y=字段1*" & iif(cStr(12-i)<1,12,cStr(12-i)) & " + 字段2*" & iif(cStr(24-i)<12,24,cStr(24-i)) & " +字段3*" & iif(cStr(36-i)<24,36,cStr(36-i)) & " +字段4*" & iif(cStr(48-i)<36,48,cStr(48-i)) and x=字段1+字段2+字段3+字段4)

next



i=0

set rs=currentproject.connection.execute("select sum(x) as SumOfX, sum(Y) as SumOfY,id from (select x,y,id from book1 union all select x,y,id from book2.....union all select x,y,id from book12) group by id")

rs.filter=rs("SumOfX=150 and SumOfY=3880")

这时rs里面就是同一个ID里X的值和Y的值分别为150和3880的了.

怎么个填法,看不懂你写的内容,自己写吧.



以上未做调试,只是想想的,如有错误,还请原谅






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