是否有可能让Excel返回一个date,倒计时到一个不是今天或现在的特定date的date?
是否有可能让Excel返回一个date,倒计时到一个不是今天或现在的特定date的date? 例如:End_date是04/22/14,我拥有的数据是“前2周”,“前3天”,“前4个月”等。因此,我希望“前3天”的单元格显示date(14年4月19日)
我发现从今天开始倒计时的信息:= DATEVALUE(“2014年4月22日”) – 今天()和“剩余天数”
但是这显示剩余的时间,我需要将今天replace为代表“4月22日之前2周”的值,并且返回成为数据
这可能是不可能的:/
除了上面我的评论之外,由于你的post没有提到你会在1 month before
或2 years before
1 month before
文字,我会假设他们不在那里。 如果他们是那么我们将不得不略微调整公式。
假设你的数据是这样的(忽略红色的单元格,我仍然在试验它)
只需在单元格B2
添加此公式并将其拉下
=(LEFT(A2,SEARCH(" ",A2,1)))*(VLOOKUP(TRIM(MID(A2,SEARCH(" ",A2,1),SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))),F:G,2,0))
这在C2
和拉下来
=DATEVALUE("22-April-2014")-B2
另外,在F:J
列中添加一个查找小表,如下图所示
说明
我使用Left/Search/Mid
来提取数字部分和文本,然后可以是Day/week/Days/weeks/fortnight/fortnights/Months/Years/Month/Year
fortnights Day/week/Days/weeks/fortnight/fortnights/Months/Years/Month/Year
,然后使用Vlookup查找等价物天。
所以,如果我打破这个=(LEFT(A2,SEARCH(" ",A2,1)))*(VLOOKUP(TRIM(MID(A2,SEARCH(" ",A2,1),SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))),F:G,2,0))
为第一个单元格,
(LEFT(A2,SEARCH(" ",A2,1)))
(VLOOKUP(TRIM(MID(A2,SEARCH(" ",A2,1),SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))),F:G,2,0))
= 7
因此= 3 * 7 = 21
(VLOOKUP(TRIM(MID(A2,SEARCH(" ",A2,1),SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))),F:G,2,0))
可以进一步分解
TRIM(MID(A2,SEARCH(" ",A2,1),SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1)))
会给你Weeks
,一旦我们知道我们做一个简单的查询。
挑战
就像我提到的,如果你有几个月和几天,那么可以有多个值。 见桌子。
如果文本包含days,weeks,months and years
那么这个解决scheme是有帮助的。
在C
添加公式==MID(A1,FIND(" ", A1)+1,3)
并将其向下拖动。
在B
列中加上公式=IF((C1="day"),($B$1-LEFT(A5,1)),IF(C1="wee",($B$1-(LEFT(A5,1)*7)),IF(C1="mon",EDATE($B$1,-LEFT(A5,1)),IF(C1="yea",EDATE($B$1,(-LEFT(A5,1)*12)))))
并将其向下拖动。
如果EDATE()
函数不可用,并返回#NAME? 错误意味着安装并加载分析工具库加载项。
请访问这里来加载Excel分析工具包。
以下是解决scheme的快照。