时间函数-------------
变量类型
类型说明如下:
%——整型
&——长整型
!——单精度浮点数
#——双精度浮点数
@——货币型
$——字符串型
在Excel中录入数据时如何自动插入当前时间呢?
比如说,用Excel制作了一份考勤表,员工上班时,门卫在相应的单元格中输入数值1,而想让Excel自动获取当前时间呢?
对于这个问题,可以用VBA来实现了:右击考勤表所在的工作表标签(Sheet1),在随后出现的快捷菜单中,选择“查看代码”选项,打开Visual
Basic窗口,并输入下述代码至右侧的窗口区域中:
Private Sub Worksheet_Change(ByVal
Target As Range)
If Target.Column = 3 Or Target.Column =
5 Then
Target.Offset(0, 1) = Time
End
If
End Sub
以后您只需在C列(Target.Column =
3)或者E列(Target.Column =
5)单元格中输入字符,系统会在对应的D列或者F列单元格中输入当前时间。(红色部分可按实际需要修改)
注意:在VBA代码中,Date、Now、Time分别表示系统日期、日期及时间、时间。
Now
返回一个 Variant
(Date),根据计算机系统设置的日期和时间来指定日期和时间。
Date
返回包含系统日期的 Variant (Date)。
Time
返回一个指明当前系统时间的 Variant
(Date)。
Timer 返回一个
Single,代表从午夜开始到现在经过的秒数。
TimeSerial(hour, minute, second) 返回一个
Variant (Date),包含具有具体时、分、秒的时间。
DateDiff(interval, date1, date2[,
firstdayofweek[, firstweekofyear]]) 返回 Variant (Long)
的值,表示两个指定日期间的时间间隔数目
Second(time) 返回一个 Variant (Integer),其值为 0 到
59 之间的整数,表示一分钟之中的某个秒
Minute(time) 返回一个 Variant (Integer),其值为 0 到
59 之间的整数,表示一小时中的某分钟
Hour(time) 返回一个 Variant
(Integer),其值为 0 到 23 之间的整数,表示一天之中的某一钟点
Day(date)
返回一个 Variant (Integer),其值为 1 到 31
之间的整数,表示一个月中的某一日
Month(date) 返回一个 Variant (Integer),其值为 1 到 12
之间的整数,表示一年中的某月
Year(date) 返回 Variant
(Integer),包含表示年份的整数。
Weekday(date, [firstdayofweek]) 返回一个
Variant (Integer),包含一个整数,代表某个日期是星期几
VBA
时间函数怎么写?
在用户界面放了一个文本框,让用户来输入延时时间间隔值。如用户输入"00:00:05",该值是变量
先定义一个变量
timeuser=excel.cells(8,4)
Application.Wait
(Now() +
TimeValue(timeuser))
1,vba字符串函数列表:
Trim(string)
去掉string左右两端空白
Ltrim(string)
去掉string左端空白
Rtrim(string)
去掉string右端空白
Len(string)
计算string长度
Left(string, x)
取string左段x个字符组成的字符串
Right(string, x)
取string右段x个字符组成的字符串
Mid(string, start,x)
取string从start位开始的x个字符组成的字符串
Ucase(string)
转换为大写
Lcase(string)
转换为小写
Space(x)
返回x个空白的字符串
Asc(string)
返回一个integer,代表字符串中首字母的字符代码
Chr(charcode)
返回string,其中包含有与指定的字符代码相关的字符
2,VBA转换函数列表:
CBool(expression)
转换为Boolean型
CByte(expression)
转换为Byte型
CCur(expression)
转换为Currency型
CDate(expression)
转换为Date型
CDbl(expression)
转换为Double型
CDec(expression)
转换为Decemal型
CInt(expression)
转换为Integer型
CLng(expression)
转换为Long型
CSng(expression)
转换为Single型
CStr(expression)
转换为String型
CVar(expression)
转换为Variant型
Val(string)
转换为数据型
Str(number)
转换为String
3,VBA时间函数:
Now
返回一个Variant
(Date),根据计算机系统设置的日期和时间来指定日期和时间。
Date
返回包含系统日期的Variant (Date)。
Time
返回一个指明当前系统时间的Variant (Date)。
Timer
返回一个Single,代表从午夜开始到现在经过的秒数。
TimeSerial(hour,
minute, second)返回一个Variant
(Date),包含具有具体时、分、秒的时间。
DateDiff(interval, date1, date2[,
firstdayofweek[, firstweekofyear]])返回Variant
(Long)的值,表示两个指定日期间的时间间隔数目
Second(time)返回一个Variant
(Integer),其值为0到59之间的整数,表示一分钟之中的某个秒
Minute(time)返回一个Variant
(Integer),其值为0到59之间的整数,表示一小时中的某分钟
Hour(time)返回一个Variant
(Integer),其值为0到23之间的整数,表示一天之中的某一钟点
Day(date)返回一个Variant
(Integer),其值为1到31之间的整数,表示一个月中的某一日
Month(date)返回一个Variant
(Integer),其值为1到12之间的整数,表示一年中的某月
Year(date)返回Variant
(Integer),包含表示年份的整数。
Weekday(date, [firstdayofweek])返回一个Variant
(Integer),包含一个整数,代表某个日期是星期几
4,VBA获取文件列表:
Dir[(pathname[,
attributes])];pathname可选参数,用来指定文件名的字符串表达式,可能包含目录或文件夹、以及驱动器。如果没有找到
pathname,则会返回零长度字符串("");
attributes可选
参数。常数或数值表达式,其总和用来指定文件属性。如果省略,则会返回匹配pathname但不包含属性的文件。
5,VBA删除文件:
Killpathname从磁盘中删除文件,
pathname参数是用来指定一个文件名
RmDirpathname从磁盘中删除删除目录,pathname参数是用来指定一个文件夹
6,用VBA打开文件:
Openpathname
For mode [Access access] [lock] As [#]filenumber
[Len=reclength]能够对文件输入/输出(I/O)。
pathname必要。字符串表达式,指定文件名,该文件名可能还包括目录、文件夹及驱动器。
mode必要。关键字,指定文件方式,有Append、Binary、Input、Output、或Random方式。如果未指定方式,则以
Random访问方式打开文件。
access可选。关键字,说明打开的文件可以进行的操作,有Read、Write、或Read
Write操作。
lock可选。关键字,说明限定于其它进程打开的文件的操作,有Shared、Lock Read、Lock
Write、和Lock Read
Write操作。
filenumber必要。一个有效的文件号,范围在1到511之间。使用FreeFile函数可得到下一个可用的文件号。reclength可
选。小于或等于32,767(字节)的一个数。对于用随机访问方式打开的文件,该
值就是记录长度。对于顺序文件,该值就是缓冲字符数。
说明对文件做任何I/O操作之前都必须先打开文件。Open语句分配一个缓冲区供文件进行I/O之用,并决定缓冲区所使用的访问方式。如果
pathname指定的文件不存在,那么,在用Append、Binary、
Output、或Random方式打开文件时,可以建立这一文件。如果文件已
由其它进程打开,而且不允许指定的访问类型,则Open操作失败,而且会有错误发生。如果mode是Binary方式,则Len子句会被忽略
掉。
重要在Binary、Input和Random方式下可以用不同的文件号打开同一文件,而不必先将该文件关闭。在Append和Output方式
下,如果要用不同的文件号打开同一文件,则必须在打开文件之前先关闭该文
件
7,VBA读入文件:
Input#filenumber,
varlist从已打开的顺序文件中读出数据并将数据指定给变量
Get[#]filenumber, [recnumber],
varname将一个已打开的磁盘文件读入一个变量之中。
8,写入文件:
Write#filenumber,
[outputlist]将数据写入顺序文件
Print#filenumber,
[outputlist]将格式化显示的数据写入顺序文件中
Put[#]filenumber, [recnumber],
varname将一个变量的数据写入磁盘文件中。
9,VBA关闭文件:
Close[filenumberlist]关闭Open语句所打开的输入/输出(I/O)文件
注意
如果今后想用Input #语句读出文件的数据,就要用Write #语句而不用Print #语句将数据写入文件。因为在使用Write
#时,将数据域分界就可确保每个数据域的完整性,因此可用Input #再将数
据读出来。使用Write
#还能确保任何地区的数据都被正确读出。Write与Print #语句不同,当要将数据写入文件时,Write
#语句会在项目和用来标记字符串的引号之间插入逗号。Write
#语句在将
outputlist中的最后一个字符写入文件后会插入一个新行字符,即回车换行符,(Chr(13) +
Chr(10))。
format函数--------------
mid(字符串,从第几个开始,长度) 在[字符串]中[从第几个开始]取出[长度个字符串]
例如
mid("小欣无敌",1,3) 则返回 "小欣无"
instr(从第几个开始,字符串1,字符串2) 从规定的位置开始查找,返回字符串2在字符串1中的位置
例如
instr(1,"小欣无敌","小") 则返回 1,instr(2,"小欣无敌","小"),则返回 0 。 0 表示未找到
InStrRev(字符串1,字符串2,从第几个开始) 从规定的位置开始,从后住前查找,返回字符串2在字符串1中的位置,此处注意,虽是从后住前查找,但是返回的值还是从前往后算的。
例如
instrRev("小欣无敌","小",2) 则返回 2 ; instrRev("小欣无敌","欣",1) 则返回 0
,因为它从"小欣无敌"的第1个字开始往前查找,所以找不到 。0 表示未找到
left(字符串,长度) 从[字符串]的左边开始返回[长度]个字符
例如
Left("小欣无敌,3) 则返回 "小欣无"
right(字符串,长度) 从[字符串]的右边开始返回[长度]个字符
例如
Right("小欣无敌",3) 则返回 "欣无敌"
ucase(字符串) 返回[字符串]的大写形式,只对英文字符有效
例如
ucase("xiaoXINwuDi") 则返回 "XIAOXINWUDI"
lcase(字符串) 返回[字符串]的小写形式,只对英文字符有效
例如
lcase("xiaoXINwuDi") 则返回 "xiaoxinwudi"
asc(字符) 返回[字符]的ascii编码,若有多个字符,则只返回首字符的ascii编码,和Chr()函数是一个可逆的过程
例如
asc("小") 则返回 -12127 ; asc("小欣无敌") 也返回 -12127
chr(ASCii编码) 返回[Ascii]编码所代表的字符,和Chr()函数是一个可逆的过程
例如
chr(-12127) 则返回 "小" ;chr(asc("小")) 则返回"小"(这里是为了说明asc和chr的可逆性,例用此特性可以加密文本)
trim(字符串) 返回去掉了前、后之后的[字符串]
例如
trim(" 小 欣 无敌 ") 则返回 "小
欣 无敌" ,中间的空格不受任何影响
string(个数,字符) 返回[个数]个[字符]
例如 string(3,"小") 则返回
"小小小" , 而 string(3,"小欣无敌") 也返回 "小",只有首字符才有效
space(个数) 返回[个数]个空格
例如 space(5) 则返回
" "
strconv(字符串,转换的类型) 将字符串转成指定的类型。常用的类型只有两个,vbwide
半角转成全角,vbNarrow 全角转成半角
例如 strconv("xiao",vbwide) 则返回
"XIAO",而strconv("XIAO",vbnarrow) 则返回 "XIAO"
’备注 vbwide = 4 ,vbnarrow =
8
len(字符串) 返回[字符串]的长度
例如 len("小欣无敌") 则返回
4
原文地址:http://www.cnblogs.com/qiqingnan/p/3764125.html