【问题标题】:Sum of range in a specific cell with predefined range in vba在 vba 中具有预定义范围的特定单元格中的范围总和
【发布时间】:2020-10-30 05:24:33
【问题描述】:

我有一个选定的范围,我将其定义为我的范围。我想在特定单元格中获取此选择的总和。 makro应该找到“x”,选择下面的单元格并输入“Sum”+我在“myrange”中定义的范围

Sub more_twelve_months()
Dim myrange As Range

Set myrange = Range(Range("F5"), Range("F5").End(xlToRight))
       
Set more_twelve_months = Range("A1:ZZ10000").Find("x")
    more_twelve_months.Select
    FormularCell = ActiveCell.Offset(1, 0).Select
    Selection.Resize(Selection.Rows.Count, _
    Selection.Columns.Count).Select


   ActiveCell.Sum (myrange)

我尝试了几种方法来获得总和, ActiveCell.Sum (myrange) 是我尝试的最后一件事。

有什么办法可以解决这个问题吗?

【问题讨论】:

    标签: excel vba select sum range


    【解决方案1】:

    这是你想要的吗?

    你应该尽可能avoid using Select

    Sub more_twelve_months()
    
    Dim myrange As Range
    Dim more_twelve_months As Range 'declare your variables
    
    Set myrange = Range(Range("F5"), Range("F5").End(xlToRight))
        
    Set more_twelve_months = Range("A1:ZZ10000").Find("x")
    
    If Not more_twelve_months Is Nothing Then 'check you've found something to avoid errors
        more_twelve_months.Offset(1).Value = Application.Sum(myrange)
    End If
    
    End Sub
    

    【讨论】:

    • 是的,确实如此。非常感谢。作为后续,如果您不介意:我尝试使用FillDown 将公式复制到列中,但随后它会复制列中的第一个单元格。我需要如何修改 makro 才能对除标题以外的整个列执行此操作?
    • 将起始单元格定义为第 2 行?如果不清楚,我建议您开始一个新问题。谢谢你接受这个。顺便说一句,您可以在不使用 FillDown 的情况下一次性添加公式。
    猜你喜欢
    • 1970-01-01
    • 2021-12-02
    • 2020-04-07
    • 1970-01-01
    • 2020-03-09
    • 2018-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多