簡體   English   中英

根據單元格值將公式放入 vba

[英]put formula in vba based on cell value

我正在嘗試通過 vba 程序放置如下動態公式:

=IFERROR(B9,0)+IFERROR(C9,0)+IFERROR(D9,0)+IFERROR(E9,0)++IFERROR(F9,0)+IFERROR(G9,0)+IFERROR(H9,0)+IFERROR(I9,0)+IFERROR(J9,0)+IFERROR(K9,0)+IFERROR(R9,0)+IFERROR(S9,0)+IFERROR(#REF!,0)+IFERROR(#REF!,0)+IFERROR(#REF!,0)+IFERROR(#REF!,0)+IFERROR(#REF!,0)

我有一個單元格,用於存儲公式(F3)中所需的列數。 現在,如果 F3 中的值是 18,我希望完成的是從單元格 B9 到單元格 S9(這是 19 col,因為我從 B 開始到 F3+1)的上述格式的公式。 更容易使用 Sum 但這不會達到我的目的。 因為如果 N/A 范圍內的任何單元格(很有可能),總和不應該是 N/A,而是其余值的總和。

嘗試這個。 它將求和並用0替換錯誤單元格。 這是一個非常簡單的循環,因此不做評論。

Sub SumNumwithoutError()
  Dim rn As Range
  Dim wrn As Range
  Dim xSum As Long
  On Error Resume Next
  xSum = 0
  Set wrn = Application.Selection
  Set wrn = Application.InputBox("Range", wrn.Address, Type:=8)
  For Each rn In wrn
   If (IsError(rn.Value)) Then
        rn.Value = 0
   End If
   If Not (IsError(rn.Value)) Then
       xSum = xSum + rn.Value
   End If
  Next
  MsgBox xSum
End Sub

暫無
暫無

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

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