如何将单元格中的数字相加?

问题描述 投票:0回答:1

我有一张Excel表格 alt text

要求是对“C”列中单元格中的数字求和,并将值放在“B”列中的相应单元格中(在我的示例中为0.25 + 1 + 0.25 + 1 = 2.5)。

列'C'中的值可能会更改。一旦“C”列中的单元格发生变化,就要求更新“B”中的值。

我确实要求创建者更改为两个不同列中的文本和数字,但由于标准模板,这是不可接受的。

excel vba excel-formula text-parsing office-2007
1个回答
4
投票

这可以使用宏来实现,而无需更改单元格中的文本。我不得不承认,实施会有点迟钝,因为你需要做一些事情。

1 - 对整个单元格内容进行标记,并将标记存储到字符串数组中。

已经存在问题。位于单元格内的文本非常不一致。你有-250毫秒, - 250毫秒, - 1秒, - 1秒。因此,您需要检查每个实例。因此,您不能只检查值是否为数字,您需要检查您的团队成员为您方便提供的所有排列。

执行此操作的最佳方法是检查正则表达式。因此,#2应该是:

2 - 检查每个值以查看它是否与许多4个正则表达式中的一个匹配。

3 - 根据与其匹配的正则表达式,提取数值。

a)如果只是一个值(即 - > 250),检查ms或sec是否继续该值。 IF ms,将数字除以1000.如果为sec,则保留数字。添加总数。 b)如果数字前面有短划线( - ),请删除短划线,然后重复步骤a) c)如果一个数字后跟字母,删除字母并重复步骤a) d)如果一个数字后跟一段时间,则什么也不做。这是一个要点。

© www.soinside.com 2019 - 2024. All rights reserved.