A列の状態をB列C列に正数と負数に分けたいのですが
エクセル関数またはマクロでできますか
よろしくお願いします。
A列 B列 C列
5000 5000
6000 6000
-7000 -7000
3000 3000
-4000 -4000
6000 6000
-4000 -4000
0の時は 正数のほうに 振り分けしています。
Sub 振り分け() Dim a As Long For a = 1 To Range("A1").End(xlDown).Row If Cells(a, "A") < 0 Then Cells(a, "C") = Cells(a, "A") Else Cells(a, "B") = Cells(a, "A") End If Next a End Sub
0の時は 正数のほうに 振り分けしています。
Sub 振り分け() Dim a As Long For a = 1 To Range("A1").End(xlDown).Row If Cells(a, "A") < 0 Then Cells(a, "C") = Cells(a, "A") Else Cells(a, "B") = Cells(a, "A") End If Next a End Sub
ありがとうございます。
早速使わせていただきます。
1行目からデータが入ってるとすると、
セルB1には、「=IF(A1>0,A1,"")」セルC1には「=IF(A1<0,A1,"")」と入力し、2行目以降はコピーしてください。
この場合は、A列が0の場合は、B列にもC列にも値は入りません。
もしA列が0の場合にB列に表示したい場合は、「=IF(A1>=0,A1,"")」のようにしてください。
ありがとうございます。
早速使わせていただきます。
標準モジュールに下記を入力したのち、ワークシート上の一番左上(開始点)のセルにカーソルを置いて、マクロ furiwake を実行します。
-----------------------------------
Option Explicit
Sub furiwake()
Dim a As Double
Do While ActiveCell <> ""
a = ActiveCell.Value
If a >= 0 Then
ActiveCell.Offset(0, 1).Value = a
Else
ActiveCell.Offset(0, 2).Value = a
End If
ActiveCell.Offset(1, 0).Select
Loop
End Sub
------------------------------------
ありがとうございます。
早速使わせていただきます。
表示だけの問題でよければ、書式でB列C列をユーザ設定で
0;-0;""
としておいてからB列C列に関数で
=if(a2>0,a2,0)←B列の例
=if(a2<0,a2,0)←C列の例
としておけば良いでしょう
ありがとうございます。
早速使わせていただきます。
非常にシンプルに、
B列に
=IF(A3>0,A3,"")
C列に
=IF(A3<0,A3,"")
で出来ますがこういうことではないのでしょうか?
ありがとうございます。
早速使わせていただきます。
ありがとうございます。
早速使わせていただきます。