0

这是我第一次在 SO 论坛上,我需要帮助解决我遇到的一些问题。我正在尝试使用 VBA 为 excel 编写一个宏,该宏从插入到工作表中的两个表中检索一些值,该工作表通过访问进行动态更新。

我不确定我是否能很好地解释自己到现在为止。

我想要一个宏,它将单元格 A1 的值(此单元格是今天的日期)与一行中不同列标题的值进行比较。如果日期与列标题中的日期相同,我希望它执行此计算:

=SUM(模型!V3:V31)

起初我考虑使用 if 函数来检查 A1 是否与列标题相同,但后来我记得当日期更改时,值将变为 0,我希望它保持旧值。

我有办法让单元格保持其 ald 值而不是转为 0?

更新(13 年 17 月 10 日)然后我考虑使用许多 if 函数来保存值,但这没有用,我添加了一张我尝试过的照片 http://i.stack.imgur.com/w9XQY.png

4

1 回答 1

0

您可以在您的 VBA 代码中使用一个简单的if语句: 编辑:根据您的不同评论、屏幕截图和编辑,这是我对您需求的理解:

Dim Row As Integer, Column As Integer, vSum As Integer, i As Integer
    If Cells(Row, Column) = Cells(1, 1) Then
        Sheets("Modelos").Activate
        vSum = 0
        For i = 3 To 31
            vSum = vSum + Cells(i, 22)
        Next
        Sheets("Sales Flash").Activate
        Cells(Row + 3, Column) = vSum
    End If 'no else: if the value is different, the cell content will remain untouched

公式绝对不是那里的选项,直接在您的工作表或 VBA 中,因为您的内容将使用您的 Modelos 工作表中的新值系统地更新。

于 2013-10-15T13:40:27.500 回答