Excel - 插入" day"在单元格上,并将其格式化为当前月份和年份

时间:2014-12-16 12:29:59

标签: date excel-formula

我正在制作一个家庭会计模板(找不到任何好的模板: - /),所以我每月创建一个。无论是我的开支还是收入,我都希望有一个日期栏,我只需插入“日期”(例如:22),它会自动填写当前月份和年份(或者我可以设置它们)另一个细胞)。

例如:22 + ENTER 将返回:22/12/2014

如果我这样做,我会自动获得默认日期:22/01/1900

我不知道是否可以根据当前值或任何其他值更改此默认日期。

我尝试过其他策略:如果amount列不为空,请填写今天的日期:=IF(A3="";"";TODAY())

问题是我并不总是注册今天的费用,所以我需要手动更改它。我只是想知道这是否可行并且有更好的方法(可能是宏?)。

2 个答案:

答案 0 :(得分:1)

ENTER 后,需要Excel修改单元格内容。唯一的选择似乎是使用Worksheet_Change事件的宏。

请查看this other question。我认为这会有所帮助。

答案 1 :(得分:0)

这可以通过简单格式化和使用Excel中可用的控件来实现。 VBA将为您提供更大的灵活性,但上述请求可以在不学习VBA的情况下完成。

我添加了sample file here

重新创建的步骤:

  1. 创建一系列月份。我创建了一个范围,包括截至2014年12月的当月。
  2. 从开发人员标签中插入一个组合框。右键单击并选择Format Control。在“控制”选项卡上,输入刚刚创建的范围,然后选择“链接的单元格”。这将插入一个整数,以指示您从列表中选择的项目,从1开始。
  3. 使用附加的公式添加您在第一列中输入的DAY,并从组合框中选择的值添加VLOOKUP月份和年份。
  4. 增强功能:我使用条件格式来更改您输入WHITE的日期的文字颜色。这样你就不会看到它们。我还在VLOOKUP公式中包含了一些检查:您输入的日期必须是一个数字,并且必须是非空白的日期才能填充。

    Screenshot of Combo Box solution