以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请教:复制与粘贴代码没有反应 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=2765) |
-- 作者:yangming -- 发布时间:2009/5/12 17:51:00 -- 请教:复制与粘贴代码没有反应 我的要求是:在填充前先复制数据,等填充后再粘贴,不知为何下面代码中红色的部分为何没有反应 With Tables("工资表") .Select(0,5,.Rows.Count -1,15) Syscmd.Edit.Copy() End With DataTables("工资表").DataRows.Clear() dim y As New Filler y.SourceTable = DataTables("员工档案") \'指定数据来源 y.DataTable = DataTables("工资表") \'指定数据接收表 y.Fill() \'填充数据 For Each dr As DataRow in DataTables("工资表").DataRows dr("日期") = Vars("标题") Next With Tables("工资表") .Select(0,5, .Rows.Count -1,15) Syscmd.Edit.Paste() End With |
-- 作者:狐狸爸爸 -- 发布时间:2009/5/12 18:06:00 -- 这个只能通过菜单操作,不能编码的。 |
-- 作者:yangming -- 发布时间:2009/5/12 18:18:00 -- 那用SendKeys是否可以?这样写对吗? [此贴子已经被作者于2009-5-12 18:28:16编辑过]
|
-- 作者:mr725 -- 发布时间:2009/5/12 19:50:00 -- 这样吧: 先把需要的内容调到一个临时表里,需要时从临时表调回来即可。 |
-- 作者:狐狸爸爸 -- 发布时间:2009/5/12 22:54:00 -- 可以自己用一个全局变量,将选定区域的每个单元格的值,逐个合并成一个字符串,保存到这个全局变量中。 需要的时候,用Split方法,拆分这个全局变量成为一个一个值,写入到目标区域中。 |
-- 作者:yangming -- 发布时间:2009/5/13 8:15:00 -- 谢谢各位,我换一下思路,过会贴代码 |
-- 作者:yangming -- 发布时间:2009/5/13 9:08:00 -- 我的本意是:每个人的基本工资和社保的扣数,一般来说不会每个月改变的,所以每个月的工资数不用从头输入,为了减少工作量,一般我们在做工资时都是复制上个月的工资数,进行稍稍改动就可以了,要从头输入的,只有新入司的,或是拿业务提成而不是拿固定工资的人,这样,我就改了一下原来的思路,就是在员工档案表中增了一列:"工资表已加"然后在工资录入时将此列未勾选的员工填充进工资表,填充后再将员工档案表此列勾先便可以了,请看以下的代码: dim y As New Filler y.SourceTable = DataTables("员工档案") \'指定数据来源 y.DataTable = DataTables("工资表") \'指定数据接收表 y.Filter= "[工资表已加]= False" y.Fill() \'填充数据 For Each dr As DataRow in DataTables("工资表").DataRows dr("日期") = Vars("标题") Next For Each dr1 As DataRow in DataTables("员工档案").DataRows dr1("工资表已加") = True Next |