簡體   English   中英

插入引用ActiveCell.Offset值(VBA)的SUM函數

[英]Inserting a SUM function that references ActiveCell.Offset values (VBA)

我需要將sum函數輸入到引用ActiveCell.Offset值的單元格中。 有沒有辦法在VBA中做到這一點? 這是到目前為止的代碼:

 For Each cell In Rec
    If cell.Value = "Y" And cell.Offset(0, 1).Value = "Y" Then
            cell.Activate
            Selection.Clear
            ActiveCell.Offset(0, 1).Clear
            ActiveCell.Offset(0, 2).Value = ActiveCell.Offset(0, 2).Value - (ActiveCell.Offset(0, 3).Value + ActiveCell.Offset(0, 6).Value)
            ActiveCell.Offset(0, 6).Clear
            ActiveCell.Offset(0, 7).Clear
            ActiveCell.Offset(0, 3).Clear
            ActiveCell.Offset(0, 2).Formula = "=SUM(ActiveCell.Offset(0,4):ActiveCell.Offset(0,5))"
            Range("A" & ActiveCell.Row & ":S" & ActiveCell.Row).Copy
            pasteSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulasAndNumberFormats
            Range("A" & ActiveCell.Row & ":S" & ActiveCell.Row).Delete
End If
Next
For Each cell In Rec
   With cell
       If .Value = "Y" And .Offset(0, 1).Value = "Y" Then
               .Clear
               .Offset(0, 1).Clear
               .Offset(0, 2).Value = .Offset(0, 2).Value - (.Offset(0, 3).Value + .Offset(0, 6).Value)
               .Offset(0, 6).Clear
               .Offset(0, 7).Clear
               .Offset(0, 3).Clear
               .Offset(0, 2).Formula = "=SUM(" & .Offset(0, 4).Resize(, 2).Address(1, 1) & ")"
               ActiveSheet.Range("A" & .row & ":S" & A.row).Copy
               pasteSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteFormulasAndNumberFormats
               ActiveSheet.Range("A" & ActiveCell.row & ":S" & ActiveCell.row).Delete
        End If
    End With
Next

請注意,您要在.Offset(0, 2)中設置一個值,然后在同一行中插入幾行公式。 您可能使用了錯誤的單元格引用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM