excel vba日期为了确保你不是来这里寻找技巧在约会场景中脱颖而出,让我们来搞清楚:在这篇文章中,我们将做一个深入的VBA编程在excel中约会!

VBA代表应用程序的Visual Basic。它基本上是微软的集成事件驱动编程语言Visual Basic,和他们的Microsoft Office应用程序套件。VBA是最常用的MS Excel,你可以在这个课程中学习。VBA最流行的部分是它的宏,但我们将采取一个侧线和探索另一个重要方面-这是数据处理。(如果你有兴趣的话了解更多关于Excel VBA宏,请查看本课程)。我们假设您对Excel和Visual basic都有基本的熟悉程度。如果你是新手,请先告诉我用这个基本的VBA为Excel课程。或者,如果你只是需要更新你的概念,你可以这么做阅读本教程

让我们开始吧!

Excel内部如何处理日期

您可以以任何人类可读的格式输入日期,例如美国格式(Month-Day-Year)或欧洲格式(Day-Month-Year)。Excel总是在内部以串行值的形式存储这些值。时间以十进制格式存储。这对于那些经常使用Excel的人来说非常有用——因为它使得添加日期或时间非常容易,甚至可以减去它们。它消除了计算日期、记录哪个月有30天、哪个月有31天、或者记住一小时是60分钟、时间不是十进制的烦琐。

何时使用VBA

有时您可能不得不做一个重复的任务,或者想要自动化它——这是VBA最常见的情况。更高级的用户也会使用VBA创建他们自己的算法来分析他们的数据,然后使用Excel的图表来整齐地显示数据(我们确实有终极VBA课程这向你展示了如何做到这一点-看看这里!)

如何使用VBA设置日期

VBA有一个简单的宏来设置日期。首先,您必须使用Dim语句声明一个变量。然后您可以使用DateValue函数,为变量分配一个日期。让我们快速看一下代码:

Date1 = DateValue("Jan 19, 2014") MsgBox年份(Date1)

奖金:正如您在示例中所看到的,您可以在末尾使用MsgBox命令在弹出消息中显示“年”,即2014 !多酷啊!

如何在VBA中添加2个日期

您可以使用非常通用的DateAdd函数添加两个日期,或一个天数,或几个月,或一个季度——基本上是任何日期单位)。让我们来看一个例子:

Date1 = DateValue("Jan 19, 2014") Date2 = DateAdd("d", 7, Date1) MsgBox Date2

请注意DateAdd函数的语法。

因此,通过使用DateAdd函数向Date1添加7天,我们创建了一个新的日期Date2。

就像我们之前说的,除了天数,你还可以加上月、季度或其他任何时间。这些是DateAdd函数可以接受的选项

从这个教程中休息一下,自己去尝试一些吧!

如何减去一个日期在VBA

大胆猜测一下。你认为如何在VBA中减去日期?这个函数会做什么?

Date1 = DateValue("Jan 19, 2014") Date2 = DateAdd("d", -7, Date1) MsgBox Date2

从字符串中获取日期

有时你可能会在Excel电子表格中以字符串的形式保存日期——例如“may /12/2014”。为了让您能够对它进行排序,或添加或减去它,您需要将其转换为实际的日期格式。你可以这样做。

Date1 = DateValue("19/Jan/2014") Range("A1")。值= Date1

这将使用字符串“19/Jan/2014”,并在内部将其转换为日期“19/1/2014”(或“1/19/2014”,取决于您的默认设置为美国或欧洲格式)。

奖金:你可以调用“Range”来保存日期Date1到单元格A1。

如何避免日期格式问题

根据你在地球的哪个地方,你可以使用美式的(月-日-年)或欧式的(日-月-年)。曾经遇到过这样的情况:你写的10/12/2013是指2013年10月12日,而地球另一边的供应商认为你想要在2013年12月10日交货?VBA有一个方法来确保你避免这样的错误-如果你使用正确。有一个dateseal函数,它强制您以特定的、中立的格式给出日期,从而避免所有歧义。语法

日期(年、月、日)

以下是它的用法:

Date1 = dateseal(2014, 1,19)范围(“A1”)。值=日期

在VBA中可以用日期做更多的事情。这只是冰山一角。我们强烈推荐您自己尝试使用VBA。你总是可以flex一些肌肉与MrExcel在这个VBA课程,或在这个终极VBA课程中取得飞跃。玩得开心,让我们知道它的进展!

Excel VBA顶级课程

解锁Excel VBA和Excel宏
莱拉Gharani
4.7 (26917)
畅销书
熟练掌握微软Excel宏和Excel VBA
凯尔尤
4.5 (11711)
畅销书
Excel宏和VBA初学者
Bluelime学习方案
4.3 (19)
热&新
完整的Web自动化与Excel VBA
丹尼尔强
4.8 (739)
畅销书
Excel VBA宏:超消除歧义的Excel VBA编程
格兰特赌博
4.4 (989)
畅销书
Excel VBA报表自动化要点
本杰明Termonia
4.6 (186)
最终Excel VBA
马克Talbert
4.7 (3210)
Excel VBA编程-完整指南
鲍里斯Paskhaver
4.7 (3742)
Microsoft Excel VBA简介
凯尔尤
4.5 (1161)
Excel宏和Excel VBA编程初学者
Andreas Exadaktylos
4.5 (859)
评价最高

更多Excel VBA课程

Excel VBA的学生也可以学习

让你的团队。领导行业。

使用Udemy for Business订阅在线课程库和数字学习工具。

请求一个演示