Excel中如何使用VBA来实现指定的单元格的文字或数据提取记忆功能??注:记忆功能就是记忆所有变动的数据

 我来答
bizhenyu0316
2013-03-29 · TA获得超过637个赞
知道小有建树答主
回答量:1042
采纳率:0%
帮助的人:622万
展开全部
可以在文档内新建一个sheet页或者利用特定的txt文档,在指定单元格变化的时候记录下变化时间和变化值。
在你要监控的单元格所在sheet页的代码里输入如下代码
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
Dim f As String
f = "d:\a.txt"
Open f For Append As #1
Print #1, Cells(1, 1).Value; Tab; Date; Space(1); Time
Close #1
End If
End Sub
看看是不是你想要的结果,会在D盘根目录生成一个a.txt
更多追问追答
追问
有VBA代码和详细的操作步骤吗?
你QQ多少?我加你。
追答
用上边那个代码,我是假设你要监控的单元格是A1来写的,想整理打印的话可以复制到excel中在操作,更简洁一些。
操作步骤,在你要监控的单元格所在sheet页名字上点右键,查看代码,然后贴进去,保存就行了,对A1操作几次,然后看D盘的a.txt就行了。
woshidj618
2013-03-29 · TA获得超过452个赞
知道小有建树答主
回答量:379
采纳率:33%
帮助的人:268万
展开全部
那意思就是 这个记忆功能要对应单元格咯.. 我意思是比如我sheet1里面 AB1 单元格里面有了信息变动, 就需要将这个变动记录在sheet2对应的单元格 对吗?
还是就顺序的记录?
追问

对的,但是要按照变动的时间(2013-3-29)一起记录下来。

比如我要在
1 A1:O1
2 A11:O11
3 F13:F30

我要的提取格式是:
时间 编号 款式 尺寸(高*宽*数量)
2013-3-29 G-1005 福字 1500*500=5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sabiqiang
2013-03-29 · TA获得超过1418个赞
知道小有建树答主
回答量:2152
采纳率:0%
帮助的人:368万
展开全部
你的记忆是指什么呢?vba运算时通过内存进行记录和运算,想要永久记录只有硬盘了,但是要运算时间内进行记忆可以采用为未知数或者数组赋值进行运算
追问
我的想法是:
1 先用VBA来对指定单元格进行记忆式数据提取到另一个工作簿(当然包括变动时的时间也要一起提取)。
2 再另外的工作簿做筛选整理后,再打印。(筛选是按照日期来的)
追答
如果是多个单元格似乎很困难,如果是单个单元格 可以使用 change 事件来做,当然该事件只能适用于工作表的,但是可以应用于控件,要是用于工作表,只用特定的工作表进行检查,例如设置一个单独登陆或者变更表就可以了,这样既可以节约change 事件的检查事件,又避免很多技术难题。如果把可以变更的做成一个控件就会很简单的了。
你说的“记忆”很简单,就是赋值就可以了,如果发生 change事件,令变更内容等于变量,再将变量赋值到指定单元格,同时另一单元格等于当前时间即可。
对于筛选,你可以录制宏,可以录制到的,录制完后自己试着改一下即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
水无忧因风皱
2013-03-29 · TA获得超过322个赞
知道小有建树答主
回答量:400
采纳率:0%
帮助的人:197万
展开全部
Private Sub Worksheet_Change(ByVal Target As Range)
用这个是可以搞定地
追问

有详细的 VBA代码  吗?

 

比如我要在
1 A1:O1
2 A11:O11
3 F13:F30

我要的提取格式是:
时间 编号 款式 尺寸(高*宽*数量)
2013-3-29 G-1005 福字 1500*500=5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式