Office中国论坛/Access中国论坛

标题: 再请教Access链接Exce数据出现“数字!”问题 [打印本页]

作者: wang1950317    时间: 2004-12-13 05:17
标题: 再请教Access链接Exce数据出现“数字!”问题
各位老师:我在Access中链接Excel中数据做成子窗体,凡是没有数据的地方均出现了“数字!”字样,请问怎样才能去掉它?[attach]8106[/attach]

[em06]
作者: foxxp    时间: 2004-12-13 06:42
1.链接表"余氯 硬度 Ca Mg As计算结果"的字段太多(256个),显然是链接的时候不注意给加多了,造成Access的功能出现紊乱.

2.在查询"计算结果查询1"中设定一定的条件进行过滤,用类型转换函数进行一下转化,效果可能好一些.

3.帮你修改了一下,加了一个数据导入的过程(窗体上加了个导入按钮),另外,由于链接表在我的机器上更新了,所以你还要用链接表管理器重新链接一次(工具-数据库实用工具-链接表管理器)。

[此贴子已经被作者于2004-12-12 23:07:07编辑过]


作者: 老鬼    时间: 2004-12-13 07:38
首先,你在EXCEL里面设置的IF公式返回的结果有""空字符,数字和空字符不能并存在ACCESS的同一个字段里,所以出错。你可以让返回空字符的单元格改成返回0。第二,导入EXCEL里的数据最好用命名区域的方式,而且命名的区域不要选择整行,有多少数据就选多大的区域。第三,不管是导入表还是导入命名的区域,数据格式都必须符合数据库规范,不能带空行或合并的单元格,否则很可能出错。
作者: wang1950317    时间: 2004-12-13 17:27
楼上两位老师:您们好!谢谢热心指教。foxxp老师您说的字段太多,好像没有超过256的,您所说的类型转换函数是不是Is类?,不知在查询规则中怎样写。您给加得导入纽我没有找到。请再指点。谢谢!老鬼老师:在我的计算里不能返回零,那些没有数据的空格意思是这一项没有检测,一旦返回零,则成了检测结果为0了。 另外,我的Access数据都是与Excel同步的,所以有必要将一些暂时没有数据的单元格也链接过来,这样Excel已有数据增加,就可以同步反映到数据库中。其他问题我当按您的意见再查一查。谢谢!
作者: foxxp    时间: 2004-12-13 18:39
你可以在表视图,选中第二个链接表(xls那个),点击设计,你就会看到.

昨晚帮你改了改,不过网站太慢,没有发送成功.

现在再看看.[attach]8109[/attach]


作者: wang1950317    时间: 2004-12-13 23:42
foxxp老师:子窗体上的"数字!"没有了,但是Ca  Mg项的数字不对头.需要说明的是,在Excel工作簿中,sheet1  中计算的是硬度,Ca是从sheet2中链接过去的,而镁是根据硬度与Ca的数据换算得到的.[attach]8114[/attach]


作者: wang1950317    时间: 2004-12-17 18:04
foxxp老师:问题已解决了,可能是链接表问题.谢谢您!
作者: wang1950317    时间: 2004-12-19 05:23
foxxp老师; 导入表不成问题,链接表还是不行!不知还应如何改动!谢谢!
作者: foxxp    时间: 2004-12-20 00:22
其实我并没有改太多的地方,只是用链接表生成一个中间表,中间表只用了必须的字段,用这个中间表作主窗体中的一个子窗体的数据源。链接表的字段数确实是256,要想用链接表,必须重建链接表,在建立的过程中只选择必须的字段。
作者: wang1950317    时间: 2004-12-20 06:16
标题: 再请foxxp老师指点!
foxxp老师:您好!按您的意思重做了一遍。我先把Excel链接过来,在查询中建立一个“生成xd追加表”(选取所需项),把数据追加到一个新表“xd追加”中,然后把"xd追加"作为上面左窗体的源对象,结果非常好。              

现在有两个问题请教您:  能否将查询中的“生成xd追加表”在窗体做成一个按钮,不要再打开查询去操作。(因为需要打开数据库后自动打开主窗体)。  

           [attach]8208[/attach]



[此贴子已经被作者于2004-12-22 8:30:00编辑过]


作者: foxxp    时间: 2004-12-26 10:29
代码可以参考下面的:(注意把“生成xd追加表”由“生成表查询”改成“追加查询”。)

  CurrentDb.Execute ("delete from [xd追加]")

'清空xd追加表

  CurrentDb.querydefs("生成xd追加表").Execute

'向xd追加表中插入数据。

  [计算结果查询1 子窗体].Requery

'刷新数据。
作者: wang1950317    时间: 2004-12-27 17:57
谢谢foxxp老师的指点。在此岁序更迭之际,谨以我的最诚挚的祝福送给您及您的家人!




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