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