Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1048|回复: 5

求优化代码

[复制链接]
发表于 2012-5-29 09:09 | 显示全部楼层 |阅读模式
速度很慢并加句代码

Sub test1()

    Application.ScreenUpdating = False
    With Sheets("sheet1")
    Range("E10").FormulaR1C1 = _
        "=TEXT(SUMPRODUCT(RIGHT(MMULT({1,1,1,1,1,1,1,1,1,1},MID(R[-9]C[-1]:RC[-1],{1,2,3},1)*{1;1;1;-1;1;1;-1;1;1;1})+20)*{100,10,1}),""000"")"
    Range("E10").AutoFill Destination:=Range("E10:is10"), Type:=xlFillDefault
    Range("E10:is10").AutoFill Destination:=Range("E10:is2291"), Type:=xlFillDefault
    Range("A2279:IS2291").Select
    Application.CutCopyMode = False
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Selection.Copy
加代码;    复至到sheet3的有数据的最后一行的再下一行,从A列开始,然后把sheet1的e11:is2291的数据清除并把

e10的公式复至到sheet3的e列有数据的最后一格的上一格
    End With
    Application.ScreenUpdating = True
End Sub

发表于 2012-5-29 09:17 | 显示全部楼层
回复

使用道具 举报

发表于 2012-5-29 09:58 | 显示全部楼层
汗,你写VBA代码,结果却是往单元格写公式,这能不慢么!
       上传附件,然后说明结果
回复

使用道具 举报

 楼主| 发表于 2012-5-29 10:03 | 显示全部楼层
mxg825 发表于 2012-5-29 09:17
上传附件》》》》》

没有准备好附件,简单化的传过去也难说明问题.
回复

使用道具 举报

 楼主| 发表于 2012-5-29 12:04 | 显示全部楼层
zjcat35 发表于 2012-5-29 09:58
汗,你写VBA代码,结果却是往单元格写公式,这能不慢么!
       上传附件,然后说明结果

公式的原因不考虑,它有我方便的地方.后面的代码能补上就行

点评

好晕,建议上附件和完整说明。起码便于理解1楼代码和目的。  发表于 2012-5-29 12:41
回复

使用道具 举报

发表于 2012-5-30 07:30 | 显示全部楼层
附件吧,就算是考试题也得有试卷吧,是不!!要不怎么知道答案对不对呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-6-5 08:13 , Processed in 0.240040 second(s), 15 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表