|
▼ponpon さん:
>
>>整理するとB列に集計の文字を含んでいなければ""を、B列に集計という文字があってD列が0より大きいときに"売掛金"、集計という文字を含み、Dの値が0より小さいときは""を入れるようにしたいのです。上の表で言うとA4.7に売掛金、A10は何もなしにしたいのです。方法はありますか
>
>sheet1 だとして、
>こんな感じ?
>
>Dの値が0の時も""にしています。
>
>
>Option Explicit
>
>Sub test()
> Dim r As Range
>
> With Sheets("Sheet1")
> For Each r In .Range(.Cells(1, 2), .Cells(Rows.Count, 2).End(xlUp))
> If InStr(r.Value, "集計") > 0 Then
> If r.Offset(, 2).Value > 0 Then
> r.Offset(, -1).Value = "売掛金"
> Else
> r.Offset(, -1).Value = ""
> End If
> Else
> r.Offset(, -1).Value = ""
> End If
> Next
> End With
>End Sub
実は作成中のシートはD列に集計を含む列、M列の数字を判定して、+の時は"売掛金"、-の時は"売上金"を入れる事になっていますので、下記のように番地を変更したらうまくいきました。ありがとうございます。
Dim r As Range
With Sheets("Sheet1")
For Each r In .Range(.Cells(10, 4), .Cells(Rows.Count, 4).End(xlUp))
If InStr(r.Value, "集計") > 0 Then
If r.Offset(, 9).Value > 0 Then
r.Offset(, -3).Value = "売掛金"
Else
r.Offset(, -3).Value = "売上金"
End If
Else
r.Offset(, -3).Value = ""
End If
Next
End With
End Sub
そこでもう少し甘えて質問します。めくらめっぽうに数字を変えてうまくいったのですが3行目の
Cells(Rows.Count, 4).End(xlUp))の4は何を表すのでしょうか。教えてください。
今度はN列に反対勘定を入れてみたいと思っていますので、どことどこをアレンジすればいいのか、それを参考に今から考えたいと思います。
|
|