2012-07-20 72 views
2

我一直在使用我的Excel宏面临一段时间的问题,并且我无法在任何地方找到解决方案。我想要做的事情描述如下:根据Excel中的时间列更改日期列

我有一张Excel表格,其中包含当月电视频道的EPG信息。 一列包括电视节目/事件的名称。在它旁边,另一列包括每个电视节目的相应开始时间(例如13:15),第三列包括每个事件的相应日期(20/07/2012)。

问题是,00:00之后的日子不会改变,因为它应该在早上的06:00改变。我想要一个搜索整个时间栏的宏,找到00:00 06:00之间的任何时间,并转到相应的日期单元格并更改日期(添加一天)。这是可能的,以及如何?

回答

3

您不需要VBA。在日期列后面插入一列。我现在假设你的时间是在B列,您的日期是列C.现在在你的新列d把公式

=IF(AND(B1 >= 00:00 and B1 < 06:00), C1 + 1, C1) 

然后你就可以隐藏C列,如果你喜欢。并将D列的数字格式更改为日期。我不是语法肯定100%,虽然比较时,即A1 >= 00:00但根据这个线索:http://www.excelbanter.com/showthread.php?t=212849应该

=IF(AND(B1 >= TIME(0,0,0) and B1 < TIME(6,0,0), C1 + 1, C1) 
+0

丹感谢您的回复,这对我帮助很大。对我有效的是:在列D = IF(AND(B1> = TIME(0,0,0),B1 = TIME(0,0,0),RC [-2] user1540061 2012-07-20 11:16:48

+0

很高兴帮助,你真的需要宏吗?你不能只在单元格中输入该公式并拖下来吗? – Dan 2012-07-20 11:45:10

+0

那么这只是我的宏的一个功能。再次感谢。 – user1540061 2012-07-20 13:08:26

相关问题