2

これまでのところ、ある列から別の列を減算する次のコードがありますが、その結果を取得する必要があり、Dの場合はそれ以外の場合F = D + FE = E + D

  Sub PopCol()
      Range("D3:D19").Formula = "=RC[-1]-RC[-2]"  'D=C-B 

道に迷いました!この範囲でさまざまなフォーマットを試してみましたが、うまくいきませんでした-HELP!

ありがとう!

4

2 に答える 2

1

これはあなたがしようとしていることですか?

Sub PopCol()
    Dim rng As Range, aCell As Range

    Set rng = Range("D3:D19")

    rng.Formula = "=RC[-1]-RC[-2]"

    For Each aCell In rng
        Select Case aCell.Value

        Case Is < 0 '<~~ If value in D is negative
            '~~>  F = F + D
            aCell.Offset(, 2).Value = aCell.Offset(, 2).Value + aCell.Value
        Case Else
            '~~>  E = E + D
            aCell.Offset(, 1).Value = aCell.Offset(, 1).Value + aCell.Value
        End Select
    Next
End Sub
于 2013-03-27T18:42:25.473 に答える
0

以下のコードを試してください:

  Sub PopCol()
    For i = 3 To 19
        Range("D" & i) = CLng(Range("C" & i) - Range("B" & i))
        If (Range("D" & i) < 0) Then
            Range("F" & i) = Range("D" & i) + Range("F" & i)
        Else
            Range("E" & i) = Range("E" & i) + Range("D" & i)
        End If
    Next
End Sub
于 2013-03-27T18:55:31.960 に答える