VBA 学习笔记 - 日期
date()
返回当前的系统日期
返回格式为 YYYY/MM/DD
CDate()
学习资料:https://www.yiibai.com/vba/vba_cdate_function.html
将有效的日期和时间表达式转换为类型日期。
用法
cdate(date)
丸子:就是把输入转换为固定日期格式: YYYY/MM/DD
支持“月日年”、“年月日”格式,其中月份可以为英文缩写,但是 Libre Office 的编辑器不支持此种格式,会报错,只能使用 Micro Office Excel 程序自带开发工具。
Private Sub Constant_demo_Click()
Dim a As Variant
Dim b As Variant
a = CDate("Jan 01 2020")
MsgBox ("The Value of a : " & a)
b = CDate("31 Dec 2050")
MsgBox ("The Value of b : " & b)
c = CDate("2020-02-27")
MsgBox ("The Value of c : " & c)
End Sub
DateAdd()
学习材料:https://www.yiibai.com/vba/vba_dateadd_function.html
返回一个指定的时间间隔被添加的日期。
用法
DateAdd(interval,number,date)
Private Sub date_demo_Click()
' Positive Interal
date1 = 23 - Jan - 2020
MsgBox ("yyyy - 年份: " & DateAdd("yyyy", 1, date1))
MsgBox ("q - 季度: " & DateAdd("q", 1, date1))
MsgBox ("m - 一年中的月份: " & DateAdd("m", 1, date1))
MsgBox ("y - 一年中的年份: " & DateAdd("y", 1, date1))
MsgBox ("d - 一年中的一天: " & DateAdd("d", 1, date1))
MsgBox ("w - 工作日: " & DateAdd("w", 1, date1))
MsgBox ("ww - 星期: " & DateAdd("ww", 1, date1))
MsgBox ("h - 小时: " & DateAdd("h", 1, "01-Jan-2013 12:00:00"))
MsgBox ("n - 分钟: " & DateAdd("n", 1, "01-Jan-2013 12:00:00"))
MsgBox ("s - 秒钟: " & DateAdd("s", 1, "01-Jan-2013 12:00:00"))
' Negative Interval
MsgBox ("yyyy - 年份: " & DateAdd("yyyy", -1, date1))
MsgBox ("q - 季度: " & DateAdd("q", -1, date1))
MsgBox ("m - 一年中的月份: " & DateAdd("m", -1, date1))
MsgBox ("y - 一年中的年份: " & DateAdd("y", -1, date1))
MsgBox ("d - 一年中的一天: " & DateAdd("d", -1, date1))
MsgBox ("w - 工作日: " & DateAdd("w", -1, date1))
MsgBox ("ww - 星期: " & DateAdd("ww", -1, date1))
MsgBox ("h - 小时: " & DateAdd("h", -1, "01-Jan-2013 12:00:00"))
MsgBox ("n - 分钟: " & DateAdd("n", -1, "01-Jan-2013 12:00:00"))
MsgBox ("s - 秒钟 : " & DateAdd("s", -1, "01-Jan-2013 12:00:00"))
End Sub
DateDiff
学习材料:https://www.yiibai.com/vba/vba_datediff_function.html
返回两个指定的时间间隔之间的差值。
丸子:不太明白一年中的年和天是啥意思
用法
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])
Private Sub Constant_demo_Click()
Dim fromDate As Variant
fromDate = "01-Jan-2009 00:00:00"
Dim toDate As Variant
toDate = "01-Jan-2010 23:59:00"
MsgBox ("yyyy - 年份: " & DateDiff("yyyy", fromDate, toDate))
MsgBox ("q - 季度: " & DateDiff("q", fromDate, toDate))
MsgBox ("m - 一年中的月份: " & DateDiff("m", fromDate, toDate))'给的参数里面有俩 m
MsgBox ("y - 一年中的年份: " & DateDiff("y", fromDate, toDate))
MsgBox ("d - 一年中的一天:" & DateDiff("d", fromDate, toDate))
MsgBox ("w - 工作日: " & DateDiff("w", fromDate, toDate))
MsgBox ("ww - 星期: " & DateDiff("ww", fromDate, toDate))
MsgBox ("h - 小时: " & DateDiff("h", fromDate, toDate))
MsgBox ("n - 分钟: " & DateDiff("n", fromDate, toDate))'给的参数里面没有 n
MsgBox ("s - 秒钟: " & DateDiff("s", fromDate, toDate))
End Sub
DatePart()
学习资料:https://www.yiibai.com/vba/vba_datepart_function.html
返回给定日期的特定部分。
用法
DatePart(interval,date[,firstdayofweek[,firstweekofyear]])
Private Sub DatePart_demo_Click()
Dim Quarter As Variant
Dim DayOfYear As Variant
Dim WeekOfYear As Variant
Date1 = "2020-02-27"
Quarter = DatePart("q", Date1)
MsgBox ("q - 季度: " & Quarter)
DayOfYear = DatePart("y", Date1)
MsgBox ("y - 一年中的年份: " & DayOfYear)
WeekOfYear = DatePart("ww", Date1)
MsgBox ("ww - 星期: " & WeekOfYear)
MsgBox ("m - 一年中的月份: " & DatePart("m", Date1))
End Sub
DateSerial()
学习资料:https://www.yiibai.com/vba/vba_dateserial_function.html
返回指定日期、月份和年份参数的日期。
丸子:分别输入年月日,返回固定格式 YYYY/MM/DD
用法
DateSerial(year,month,day)
Private Sub Constant_demo_Click()
msgbox(DateSerial(2020,2,27))
End Sub
FormatDateTime()
学习资料:https://www.yiibai.com/vba/vba_formatdatetime_function.html
根据提供的参数格式化日期。
用法
FormatDateTime(date,format)
Private Sub FormatDateTimedemo()
d = ("2020-02-27 12:32")
MsgBox ("0 = vbGeneralDate - 默认值: " & FormatDateTime(d))
MsgBox ("1 = vbLongDate - 返回长日期: " & FormatDateTime(d, 1))
MsgBox ("2 = vbShortDate - 返回短日期: " & FormatDateTime(d, 2))
MsgBox ("3 = vbLongTime - 返回长时间: " & FormatDateTime(d, 3))
MsgBox ("4 = vbShortTime - 返回短时间: " & FormatDateTime(d, 4))
End Sub
VBA 学习笔记 - 日期的更多相关文章
- VBA学习笔记
这是一个学习VBA编程的学习笔记. 一. 介绍 二. 使用手册 2.1. 如何在Excel2010中开始使用VBA? 2.2. 如何使用VBA编辑器进行编程? 三. 语法说明 3.1 数据类型 3.2 ...
- VBA 学习笔记 - 变量与常量
学习资料:https://www.yiibai.com/vba/vba_variables.html 变量和常量命名规则 必须以字母开头 不能包含空格.句点(.).感叹号(!)或字符@,&,$ ...
- VBA 学习笔记 - 输入框
学习资料 https://www.yiibai.com/vba/vba_input_box.html 输入框 InputBox 函数说明 提示用户输入值.当输入值后,如果用户单击确定 按钮或按下键盘上 ...
- VBA 学习笔记 - 运算符
学习资料:https://www.yiibai.com/vba/vba_operators.html 算术运算符 加减乘除模指,这个没啥特别的. 比较运算符 和 Lua 相比,判断相等变成了一个等于号 ...
- VBA 学习笔记 - 消息框
学习资料:https://www.yiibai.com/vba/vba_macro_comments.html 注释 单引号或 REM 开头 丸子:多行注释咋办? 消息框(MsgBox) 函数功能:显 ...
- SQLServer学习笔记<>日期和时间数据的处理(cast转化格式、日期截取、日期的加减)和 case表达式
日期和时间数据的处理. (1)字符串日期 ‘20080301’,这一串为字符串日期,但必须保证为四位的年份,两位的月份,两位的日期.例如,查询订单表日期大于‘20080301’.可以这样写: 1 se ...
- php学习笔记——日期和时间
一.time() 来取得服务器当前时间的时间戳 UNIX 时间戳(timestamp)是 PHP 中关于时间日期一个很重要的概念,它表示从 1970年1月1日 00:00:00 到当前时间的秒数之和. ...
- VBA学习笔记(8)--遍历所有文件夹和文件
说明(2017.3.26): 1. 采用的是兰色幻想教学视频中的“父子转换法” 2. 这种VBA的遍历文件夹方法非常难理解,主要是因为dir这个函数,第一次带参数调用,返回的是此目录下的第一个文件,第 ...
- VBA学习笔记(4)--数组和单元格互相转换
说明(2017.3.23): 1. VBA的数组还是很难用的,其实就是非常难用! 2. 要先定义一个数组,可以是空的,也可以里面写个数字作为数组长度. 3. 如果是空数组,可以后面redim重新定义数 ...
随机推荐
- c# DPI SCale
public class Screen { /// Primary Screen #region Win32 API [DllImport("user32.dll")] stati ...
- Quartus ii 初学遇到的问题以及解决
第一次下载和运行Quartus后,发现几个问题: 下载时安装易出现问题. 解决:在官网下载后,在开始破解: 运行程序出现警告:RTL波形时出现问题? 解决:testbench程序出错. 问题3:在视频 ...
- 图像变换 - 霍夫线变换(cvHoughLines2)
霍夫变换是一种在图像中寻找直线.圆及其他简单形状的方法,霍夫线变换是利用Hough变换在二值图像中找到直线. 利用CV_HOUGH_PROBABILISTIC,对应PPHT(累计概率霍夫变换)?这个算 ...
- Java的多态-进阶
Java的多态——进阶 总括 Parent p = new Child(); 反之,Child() c = new Parent(); 会报错. 当使用多态方式调用方法时,首先检查父类中是否有该方法. ...
- python call perl
import subprocess subprocess.call("csv_gen.pl -by overall", shell=True)
- vue-cli 3 脚手架搭建(create)
地址:https://cli.vuejs.org/zh/guide/ 安装步骤: 提示:node 版本要 8.9+ 两种方式: (1) npm install -g @vue/cli (2) yarn ...
- JVM探秘:VisualVM监控远程Java进程
VisualVM在Java 8中是JDK自带的一个图形化工具,项目主页 VisualVM,在后续版本中可能会从JDK移除. VisualVM可以监控Java进程的CPU与内存占用情况,可以监控Java ...
- 8.10-Day1T2圈(circle)
圈(circle) 题目大意 一开始看这道题,觉得有点像备用钥匙那道题,需要离散化, 把一个球的两个点分开看... 但是..其中的规律我推不出来 (不是很难,只是蒟蒻好久都没有自己独立思考了) 题解 ...
- Qt那点事儿(一)
原文http://www.cnblogs.com/andreitang/archive/2011/08/03/2125815.html 第一回 Signal和Slot是同步的还是异步的? 我们知道Qt ...
- Bugku-CTF之江湖魔头(学会如来神掌应该就能打败他了吧)
Day39 江湖魔头 200 http://123.206.31.85:1616/ 学会如来神掌应该就能打败他了吧