2015-06-08 43 views
3

一組數據,我有一組數據這樣:如何找到該月的第一次約會在VBA

05/06/2015 
04/06/2015 
03/06/2015 
02/06/2015 
29/05/2015 
28/05/2015 
27/05/2015 
26/05/2015 
25/05/2015 
22/05/2015 
21/05/2015 
20/05/2015 
19/05/2015 
18/05/2015 
15/05/2015 
14/05/2015 
13/05/2015 
12/05/2015 
11/05/2015 
08/05/2015 
07/05/2015 
06/05/2015 
05/05/2015 
04/05/2015 
30/04/2015 
29/04/2015 
28/04/2015 
27/04/2015 
24/04/2015 
23/04/2015 
22/04/2015 
21/04/2015 
20/04/2015 
17/04/2015 
16/04/2015 
15/04/2015 
14/04/2015 
13/04/2015 
10/04/2015 
09/04/2015 
08/04/2015 
07/04/2015 
06/04/2015 
02/04/2015 
01/04/2015 
31/03/2015 

這些涉及到平日一年。在這些日期中,我想查找本月的第一個日期。例如,6月份,第一個確定的日期應該是2015年6月2日,5月4日是2015年5月4日。

我已經試過這樣的事情:

=IF(Cellreference=((Cellreference)-DAY(Cellreference)+1),TEXT(Cellreference,"mmm"),"") 

但這隻需要一個月的第一天。我希望它成爲本月在給定日期列表中的第一個日期。

需要一些關於如何實現這一點的指導。

+0

作爲列表似乎被責令你能不能嘗試檢測,當你正在檢查的日期的月份是在細胞波紋管從每月不同? – Tom

+0

希望這個[鏈接](http://dmcritchie.mvps.org/excel/datetime.htm)有幫助 – 0m3r

+0

您可以使用函數'Weekday()'來檢查日期是星期六(返回值= 7)還是週日(返回值= 1) – Trimax

回答

5

我看你用所以我只能建議如下:

=MIN(IF(MONTH(AllDateReference)=MONTH(CellReference),AllDateReference,1E+99)) 

這是使用按Ctrl + Shift + Enter鍵數組公式輸入。
實際樣品:

=MIN(IF(MONTH(A$1:A$46)=MONTH(A1),A$1:A$46,1E+99)) 

其中A$1:A$46包含所有日期。

編輯1:僅在本月的第一天顯示。

=IF(A1=MIN(IF(MONTH(A$1:A$46)=MONTH(A1),A$1:A$46,1E+99)),A1,"") 

樣品:

enter image description here

+0

非常聰明,一個注意:更好地使用'if'公式中的月份和年份 – Dawid

+0

有一點,它顯示爲一個數字而不是月份。如何解決它?第二件事,本月的所有日期都會出現相同的數字。我需要它僅在本月的第一個日期出現。怎麼做? – lakesh

+0

@lakesh要使其顯示爲月份,只需將其格式正確。爲了使它僅在每月的第一天出現,只需爲此添加另一個「IF」。 – L42

相關問題