Office中国论坛/Access中国论坛

标题: [求助]请教:如何利用表中的老的数据,稍加修改个别项然后实现另存为表中的新数据用 [打印本页]

作者: tommy_725    时间: 2007-6-9 16:57
标题: [求助]请教:如何利用表中的老的数据,稍加修改个别项然后实现另存为表中的新数据用
先谢谢大家看我的问题

我具体说一下我的问题:

我有一个表比如:HW (HW_id, product_name,  working_title, family,  brand)

                                         1            a01                    ta01               a         ta

                                         2            b01                    tb01               b         tb

                                          3            c01                     tc01                c        tc

                                    ...................

然后我有个Form:   上面有4个文本框,name也叫product_name,  working_title, family,  brand设好de1ControlSource分别为 HW中的product_name,  working_title, family,  brand

这个Form里可以通过四个文本框每次显示所有HW里每行数据 product_name,  working_title, family,  brand

我现在希望在Form上放个按钮,写个VBA的Save_click事件,我希望可以实现:

在表中显示的老数据,我可以改1,2项,然后点击Save的按钮,可以实现这4个文本框里改过或没改过的数据完整的另存存入表中作为一个新行的数据而不会覆盖老数据

比如,在Form的四个文本框product_name,  working_title, family,  brand显示HW_id为2的那一行数据:                                        b01                    tb01               b         tb      ,我在Form的四个文本框里改动2项product_name,  working_title,把b01和tb01改为b02    tb02  另外family,  brand的数据不改动。然后我按Save按钮,

希望b02    tb02    b         tb 可以作为product_name,  working_title, family,  brand的一行新数据存入HW的表中,而不会覆盖原有在Form中被调用修改的老数据b01                    tb01               b         tb   。

即在HW表中

                                         HW (HW_id, product_name,  working_title, family,  brand)

                                                          1            a01                    ta01               a        ta

在表中被利用的老数据                       2            b01                    tb01               b         tb

                                                          3            c01                     tc01                c        tc

                                    。。。。。......................................................................

     另存为新数据                               12               b02                     tb02              b         tb




如何实现这个功能,达人可否给出VBA code例子

我用普通的Save_click_method发现修改保存后总是覆盖老数据。达人们是否能给些灵感,先谢谢啦。

附件是我的例子,但可能还需根据文字说明对照来看,谢谢啦[attach]24839[/attach]


[此贴子已经被作者于2007-6-9 9:56:34编辑过]


作者: 谢健    时间: 2007-6-9 17:08
传上你的示例,这样看你的文字说明觉得累!
作者: 一点通    时间: 2007-6-9 17:10
由于是初学,相信单纯用文字写出来你也不明,所以最好上传你的例子,以便别人帮你修改,然后在别人修改后的示例中学习方法
作者: tommy_725    时间: 2007-6-9 17:15
已经传了例子,不好意思,我描述是罗嗦了点,我只是想表达清楚我的意思,没什么Code的。你们可否先用文字简单说明一下呢

[此贴子已经被作者于2007-6-9 9:53:52编辑过]


作者: 谢健    时间: 2007-6-9 18:27
是不是这样![attach]24842[/attach]

作者: 一点通    时间: 2007-6-9 18:46
[attach]24844[/attach]

作者: tommy_725    时间: 2007-6-9 19:03
标题: [求助]
哇,谢谢,但我要的主要功能不是输入数据,而是既可以输入新数据也可以从已存在的数据中修改另存为新数据

谢谢你的附件,您看可不可以这样

我希望表内任意行的数据都可以上载到Form上的文本框上,然后改动,保存。

我也想到用Insert INto但是测试发现,我只要一关掉Form:本来修改好的数据也另存为新数据,老数据还保留,我以为OK了,但一关掉Form 老数据也变成了新数据,也就是说老数据被修改后按新数据复制了,所以有2行重复的新数据。我是这样理解的,也不知道怎么会事,谁知道什么原因

请看我改动后的例子[attach]24845[/attach]

作者: 一点通    时间: 2007-6-9 19:14
很难理解你的问题,我给你的例子不能实现你的目的吗?
作者: tommy_725    时间: 2007-6-9 19:20
谢谢了,你的例子,我才看到,一点通真是名不虚传




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