0

我有一张 Excel 表格
替代文字

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

“C”列中的值可能会改变。要求是在“C”列中的单元格更改后立即更新“B”中的值。

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

4

1 回答 1

4

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

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

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

最好的方法是检查正则表达式。因此,#2 应该是:

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

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

a) 如果只是一个值(即->250),请检查 ms 或 sec 是否继续该值。如果是 ms,则将数字除以 1000。如果是 sec,则保持原样。将数字添加到总数中。
b) 如果数字前面有破折号 (-),则删除破折号,然后重复步骤 a)
c) 如果数字后跟字母,则删除字母并重复步骤 a)
d) 如果数字后跟句点,则不执行任何操作。这是一个要点。

于 2009-05-05T19:10:18.410 回答