答:
因为单元格中的值实际是文本不能直接计算,所以你需要将里面的数值提取出来。
=LEFT(A1,FIND("*",A1)-1)*MID(A1,FIND("*",A1)+1,1000000)+LEFT(B1,FIND("*",B1)-1)*MID(B1,FIND("*",B1)+1,1000000)+LEFT(C1,FIND("*",C1)-1)*MID(C1,FIND("*",C1)+1,1000000)
判断的位置
考虑你不一定全是1位数✖1位数,所以需要先获取乘号""的位置。需要用的Find函数。
FIND(find_text, within_text, [start_num])
- find_text 必需。 要查找的文本。
- within_text 必需。 包含要查找文本的文本。
- start_num 可选。 指定开始进行查找的字符。 within_text 中的首字符是编号为 1 的字符。 如果省略 start_num,则假定其值为 1。
公式和结果如下:

提取数值
得到每个字符串中的具体位置后我们就可以根据这个位置提取数值了。
首先提取前面的值,用的Left函数
LEFT(text, [num_chars])
- 文本 必需。 包含要提取的字符的文本字符串。
- num_chars 可选。 指定要由 LEFT 提取的字符的数量。
- Num_chars 必须大于或等于零。
- 如果 num_chars 大于文本长度,则 LEFT 返回全部文本。
- 如果省略 num_chars,则假定其值为 1。
- Num_bytes 可选。 按字节指定要由 LEFTB 提取的字符的数量。
公式和结果如下:

然后提取*后面的数值,用到Mid函数
MID(text, start_num, num_chars)。
- 文本 必需。 包含要提取的字符的文本字符串。
- start_num 必需。 文本中要提取的第一个字符的位置。 文本中第一个字符的 start_num 为 1,以此类推。
- 如果start_num大于文本长度,则 MID/MIDB 返回空文本 (") 。
- 如果start_num小于文本长度,**但 start_num 加 num_chars 超过文本长度,则 MID/MIDB 将返回直到文本末尾的字符。**
- 如果start_num小于 1,则 MID/MIDB 返回#VALUE! 错误值。
- num_chars MID 必需。 指定希望 MID 从文本中返回字符的个数。
- 如果num_chars为负数,则 MID 返回#VALUE! 错误值。
- Num_bytes MIDB 必需。 指定希望 MIDB 从文本中返回字符的个数(字节数)。
- 如果num_bytes为负数,则 MIDB 返回#VALUE! 错误值。
公式和结果如下:

3.创建计算公式
接下来就简单了,拿到了所有的数值,重新写计算公式就行了。
公式和结果如下:

公式合并结果如下

=LEFT(A1,FIND("*",A1)-1)*MID(A1,FIND("*",A1)+1,1000000)+LEFT(B1,FIND("*",B1)-1)*MID(B1,FIND("*",B1)+1,1000000)+LEFT(C1,FIND("*",C1)-1)*MID(C1,FIND("*",C1)+1,1000000)