Excel精英培训网

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

[已解决]如何用宏代码代替此函数公式。

[复制链接]
发表于 2015-10-4 17:53 | 显示全部楼层 |阅读模式
本帖最后由 stxyls 于 2015-10-5 12:16 编辑

求助:如何用宏代码代替此函数公式。因为此函数计算太多数据时非常非常的慢。如果出现“#N/A”则为新增(把AQ列公式整合到一起)。
最佳答案
2015-10-4 19:06
看附件中


求助如何用宏代码代替此函数公式.zip

10.27 KB, 下载次数: 11

发表于 2015-10-4 19:06 | 显示全部楼层    本楼为最佳答案   
看附件中


求助如何用宏代码代替此函数公式.zip

14.49 KB, 下载次数: 17

回复

使用道具 举报

发表于 2015-10-4 19:32 | 显示全部楼层
试一下这个代码看看。。
  1. Sub Ax()
  2.     Dim Arr, Brr, Crr, Abz$, Bbz$
  3.     Arr = Sheets("年初").[a1].CurrentRegion
  4.     Brr = Sheets("报告期").[a1].CurrentRegion
  5.     ReDim Crr(1 To UBound(Brr) - 1, 1 To 2)
  6.     For i = 2 To UBound(Brr)
  7.         Bbz = Brr(i, 2) & Brr(i, 3) & Brr(i, 4) & Brr(i, 11)
  8.         For j = 2 To UBound(Arr)
  9.             Abz = Arr(j, 2) & Arr(j, 3) & Arr(j, 4) & Arr(j, 11)
  10.             If Bbz = Abz Then flag = 1
  11.         Next
  12.         If flag = 1 Then
  13.             Crr(i - 1, 1) = "正常"
  14.         Else
  15.             Crr(i - 1, 2) = "新增"
  16.         End If
  17.         flag = 0
  18.     Next
  19.     Sheets("报告期").[ap2].Resize(i - 2, 2) = Crr
  20. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2015-10-5 12:15 | 显示全部楼层
fjmxwrs 发表于 2015-10-4 19:06
看附件中

谢谢!真神人也!
回复

使用道具 举报

 楼主| 发表于 2015-10-5 12:39 | 显示全部楼层
fjmxwrs 发表于 2015-10-4 19:06
看附件中

老师!如果有几万条记录,应该如何修改呢?
回复

使用道具 举报

发表于 2015-10-6 14:33 | 显示全部楼层
stxyls 发表于 2015-10-5 12:39
老师!如果有几万条记录,应该如何修改呢?

你没有试下增加数据吗
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 16:27 , Processed in 0.244058 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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