在Vf中如何实现从一个dbf表中相同bc值被复制到以bc值命名的表中。成绩处理程序如下:
input"请输入排名的班名:"tosinput"请输入排名的班名:"tos1dowhiles<=s1locateforbc=sdowhilebc=scopyto&bcu...
input"请输入排名的班名:"to s
input "请输入排名的班名:"to s1
do while s<=s1
locate for bc=s
do while bc=s
copy to &bc
use &bc
repl all ord1 with recn()
s=s+1
enddo
if s>s1
wait "请输入是否还要排名(y/N):" to t
endif
enddo
我想在vf6中用,
我想要得到是的一个dbf表, 展开
input "请输入排名的班名:"to s1
do while s<=s1
locate for bc=s
do while bc=s
copy to &bc
use &bc
repl all ord1 with recn()
s=s+1
enddo
if s>s1
wait "请输入是否还要排名(y/N):" to t
endif
enddo
我想在vf6中用,
我想要得到是的一个dbf表, 展开
展开全部
input"请输入排名的班名:"to s
input "请输入排名的班名:"to s1
这2个输入的排名的班名s和s1都是数字来的?
input "请输入排名的班名:"to s1
这2个输入的排名的班名s和s1都是数字来的?
追问
是的,与表中的bc数据类型一样,是数值。最好是把现有的程序修改一下能用最好。
追答
==,先把要求说明白好吗?
1、班名是数值型数据
2、把班名(原表中为bc的值)在s到s1之间的记录分别按bc不同放到不同的表中,且表名为bc的值,例bc为2010时,要把这条记录放到表2010.dbf中
我是按照上面你的原程序来理解的,符合你想表达的意思吗?只有先把要求弄清楚了才能做事
算了,我还是先按这个意思做一下修改吧:
Input"请输入排名的班名:"To s
Input "请输入排名的班名:"To s1
Select bc From 原表名;
WHERE Between(bc,s,s1);
GROUP BY 1;
INTO Array labc
For i=1 To Alen(labc)
Select * From 原表名;
WHERE bc=labc(i);
INTO Dbf (Alltrim(Str(labc(i))))
Replace All ord1 With Recno()
Endfor
**** 要把“原表名”改为你原来的表的名字才能正确运行
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询