excel中的向量元素操作

时间:2014-03-03 23:50:21

标签: excel

我试图在一个步骤(一个公式)中执行以下操作:

从一列元素中删除一个字母并将其添加。

示例:

数据:

1X 2Y 3×

我想在一个公式中删除字母和数字。

我明白我可以有一个帮助列,我在其中删除字母x,y,z,然后有一个公式来加上数字,但我不想这样做。

感谢您的任何建议。

2 个答案:

答案 0 :(得分:1)

假设每个单元格有一个条目:

最后只有一个字母?如果是这样,您可以使用:

=SUMPRODUCT(--LEFT(A1:A100,LEN(A1:A100)-1))

如果最后可能有多个字母,简单的UDF会更简单:

Option Explicit
Function AddStrings(rg As Range)
    Dim L As Long
    Dim I As Long

For I = 1 To rg.Count
    L = L + Val(rg(I))
Next I

AddStrings = L
End Function

编辑:如果某些单元格可能为空白,则可以使用UDF,或者,如果您更喜欢公式,则可以使用数组输入公式:< / p>

=SUM(IFERROR(--LEFT(A1:A100,LEN(A1:A100)-1),0))
输入后,

array-enter 一个公式 公式进入单元格或公式栏,按住 ctrl-shift ,同时点击输入。如果你这样做了 正确地说,Excel会在公式周围放置大括号{...}。

答案 1 :(得分:0)

假设格式一致,您可以执行类似

的操作
=VALUE(LEFT(A1,1))+VALUE(MID(A1,4,1))+VALUE(MID(A1,7,1))

如果格式不一致,事情会变得更加困难。让我知道,我会扩大答案。

编辑:

此函数适用于可变长度文本,假设字段由空格分隔并且在数字后面有一个字母:

Function AddValues(Text As String)
  Dim Tokens() As String, I As Integer
  Tokens = Split(Text)
  For I = 0 To UBound(Tokens)
    AddValues = AddValues + Val(Left(Tokens(I), Len(Tokens(I)) - 1))
  Next I
End Function