本文目录一览:
程序员必须知道的HTML常用代码有哪些
html+css代码
文本设置
1、font-size: 字号参数
2、font-style: 字体格式
3、font-weight: 字体粗细
4、颜色属性
color: 参数
注意使用网页安全色
超链接设置
text-decoration: 参数
主要用途是改变浏览器显示文字链接时的下划线。
参数取值范围:
underline:为文字加下划线
overline:为文字加上划线
line-through:为文字加删除线
blink:使文字闪烁
none:不显示上述任何效果
背景
1、背景颜色
background-color: 参数
2、背景图片
background-image: url(URL)
URL就是背景图片的存放路径,none表示无。
3、背景图片重复
background-repeat: 参数
参数取值范围 :
no-repeat:不重复平铺背景图片
repeat-x:使图片只在水平方向上平铺
repeat-y:使图片只在垂直方向上平铺
如果不指定背景图片重复属性,浏览器默认的是背景图片向水平、垂直两个方向上平铺。
4、背景图片固定
背景图片固定控制背景图片是否随网页的滚动而滚动。如果不设置背景图片固定属性,浏览器默认背景图片随网页的滚动而滚动。为了避免过于花哨的背景图片在滚动时转移浏览者的注意力,一般都设为固定
background-attachment: 参数
参数取值范围:
fixed:网页滚动时,背景图片相对于浏览器的窗口而言,固定不动
scroll:网页滚动时,背景图片相对于浏览器的窗口而言,一起滚动
区块
1、单词间距
word-spacing: 间隔距离
2、字母间距
letter-spacing: 字母间距
3、文本对齐
text-align: 参数
参数的取值:
left:左对齐
right:右对齐
center:居中对齐
justify:相对左右对齐
4、垂直对齐
vertical-align: 参数
top:顶对齐
bottom:底对齐
text-top:相对文本顶对齐
text-bottom:相对文本底对齐
baseline:基准线对齐
middle:中心对齐
sub:以下标的形式显示
super:以上标的形式显示
5、文本缩进
text-indent: 缩进距离
12px相当于一个文字距离
6、空格
white-space: 参数
normal 正常
pre 保留
nowrap 不换行
7、显示样式
display: 参数
参数取值范围:
block:块级元素,在对象前后都换行
inline:在对象前后都不换行
list-item:在对象前后都换行,增加了项目符号
none:无显示
方框
1、height 高度
2、width 宽度
3、padding 内边距
4、margin 外边距
5、float(浮动):可以让块级元素在一行中排列,例如横向菜单。
6、clear 清除浮动
边框
1、样式
border style 参数
边框样式的参数:
none:无边框
dotted:边框为点线
dashed:边框为长短线
solid:边框为实线
double:边框为双线
2、宽度
border width 参数
3、颜色
border color 参数
列表
list-style-type 列表样式
不同浏览器的列表符可能不相同,可能会影响到网页,所以网页中的列表大多都是由背景图片显示。
控制用户界面的样式
鼠标
cursor:鼠标形状参数
CSS鼠标形状参数表:
鼠标形状:CSS代码
style="cursor:hand" 手形
style="cursor:crosshair" 十字形
style="cursor:text" 文本形
style="cursor:wait" 沙漏形
style="cursor:move" 十字箭头形:
style="cursor:help" 问号形
style="cursor:e-resize" 右箭头形
style="cursor:n-resize" 上箭头形
style="cursor:nw-resize" 左上箭头形
style="cursor:w-resize" 左箭头形
style="cursor:s-resize" 下箭头形
style="cursor:se-resize" 右下箭头形
style="cursor:sw-resize" 左下箭头形
HTML常用代码之:结构性定义
文件类型HTML/HTML (放在档案的开头与结尾)
文件主题TITLE/TITLE (必须放在「文头」区块内)
文头HEAD/HEAD (描述性资料,像是「主题」)
文体BODY/BODY (文件本体)
标题H?/H? (从1到6,有六层选择)
标题的对齐 H?ALIGN=LEFT|CENTER|RIGHT/H?
区分DIV/DIV
区分的对齐 DIVALIGN=LEFT|RIGHT|CENTER|JUSTIFY/DIV
引文区块BLOCKQUOTE/BLOCKQUOTE (通常会内缩)
强调EM/EM (通常会以斜体显示)
特别强调STRONG/STRONG (通常会以加粗显示)
引文CITE/CITE (通常会以斜体显示)
码CODE/CODE (显示原始码之用)
样本SAMP/SAMP
键盘输入KBD/KBD
变数VAR/VAR
定义DFN/DFN (有些浏览器不提供)
地址 ADDRESS/ADDRESS
大字BIG/BIG
小字SMALL/SMALL
与外观相关的标签(作者自订的表现方式)
加粗B/B
斜体I/I
底线U/U (尚有些浏览器不提供)
删除线S/S (尚有些浏览器不提供)
下标SUB/SUB
上标SUP/SUP
打字机体TT/TT (用单空格字型显示)
预定格式PRE/PRE (保留文件中空格的大小)
预定格式的宽度PRE WIDTH=?/PRE(以字元计算)
向中看齐CENTER/CENTER (文字与图片都可以)
闪耀BLINK/BLINK (有史以来最被嘲弄的标签)
字体大小 FONTSIZE=?/FONT(从1到7)
改变字体大小 FONTSIZE=+|-?/FONT
基本字体大小 BASEFONTSIZE=? (从1到7; 内定为3)
字体颜色 FONTCOLOR="#$$"/FONT($$为颜色代码)
HTML常用代码之:修改页面的实用性HTML代码
贴图:img src="图片地址"
加入连接:a href="所要连接的相关地址"写上你想写的字/a
在新窗口打开连接:a href="相关地址" target="_blank"写上要写的字/a
移动字体(走马灯):marquee写上你想写的字/marquee
字体加粗:b写上你想写的字/b
字体斜体:i写上你想写的字/i
字体下划线: u写上你想写的字/u
字体删除线: s写上你想写的字/s
字体加大: big写上你想写的字/big
字体控制大小:h1写上你想写的字/h1 (其中字体大小可从h1-h5,h1最大,h5最小)
更改字体颜色:font color="#value"写上你想写的字/font(其中value值在000000与ffffff(16位进制)之间
消除连接的下划线:a href="相关地址" style="text-decoration:none"写上你想写的字/a
贴音乐:embed src="音乐地址" width="宽度" height="高度" autostart=false
贴flash: embed src="flash地址" width="宽度" height="高度"
贴影视文件:img dynsrc="文件地址" width="宽度" height="高度" start=mouseover
换行:br
段落:p段落/p
原始文字样式:pre正文/pre
换帖子背景:body background="背景图片地址"
固定帖子背景不随滚动条滚动:body background="背景图片地址" body bgproperties=fixed
定制帖子背景颜色:body bgcolor="#value"(value值见10)
帖子背景音乐:bgsound="背景音乐地址" loop=infinite
贴网页:iframe. src="相关地址" width="宽度" height="高度"/iframe
HTML常用代码之:常常会遇到的问题
点击关闭窗口
a href="javascript.:top.window.close();"点击关闭窗口/a!
请问如何去掉主页右面的滚动条?
body scroll="no"
body style="overflow-y:hidden"
如何做到让一个网页自动关闭.
html
head
OBJECT id=closes type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"
param name="Command" value="Close"
/object
/head
body
这个窗口会在10秒过后自动关闭,而且不会出现提示. /body
如何在不刷新页面的情况下刷新css?
style
button{ color:#000000;}
/style
button nclick=document.styleSheets[0].rules[0].style.color=‘‘‘‘red‘‘‘‘点击按钮直接修改style标签里button选择符使按钮改为红色/button
请问如何让网页自动刷新?
在head部记入META. HTTP-EQUIV="Refresh" c其中20为20秒后自动刷新,你可以更改为任意值。
如何让页面自动刷新?
方法一,用refresh
HTML 代码片段如下:
head
meta. http-equiv="refresh" c
/head
5表示刷新时间
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
方法二,使用setTimeout控制
img src=/logo.gif
script
function rl(){
document.location.reload()
setTimeout(rl,2000)
/SCRIPT
如何让超链接没有下划线
在源代码中的HEAD…/HEAD之间输入如下代码:
style. type="text/css" !--
a { text-decoration: none}
-- /style
请问如何去掉IE的上下滚动条?
body style=‘‘‘‘overflow:scroll;overflow-y:hidden‘‘‘‘
/body
怎样才能把RealPlayer文件在网页做一个试听连接?
embed height=25 src=51js.rm type=audio/x-pn-realaudio-plugin width=50 autostart="false" c
如何用html实现浏览器上后退按钮的功能?
a href="java script.:history.go(-1)"点击后退/a
或者
script history.back() /SCRIPT
HTML常用代码之:你不一定知道的技巧
ncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
table borderncontextmenu=return(false)tdno/table 可用于Table
body nselectstart="return false" 取消选取、防止复制
onpaste="return false" 不准粘贴
oncopy="return false;" ncut="return false;" 防止复制
link rel="Shortcut Icon"href="favicon.ico" IE地址栏前换成自己的图标
link rel="Bookmark"href="favicon.ico" 可以在收藏夹中显示出你的图标
inputstyle="ime-mode:disabled" 关闭输入法
永远都会带着框架
script. language="JavaScript"!--
if (window == top)top.location.href = "frames.htm"; //frames.htm为框架网页
// --/script
防止被人frame.
SCRIPT. LANGUAGE=JAVASCRIPT!--
if (top.location != self.location)top.location=self.location;
// --/SCRIPT
网页将不能被另存为
noscriptiframe.src=*.html/iframe/noscript
查看网页源代码
input type=button value=查看网页源代码
onclick="window.location = "view-source:"+"""
删除时确认
a href="javascript:if(confirm("确实要删除吗?"))location="boos.asp? areyou=删除page=1""删除/a
屏蔽功能键Shift,Alt,Ctrl
script
function look(){
if(event.shiftKey)
alert("禁止按Shift键!");//可以换成ALT CTRL
document.onkeydown=look;
/script
网页不会被缓存
META. HTTP-EQUIV="pragma" CONTENT="no-cache"
META. HTTP-EQUIV="Cache-Control"CONTENT="no-cache, must-revalidate"
META. HTTP-EQUIV="expires"CONTENT="Wed, 26 Feb 1997 08:21:57 GMT"
或者META. HTTP-EQUIV="expires"CONTENT="0"
怎样让表单没有凹凸感?
input type=text style="border:1 solid #000000"
input type=text style="border-left:none;border-right:none; border -top:none; border-bottom: 1 solid#000000"/textarea
不要滚动条?
让竖条没有:
body style="overflow:scroll;overflow-y:hidden"
/body
让横条没有:
body style="overflow:scroll;overflow-x:hidden"
/body
两个都去掉?更简单了
body scroll="no"
/body
怎样去掉图片链接点击后,图片周围的虚线?
a href="#"nFocus="this.blur()"img src="logo.jpg"border=0/a
电子邮件处理提交表单
form. name="form1"method="post" action="mailt****@***.com"enctype="text/plain"
input type=submit
/form
在打开的子窗口刷新父窗口的代码里如何写?
window.opener.location.reload()
如何设定打开页面的大小
body nload="top.resizeTo(300,200);"
打开页面的位置bodynload="top.moveBy(300,200);"
在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动
STYLE
body
{background-image:url(logo.gif); background-repeat:no-repeat;
background-position:center;background-attachment: fixed}
/STYLE
检查一段字符串是否全由数字组成
script. language="Javascript"!--
function checkNum(str){return str.match(//D/)==null}
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))
// --/script
获得一个窗口的大小
document.body.clientWidth; document.body.clientHeight
怎么判断是否是字符
if (/[^/x00-/xff]/g.test(s)) alert("含有汉字");
else alert("全是字符");
TEXTAREA自适应文字行数的多少
textarea rows=1 name=s1 cols=27npropertychange="this.style.posHeight=this.scrollHeight"
/textarea
日期减去天数等于第二个日期
script. language=Javascript
function cc(dd,dadd)
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a - dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + "年" + (a.getMonth() +1) + "月" + a.getDate() + "日")
} cc("12/23/2002",2)
/script
选择了哪一个Radio
HTMLscript. language="vbscript"
function checkme()
for each ob in radio1
if ob.checked then window.alert ob.value
next
end function
/scriptBODY
INPUT name="radio1" type="radio"value="style" checkedStyle.
INPUT name="radio1" type="radio"value="barcode"Barcode
INPUT type="button" value="check"nclick="checkme()"
/BODY/HTML
脚本永不出错
SCRIPT. LANGUAGE="JavaScript"
!-- Hide function killErrors(){return true;} window.onerror = killErrors;// --
/SCRIPT
ENTER键可以让光标移到下一个输入框
input nkeydown="if(event.keyCode==13)event.keyCode=9"
数控编程g代码m代码,所有的!详细点!
1、代码1:FANUC车床G代码。
2、代码2:FANUC车床G代码。
3、FANUC铣床G代码。
4、FANUCM指令常用代码。
5、SIEMENS铣床G常用代码。
6、SIEMENS802S/CM固定循环代码。
7、SIEMENS车床G代码。
excel vba常用代码
Visual Basic for Applications(简称VBA)是新一代标准宏语言,是基于Visual Basic for Windows 发展而来的。它与传统的宏语言不同,传统的宏语言不具有高级语言的特征,没有面向对象的程序设计概念和方法。而VBA 提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。VBA 易于学习掌握,可以使用宏记录器记录用户的各种操作并将其转换为VBA 程序代码。这样用户可以容易地将日常工作转换为VBA 程序代码,使工作自动化。 [1]
数据类型
基本数据类型
即Primary Type Data,下述列表的括号内为字节数:
Byte (1):无符号数类型,取值范围0-255
Boolean (2)
Integer(2)
Long (4)
Single (4)
Double (8)
Currency (8)
Decimal (14)
Date (8)
String
Object (4)
Variant (根据分配确定) [2]
自定义的数据类型
相当于C语言的struct,例如: [2]
Type 自定义类型名 元素名 As 类型 … [元素名 As 类型] End Type
数组
Option Base 0 :数组索引值从0开始 [2]
Option Base 1 :数组索引值从1开始
Dim MyArray(10) :声明一个数组变量,10是最大的可用的数组索引值
MyArray(5) = 101 :给数组的元素赋值
Dim Data(10,5) :声明一个二维数组变量
Data(1,1) = "A001" :给数组元素赋值
Dim cArr(-11 To 20, 1 To 3) As String :声明一个数组,定义数组索引值的上下界
Dim dArr() As String :声明动态数组
ReDim dArr(0 To 5, 1 To 2) :改变动态数组的尺寸默认把原数据清除。如果保留原来的数据,必须加上参数
Preserve:使用Preserve参数时只能改变最后一位的大小
If UBound(vTemp) = -1 Then:判断数组变量vTemp是否为空数组
End If Erase MyArrar, Data Erase语句清除数组元素,释放变量占用的空间 [2]
常量
编辑
系统定义常量
系统定义常量有3个:True、False和Null。 [4]
固有常量
固有常量是编程时引用的对象库定义的常量。所有固有常量都可以在宏或VBA代码中使用。通常,固有常量通过前两个字母来指明定义该常量。来自VB库的常量则以“vb”开头。来自Access的常量以“ac”开头。可以使用对象浏览器来查看所有对象库中的固有常量列表。 [4]
在VBA中,常量的数据类型有整型、长整型、单精度型、双精度型、字节型、货币型、字符型、日期型和逻辑型。一个整型数据就是一个整型常量,一个长整型数据就是一个长整型常量。例如,12%、-1%是整型常量,32768、10000000是长整型常量,-2.5 1、3.14是单精度实型常量,3.1415926#是双精度实型常量,China、Shanghai是字符型常量,#07/13/2001 11:45PM#是日期常量,由符号 “ # ” 将字符括起来。 [4]
符号常量
可以自行定义的常量即符号常量,必须先定义,后使用。可见,需要声明的常量都是符号常量。 [4]
基本语法格式:
1 [ Publicr/ Private] Const 常量名[As 类型]=表达式
如:Global Const 符号常量名称 = 常量值 [4]
语句功能:
定义一个符号常量,并将指定表达式的值赋给符号常量。 [4]
语句说明如下: [4]
1)“常量名”指定符号常量的名字。符号常量名可以由字母、数字和下画线组成,但只能以字母开头,不能含有空格。 [4]
2)“表达式”指定符号常量的值。该表达式通常由数值型、字符型、逻辑型或日期型数据以及各种运算符组成,但在表达式中不能出现变量和函数。 [4]
3) public用来表示这个常量的作用范围是整个数据库的所有模块。 [4]
4) private则表示这个常量只在使用该声明常量语句的模块中起作用。 [4]
说明:
1)除用户定义的符号常量外,VBA还提供了许多符号常量,我们可以直接使用。 [4]
2)对数码比较长,并且在程序中多次使用的常量,通常使用符号常量代替。运行程序时,系统自动把程序中的所有符号常量换为赋给它的值。 [4]
变量
编辑
与常量一样,变量也是一块内存空间,用于保存程序运行过程中可能变化的数据。变量的名称是用户定义的一个标识符。 [5]
在代码中需要使用该变量时,只需引用相应的标识符即可,而不用管变量当前的值具体是什么。 [5]
声明
与用户自定义的常量相似,变量在使用之前都需要声明,在VBA中声明变量的语法格式有以下几种: [5]
关键字变量名 AS 数据类型
关键字变量1,变量2 ... 变量n AS 数据类型
关键字变量1 AS 数据类型,变量2 As 数据类型, ... ,变量n AS数据类型
在第二种语法格式中, “变量n”的数据类型为AS关键字后定义的数据类型,而“变量1”、“变量2”、…的数据类型为变体型。 [5]
在VBA中,可用Dim、Private、Public和Static这4个关键字来声明变量,使用不同关键字声明的变量其含义也有所不同。 [5]
◆ 利用Dim关键字声明变量:Dim关键字主要用来在内存中分配一块空间,并为该空间命名,是VBA中声明变量最常用的关键字。使用Dim关键字声明的变量只能在当前过程或模块中使用。 [5]
◆ 利用Private关键字声明变量:Private关键字用于在类模块中声明一个私有变量,它只能在当前的类模块中使用。当定义变量的位置同处于类模块中时,其使用效果与使用Dim关键字定义的变量相同。 [5]
◆ 利用Public关键字声明变量:利用Public关键字声明的变量可以在程序的任何地方调用,而与声明变量的位置无关。 [5]
◆ 利用Static关键字声明变量:Static关键字用于声明静态变量,即变量的值在整个代码运行期间都能被保留。 [5]
赋值
变量在使用时还需要对其进行赋值。在VBA中对变量进行赋值可通过 “ = ” 符号或 “ Set ” 关键字进行。通过 “ = ” 符号对变量赋值的语法格式有以下几种。 [5]
变量名=数据
变量1=变量2 运算符 数据
变量1=变量2 运算符 变量3 … 运算符 变量n
如果在定义变量时指定了变量的数据类型,则为变量所赋的值也必须是该数据类型的值。如果变量定义为Integer类型,而在赋值时却给了变量一个String类型的数据,则在编译运行的过程中将弹出错误弹框。 [5]
运算符
编辑
运算符是在程序中执行计算功能的某些特殊符号,它是程序代码的重要组成部分。在程序代码中,运算符不能单独使用,必须与其操作数共同组成表达式后才具有运算意义。VBA中的运算符包含算术运算符、连接运算符、比较运算符和逻辑运算符等。 [4]
算术运算符
算术运算符主要用于执行四则运算,仅用算术运算符连接起来的表达式称为算术表达式。算术运算符及其作用与示例如表所示。 [5]
例子
名称
结果
-$a
取反
$a 的负值。
$a + $b
加法
$a 和 $b 的和。
$a - $b
减法
$a 和 $b 的差。
$a * $b
乘法
$a 和 $b 的积。
$a / $b
除法
$a 除以 $b 的商,允许小数。
$a \ $b 除法 $a 除以 $b 的商,结果取整。
$a Mod $b
取余
$a 除以 $b 的余数
注意:
在执行算术运算时,运算符两侧操作的数据类型必须相同,否则会出现“类型不匹配”的错误提示。当“+”运算符左右两侧都是字符串类型的操作数时,执行的是连接运算,如表达式“"Pass+"word"的计算结果为字符串“ PassWord ”。 [5]
连接运算符
连接运算符的作用是将运算符两侧的操作数连接成一个数,其操作数的数据类型通常都为String类型。VBA中的连接运算符有“”和“+”两种,由于使用“+”执行连接运算时,容易与加法运算混淆,所以通常都采用“”进行连接运算。 [5]
比较运算符
比较运算符可以对运算符两侧的操作数执行比较运算,其返回结果为Boolean类型的True或False。比较运算符的操作数通常为具体的数值,当操作数为字符串或其他符号时,是根据该符号的ASCII码进行比较的。VBA中的比较运算符及其作用与示例如表所示。 [5]
例子
名称
结果
$a = $b
等于
TRUE,如果 $a 等于 $b。
$a $b
不等
TRUE,如果 $a 不等于 $b。
$a $b
小于
TRUE,如果 $a 严格小于 $b。
$a $b
大于
TRUE,如果 $a 严格大于 $b。
$a = $b
小于等于
TRUE,如果 $a 小于或者等于 $b。
$a = $b
大于等于
TRUE,如果 $a 大于或者等于 $b。
逻辑运算符
逻辑运算符用于对运算符两侧的操作数执行逻辑运算,参与逻辑运算的操作数本身可以是逻辑表达式(表达式的最终结果为True或 False),也可以是算术表达式(表达式的最终返回值为0或非0)。 [5]
在逻辑运算中,数值0与逻辑值 False相同,表示逻辑假;非0数值与True相同,表示逻辑真。逻辑运算符及其含义与示例如表所示。 [5]
例子
名称
结果
$a and $b
And(逻辑与)
TRUE,如果 $a 与 $b 都为TRUE。
$a or $b
Or(逻辑或)
TRUE,如果 $a 或 $b 任一为TRUE。
$a xor $b
Xor(逻辑异或)
TRUE,如果 $a 或 $b 同位相异。
Not(12)
Not(逻辑非)
TRUE。
(12) Eqv (12)
两个操作数同为假,返回False;两个操作数同为真,返回True;两个操作数一真一假,返回False
TRUE。
21 Imp 35
运算符左右同为真,返回True;左右同为假,返回True;左真右假,回返 False;左假右真,返回True
TRUE。
语法结构
编辑
if 语句
1 if 条件1 then 语句1elseif 条件2 then 语句2elseif ... ...else 语句nend if
Select Case 语句
1 Select Case 表达式 Case 表达式列表1 语句1 Case 表达式列表2 语句2 ... Case 表达式列表n 语句nEnd Select
其中的表达式列表可以为: [5]
表达式 例: "A"
用逗号分隔的一组枚举表达式例:2,4,6,8
表达式1 To 表达式2 例:60 To 100
Is 关系运算符表达式 例:Is 60
Do...Loop 语句
1 Do While或Until 条件 语句块1 Exit Do 语句块2Loop
For...Next语句
1 Do 语句块1 Exit Do 语句块2Loop While或Until 条件
For Each … Next语句
1 For 循环控制变量=初值To 终值Step 步长 语句块 ‘Exit For语句可以跳出循环体Next
跳出本次循环的continue语句
1 For 循环控制变量=初值 To 终值 Step 步长 Do '用于模拟continue 语句块 If 条件 Then Exit Do '用于模拟continue 语句块 Loop While False '用于模拟continue Next
With语句
1 With 对象引用 语句块End With
On Error语句
1 On Error Goto 出错处理语句的label '跳转到出错处理语句
或
1 On Error Resume Next '遇到错误,不管错误,继续往下执行
具有控制作用的函数
If(条件式,表达式1,表达式2) [5]
Switch(条件式1,表达式1,[条件式2,表达式2[,...,条件式n,表达式n]])
Choose(索引式,选项1[,选项2,...[,选项n]]) '这是基于1的索引
其他语句
编辑
注释语句
使用REM或者单引号开始的行。 [6]
语句的连写与续行
如果一行包括多条语句,用冒号分割各个语句。跨多行的语句,在行末用“空格加下划线”表示续行 [6] 。
过程与函数
编辑
12 Sub 过程名(参数表) 语句块 Exit Sub 语句块End Sub
1 Function 函数名(参数表) As Type 语句块 函数名=表达式 Exit FunctionEnd Function
可以是Private、Public、Friend、Static等修饰。 [6]
调用函数/过程时,可以加括号或者不加括号。如果调用表达式作为一行的一部分,那么必须用参数,例如函数调用的返回值赋给变量。 调用过程时, 可以使用/不使用call关键字。使用call语句调用过程,如果无参数,则不加括号;如果有参数,必须加括号。如果调用时用括号包住单个参数,则该参数强行按值传递。需要特别注意,不用call不加括号的调用,形参与实参是传值(passed by value)而不是传引用(passed by reference),这会导致一些对象的方法调用失败。例如: [6]
1 Dim cn As ADODB.Connection Set cn = CurrentProject.Connection Dim rs As New ADODB.Recordset rs.Open "SELECT * FROM myTable" , cn Dim ExcelApp As New Excel.Application Dim ExcelWst As Worksheet Set ExcelWst = ExcelApp.Workbooks.Add.Worksheets(1) ExcelWst.Range("A2").CopyFromRecordset(rs) '失败,无法执行该行 ExcelWst.Range("A2").CopyFromRecordset rs '可成功执行该行
常用内置函数
编辑
VBA的常用内置函数: [5]
MsgBox
InputBox
舍入函数:Fix 向0取整,Int向下取整, Round四舍五入
Rnd: 返回0-1内的单精度随机数
字符串函数: [5]
Filter:对字符串的一维数组的过滤
InStr([Start, ]Str1,Str2[, Compare])与InStrRev: 查找子串
Len:字符串长度
Join:连接一维数组中的所有子字符串
Left,Right,Mid: 截取子字符串
Space(数值) :生成空格字符串
Ucase,Lcase:大小写转换函数
Ltrim, Rtrim,Trim :删除首尾空格
Replace
Split:分割一个字符串成为一维数组
StrComp:字符串比较
StrConv:字符串转换
String(number, character):制定字符重复若干次
StrReverse
日期/时间有关函数: [5]
Year, Month, Day, WeekDay,Hour,Minute,Second: 截取日期时间分量
DateAdd: 日期/时间增量函数
DateDiff(间隔类型,日期1,日期2[,W1][,W2])日期/时间的距离函数
DatePart(分割类型,日期[,w1][,w2])时间分割函数
DateSerial(表达式1,表达式2,表达式3) 合成日期;DateValue(“字符串表达式”)返回日期;
Date,Time,Now,Timer: 返回日期时间
DateValue
TimeSerial:由时间序列得到时间对象
TimeValue:由时间字符串得到时间对象
Weekday:获得日期的周几
WeekdayName
转换函数:CBool、CByte、CCur、 CDate、 CDbl、CDec、CInt、 CLng、CLngLng、CLngPtr、 [5] CSng、CStr、CVar、CVErr、Asc(字符串表达式)返回第一个字符的Ascii编码值、Chr(ASCII码)返回字符、Hex、Oct、Str(数值表达式)返回字符串、Val(string)、Format、FormatCurrency、FormatDateTime、FormatNumber、FormatPercent、MonthName。
Nz(表达式或字段属性值[,规定值])如果是空,则返回0或者""或者函数的第二个参数值 [5]
验证函数:isNumeric、isDate、isNull、isEmpty、IsArray、IsError、IsMissing、IsObject [5]
数学函数:Abs、Sqr、Tan、Atn(即atan)、Sin、Cos、Exp(e为基的指数)、Log自然对数 [5]
Array:构造一个Array对象 [5]
CallByName: get or set a property, or invoke a method at run time using a string name. [5]
控制流:Choose:类似于C语言的select语句、If相当于IF-ELSE语句、Switch [5]
Command:获取命令行参数 [5]
CreateObject:创建ActiveX对象
CurDir:返回指定驱动器的当前工作路径 [5]
由基本数学函数导出的函数:Sec、Cosec、Cotangent、Cotan、Arcsin、Arccos、Arcsec、Arccosec、Arccotan、HSin、HCos、HTan、HSec、HCosec、HCotan、HArcsin、HArccos、HArctan、HArcsec、HArccosec、HArccotan、LogN
DoEvents:暂时把CPU控制权交回给系统 [5]
Environ:返回环境变量的值 [5]
文件操作: [5]
Dir:返回满足条件的所有文件、目录的名字
EOF
FileAttr
FileDateTime
FileLen
FreeFile Function
GetAttr:返回文件、目录的属性值
Input:读取文件
Loc:文件指针位置
LOF:文件打开时的指针位置
Seek:文件指针定位
Spc:使用Print做position output
Tab:用于Print函数
Error:错误号对应的错误消息 [5]
Windows Registry中的数据:GetAllSettings、SaveSetting、DeleteSetting、GetSetting [5]
GetObject:ActiveX组建的引用 [5]
IMEStatus:返回当前Input Method Editor (IME) [5]
Macintosh平台:MacID、MacScript [5]
金融函数: [5]
DDB:使用double-declining balance计算贬值
FV:计算固定利率的年金
IPmt:计算利率
IRR:计算利率
MIRR:计算利率
NPer:计算周期数
NPV:计算net present value
Pmt:计算支付数
PPmt:计算本金支付数
PV:计算present value
Rate:利息率
SLN:straight-line depreciation
SYD:计算sum-of-years' digits depreciation
Partition:返回字符串,表示一个数值名字落在各个range内。常用于SQL select语句 [5]
QBColor:颜色值 [5]
RGB:颜色值 [5]
TypeName:得到变量的类型名 [5]
VarType:得到变量的类型数 [5]