我在想怎么根据日期得到行号。
我在Excel中在一个工作表上构建了一个日历,同时使用另一个工作表作为表格,其中A1:NB1
是日期。
示例:x1c 0d1x
我正在使用以下公式为我提供与单元格选择日期相关联的列编号=IFERROR(MATCH(M3,INDIRECT("'"&ScYear&"'!A1:NB1",TRUE),0),"")
示例:
我想要一种方法来标识日历上选择的行号与表日期列中的第一个可用行。
例如,如果我在日历中选择今天日期的第一个单元格,它会报告第1行,因为这是第一个空白单元格。如果我选择今天日期下面的第二个单元格,它会选择第二行,一直到第九行。
任何帮助将不胜感激!
1条答案
按热度按时间jdgnovmf1#
在VBA中,我使用了这个冗长而不优雅的解决方案来获得我想要的基于
target.value
的行。通过“手动”让它识别所选的目标地址,我可以让它识别所选的行,并将该值写入
Range("M43")
,然后使用类似于以下Sheets("" & DbSht & "").Cells(DbRow + 1, DbCol).Value = Target.Value
的代码识别需要更新的列和行。(DbRow = M43中的值,DbCol = M42中的值,其为列号和行号)。可能有一种更简单的方法通过一个模块来使用索引或匹配,但这个解决方案目前有效。希望这比我最初的问题更有意义。
只是代码的一个示例,不是全部,太长了: