根据特定值从列中传输数据。

根据特定值从列中传输数据。

我在 Excel 中有一列数字,我需要根据另一列中的特定值将它们分开。

到目前为止,我已经使用了一种冗长的复制和删除的方法,但我希望能够编写一个实现它的公式。

我可以编写此公式,将值放在另一列中,但我也希望从原始列中删除该值。

=IF(P625="OR",(I625),0)。

我可以在这个公式末尾写一些可以删除 I625 值的内容吗?

答案1

使用如下数据:

在此处输入图片描述

运行这个简短的宏:

Sub Oranges()
    i = 1
    For Each r In Columns(2).SpecialCells(2)
        If r.Value = "OR" Then
            r.Offset(0, -1).Copy Cells(i, 3)
            r.Offset(0, -1).Clear
            i = i + 1
        End If
    Next r
End Sub

将产生:

在此处输入图片描述

编辑#1:

该版本可能满足您的需求:

Sub Oranges2()
    For Each r In Columns(2).SpecialCells(2)
        If r.Value = "OR" Then
            r.Offset(0, -1).Copy r.Offset(0, 1)
            r.Offset(0, -1).Clear
        Else
            r.Offset(0, 1) = 0
        End If
    Next r
End Sub

相关内容