Excel精英培训网

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

[VBA] VBA把自定义函数改成SUB 计算最大连续

[复制链接]
发表于 2017-2-3 16:07 | 显示全部楼层 |阅读模式
本帖最后由 laoau138 于 2017-2-3 18:06 编辑

VBA把自定义函数改成SUB  计算最大连续

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2017-2-3 16:22 | 显示全部楼层
  1. =MAX(FREQUENCY(IF(F$6:F$22=H10,ROW($1:$17)),IF(F$6:F$22<>H10,ROW($1:$17))))
复制代码
函数数组公式

评分

参与人数 1 +6 收起 理由
laoau138 + 6 来学习

查看全部评分

回复

使用道具 举报

发表于 2017-2-3 16:30 | 显示全部楼层
  1. Sub test()
  2. arr = [f6:f22]
  3. brr = [h10:h14]
  4.    For i = 1 To UBound(brr)
  5.         rst = 0
  6.         cnt = 0
  7.         For j = 1 To UBound(arr)
  8.             If arr(j, 1) = brr(i, 1) Then
  9.                 cnt = cnt + 1
  10.             Else
  11.                 cnt = 0
  12.             End If
  13.             If rst < cnt Then
  14.                 rst = cnt
  15.             End If
  16.         Next
  17.         Cells(9 + i, "m") = rst
  18.     Next
  19. End Sub
复制代码
简单改了下

评分

参与人数 1 +6 收起 理由
laoau138 + 6 来学习

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2017-2-3 18:12 | 显示全部楼层

VBA计算最大连续再改写   前面再加H列属性   结果如N列

例如统计数据F6至F22(统计条件H10等于"正生",最大连续"正生次"数为2,I10自动输出2.

自定义函数结果保存J列, SUB答案保存M列   如何改写成N列这样




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

 楼主| 发表于 2017-2-3 18:13 | 显示全部楼层

公式VBA你都懂了
回复

使用道具 举报

发表于 2017-2-3 18:34 | 显示全部楼层
laoau138 发表于 2017-2-3 18:12
VBA计算最大连续再改写   前面再加H列属性   结果如N列

例如统计数据F6至F22(统计条件H10等于"正生", ...

Cells(9 + i, "m") =  rst改成这样Cells(9 + i, "m") = brr(i, 1) & rst

评分

参与人数 1 +6 收起 理由
laoau138 + 6 来学习

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2017-2-4 09:44 | 显示全部楼层
望帝春心 发表于 2017-2-3 18:34
Cells(9 + i, "m") =  rst改成这样Cells(9 + i, "m") = brr(i, 1) & rst

用VBA数组计算多列最大连续次数


这个怎样做

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-16 18:16 , Processed in 0.163470 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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