2012-03-26 85 views
0

我需要确定应用频率函数的范围。这是问题所在。在给定的表格中,我有我的数据的小计,并有一列有“停止”值。 数据看起来是这样的:动态确定在EXCEL中应用公式/函数的范围

Route1 
Order#       Stop# Qty 
001016       1  5 
008912       1  5 
062232       2  6 
062232       3  2 
069930       4  1 
1000        4  3 
1001        4  4 
1001        5  8 
1003        8  1 

Route 1 Subtotal     6  35 

Route2 
Order#       Stop# Qty 
10065        1  5 
10076        1  5 
10077        2  6 
10079        3  2 
10087        4  1 
10098        4  3 
10109        4  4 
10171        5  8 
10175        8  1 
Route 2 Subtotal     6  35 

我如何编写VBA代码计算不同车站的值。我需要停止#的不同计数。因此,在上面的示例中,您可以看到总停靠点为6,因为1站可以有多个订单,1路可以有多个订单/站点。希望我在这里有道理。让我知道我将如何为此编写我的VBA代码。谢谢你的帮助。

+0

将所述数据集包含用于输入一个小计空单元?在上面的例子中,例如,“Route#Subtotal”行是否已经存在?另外,我假定路线#是唯一的,即没有两条路线共用相同的名称?我问,因为如果是这样,vba代码可以使用这个事实来搜索适当的范围 – playercharlie 2012-03-27 08:47:31

+0

数据集不会有任何空单元格。数据将使用Route#字段中的小计功能进行分组。例如,在路由1的10行细节之后,我们有“路由1的总数”,显然,对于这个特定行,列A将是空白的。路线号码每次都是唯一的。 – rvphx 2012-03-27 13:45:44

回答

1

对于停止小计唯一计数,尝试该式(根据需要调整范围):

=COUNT(1/FREQUENCY(B2:B10,B2:B10)) 
+0

感谢配方洛瑞。我正在寻找的是如何在小计级应用这个公式。该工作表将有许多像上面这样的数据集,我只需要在这些小计级别添加频率公式。我正在尝试为此做一个VBA代码,因为我不打算运行这个宏。 – rvphx 2012-03-26 21:16:04

+0

如果您想获取范围的地址以将公式应用于您,可能可以从任何现有的小计公式中提取此公式,或者类似以下内容:'range(activecell.End(xlUp),activecell.End(xlUp ).End(xlUp).Offset(1,0).Address'循环遍历小计中的每个单元格。 – 2012-03-26 21:34:31

+0

谢谢。请尽快尝试一下,让你知道那是怎么回事。 – rvphx 2012-03-26 21:48:09