1.当前日期及格式自定义
1.1 获取当前日期方法:
Currentdate1=now()
msgbox Currentdate1
1.2 当前日期格式自定义:
Currentdate2=year(Now)&"-"&Month(Now)&"-"&day(Now)
msgbox Currentdate2
2. 获取某一天的日期及格式自定义
2.1 DateAdd 函数介绍
返回已添加指定时间间隔的日期。
DateAdd(interval,
number, date)
参数
interval
必选项。字符串表达式,表示要添加的时间间隔,可以是年、月、日。有关数值,请参阅“设置”部分。
number
必选项。数值表达式,表示要添加的时间间隔的个数。数值表达式可以是正数(得到未来的日期)或负数(得到过去的日期)。
date
必选项。Variant 或要添加 interval 的表示日期的文字。
设置
interval 参数可以有以下值:
设置 | 描述 |
---|---|
yyyy | 年 |
q | 季度 |
m | 月 |
y | 一年的日数 |
d | 日 |
w | 一周的日数 |
ww | 周 |
h | 小时 |
n | 分钟 |
s | 秒 |
2.2 例子
2.2.1 获取前一天的日期
yesterday = DateAdd("d",-1,now)
2.2.2 格式自定义
yesterday_format = DatePart("yyyy",my_date1) & "-" & Right("0" & DatePart("m",my_date1), 2) & "-" & Right("0" & DatePart("d",my_date1),2)
作用:不考虑系统设定的时间格式(默认为YYYY/M/D),修改输出时间格式为YYYY-MM-DD,并将结果赋予变量my_date2
3. 邮件
详细注释版:
'Date: 2010/6/18
'Author: Demon
'QQ: 380401911
'E-mail: still.demon@gmail.com
'Website: http://demon.tw
Const Email_From = "ddd@163.com" '发件人邮箱
Const Password = "password" '发件人邮箱密码
Const Email_To = "380401911@qq.com" '收件人邮箱
Set CDO = CreateObject("CDO.Message") '创建CDO.Message对象
CDO.Subject = "From Demon" '邮件主题
CDO.From = Email_From '发件人地址
CDO.To = Email_To '收件人地址
CDO.TextBody = "Hello world!" '邮件正文
cdo.AddAttachment "C:\hello.txt" '邮件附件文件路径,切记这里不需要“=”
Const schema = "http://schemas.microsoft.com/cdo/configuration/" '规定必须是这个,我也不知道为什么
With CDO.Configuration.Fields '用with关键字减少代码输入
.Item(schema & "sendusing") = 2 '使用网络上的SMTP服务器而不是本地的SMTP服务器
.Item(schema & "smtpserver") = "smtp.gmail.com" 'SMTP服务器地址,可在邮箱设置里查看
.Item(schema & "smtpauthenticate") = 1 '服务器认证方式
.Item(schema & "sendusername") = Email_From '发件人邮箱
.Item(schema & "sendpassword") = Password '发件人邮箱密码
.Item(schema & "smtpserverport") = 465 'SMTP服务器端口
.Item(schema & "smtpusessl") = True '是否使用SSL
.Item(schema & "smtpconnectiontimeout") = 60 '连接服务器的超时时间
.Update '更新设置
End With
CDO.Send '发送邮件
If Err.number<>0 Then '判断是否出错
SendMail=False
msgbox "发送失败"
Else
SendMail=True
msgbox "发送成功"
End If
Set CDO=Nothing
参考原文:http://www.jb51.net/article/26105.htm
4. 正文来自文件,文件读取
content= "D:\dailyreport.txt"
set fso=createobject("scripting.filesystemobject")
if fso.fileexists(content) then
set fil=fso.getfile(content)
filename=fil.name
if lcase(right(filename,4))=".txt" then
set txt=fso.opentextfile(content,1)
task=txt.readall
txt.close
end if
end if
Q1:读取的文件后,发送的中文显示乱码,怎么解决?
A:由于编码格式不正确导致的,需要反文件编码格式改成ASCII格式。
Q2:使用批处理运行vsb文件,出现中文的赋值的地方都报错了,怎么回事?
A:也是由于编码格式不正确导致的,需要把文件编码格式改成ASCII格式。