根据您输入的月份更改其他Cell基础的值

时间:2017-02-03 06:03:28

标签: excel vba excel-vba

所以我有一个包含2张名为 YEAR表月报表的Excel文件,是否可以更改F21的值:F29的< strong>每月报告表,基于今天的日期或当前日期。今天是2月,将在月度报告表的F21:F29上的数据是2月份列或年度表的F21:F29。当前月份是3月将在F21上的数据:月度报告表的F29是3月份列或年度表的G21:G29。

非常感谢你们,GoodBless enter image description here enter image description here

3 个答案:

答案 0 :(得分:1)

使用INDEX MATCH。只要具有月份的单元格都被格式化为日期,它就会起作用

答案 1 :(得分:1)

在您的&#34;月度报告表&#34;的代码窗格中工作表放置以下代码:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.address = "$G$3" Then Range("F21:F29").Value = Worksheets("YEAR sheet").Range("D21:D29").Offset(, Month(Range("G3"))).Value
End Sub

答案 2 :(得分:1)

根据您给出的截图,将以下公式放到F21 Monthly Report Sheet单元格中,然后根据需要进行拖放。

=IFERROR(INDEX('YEAR Sheet'!$E$21:$P$32,ROWS($E$21:$E21),MATCH(LEFT($F$3,3),'YEAR Sheet'!$E$19:$P$19,0)),"")

注意: 如果数据从YEAR sheet中的不同单元格开始,则必须修改公式以调整数据范围。