以下是引用cxzbzgz在2013-1-28 11:45:00的发言:
楼主所写的这段代码是用数组代换数据,然后再把数组追加在数据表的尾部,你的这段代码的问题是C表的数据库结构必须与A表完成相同,否则就会造成数据混乱。可以作如下修改:
SELECT 1
USE A.DBF
INDEX on 物料凭证 TO tlpz &&以物料凭证做索引
SELECT 2
USE C &&临时表
ZAP
APPEND FROM B.xls TYPE XLS &&追加电子表数据
GO TOP && 到数据表头
DO while!EOF()
m物料凭证=物料凭证 &&将每个字段赋值给变量
m采购单位=采购单位
m收货数量=收货数量
m结算金额=结算金额
m税额=税额
m业务类型=业务类型
m过帐日期=过帐日期
SELECT 1
SEEK m物料凭证
IF EOF() && 如果在A表中没有找到,就追加一条空记录,然后将变量的值替换字段
APPEND BLANK
REPLACE 物料凭证 WITH m物料凭证,采购单位 WITH m采购单位,收货数量 WITH m收货数量,;
结算金额 WITH m结算金额,税额 WITH m税额,业务类型 WITH m业务类型,过帐日期 WITH m过帐日期
ENDIF
SELECT 2
SKIP
ENDD
这段代码如果DBF表的字段"日期"为字符型的这时候是可以的,如果DBF表的字段"日期"为日期型就不可以了. 还有如果是N多字段,那代码是不是太多了点?