Vlisp函数大全
LISP函数(分类)大全
![LISP函数(分类)大全](https://img.taocdn.com/s3/m/8377e43df8c75fbfc67db23a.png)
AutoLisp函数一、数学运算功能函数1.l(十数值数值…)返回:累计实数或整数数值1.2(一数值数值…)返回:差值1.3(* 数值数值…)返回:所有数值乘积1.4(/ 数值数值…)返回:第一个数值除以第二个以后数值的商1.5(l十数值)返回:数值十ll. 6(1—数值)返回:数值一ll.7(abs 数值)返回:数值的绝对值1.8(atan 数值)返回:反正切值1.9(cos 角度)返回:角度的余弦值,角度值为弧度1.10(exp 数值)返回:数值的指数1.11(expt 底数指数)返回:底数的指数值1.12(fix 数值)返回:将数值转换为整数值1.14(gcd 数值1 数值2)返回:两数值的最大公因数1.15(log 数值)返回:数值的自然对数值1.16(max 数值数值…)返回:数值中的最大值1.17(min 数值数值…)返回:数值中的最小值1.18 pi 常数∏,其值约为3.14159261.19(rem 数值1数值2)返回:M数值的相除的余数l.20(sin 角度)返回:角度的正旋值,角度值为弧度1.21(sqrt 数值)返回:数值的平方根二、检验与逻辑运算功能函数2.l(= 表达式1 表达式2)比较表达式1是否等于式2,适用数值及字符串2.2 (/= 表达式1 表达式2)比较表达式1是否大于等于表达式22.3(<表达式1 表达式2) 比较表达式1是否<小于表达式22.4(<= 表达式1 表达式2)比较表达式1是否<一小于等于表达式22.5(>表达式1 表达式2)比较表达式1是否>大于表达式22.6(>= 表达式1 表达式2)比较表达式1是否大于等于表达式22.7 (~数值)返回:数值的位not值,(1的补码)2.8 (and 表达式1 表达式2…)返回:逻辑and的结果2.9(boole 函数整数整数…)返回:位式布尔运算 AutoLisp函数 2/8 2.10(eq 表达式1 表达式2)比较表达式1与表达式2是否相同,适用列表比较(实际相同)2.11(equal 表达式1表达式2[差量])比较表达式1与表达式2是否相同,差量可省略(容相同)三、转换运算功能函数3.l(angtof 字符串[模式])返回:角度值的字符串转成实数3.2(angtos 角度[模式[精度]])返回:角度转成的字符串值3.3(atof 字符串)返回:字符串转成实数值3.4 (atoi 字符串)返回:字符串转成整数值3.5 (cvunit 数值原始单位转换单位)返回:数值转换单位后的值转换根据acad.nut文件3.6(distof 字符串[模式])返回:根据模式将字符串转成实数值3.7(itoa 整数)返回:整数转成字符串3.8(rtos 数值模式[精度])返回:实数转成字符串3.9 (trans 点原位置新位置[位移])返回:转换坐标系统值四、列表处理功能函数4.1 (append 列表列表……)结合所有列表成一个列表4.2(assoc 关键元素联合列表)根据关键元素找寻联合列表中关系信息4.3 (car 列表)返回列表中的第一个元素,通常用来求X坐标4.4(cadr 列表)返回列表中的第二个元素,通常用来求y坐标4.5(caddr 列表)返回列表中的第三个元素,通常用来求Z坐标4.6(cdr 列表)返回:除去第一个元素后的列表4.7(cons 新元素列表)返回:将新元素添加到列表4.8(foreach 名称列表表达式)返回:将列表的每一元素对应至名称再根据表达式执行响应4.9(length 列表)返回:列表的元素数量4.10(list 元素元素…)返回:将所有元素合并为一列表4.11(listp 元素)返回:判断元素是否为一串4.12(mapcar函数列表1列表2…)返回:将列表1、列表2列表的元素配合函数,求得新列表4.13(member 关键元素列表)返回:根据关键元素(含似后的列表4.14(nth n 列表)返回:列表的第n个元素 AutoLisp函数 3/84.15(reverse 列表)返回:将列表元素根据顺序颠倒过来的列表4.16(subst 新项旧项列表)返回:替换新旧列表后的列表五、字符串、字符、文件处理函数5.l(ascii 字符串)返回:字符串第一个字符的“ASCII”码5.2 (chr 整数)返回:整数所对应的ASCII单一字符串5.3(close 文件名称)关闭文件5.4(open 文件名模式)返回:打开文件代码,准备读取或写入信息5.5(read 字符串)返回:列表中的字符串的第一组元素5.6(read-char[文件代码])返回:通过键盘或文件中读取单一字符5.7(read-line [文件代码])返回:经由键盘或文件中读取一行字符串5.8(strcase 字符串[字样])返回:转换字符串大小写5.9(strcat 字符串1字符串2…)返回:将各字符串合并为一个字符串5.10(strlen 字符串)返回:字符串构成的字符数(即字符串长度)5.11(substr 字符串起始长度)返回:取出于字符串‘5.12(wcmatch 字符串格式)返回:T或nil,将字符串与通用字符进行比较5.13(write-char数值[文件代码])返回:将一ASCII字符写到文件或屏幕 1 5.14(write-line字符串[文件代码])返回:将字符串写到文件或屏幕上六、等待输入功能函数6.l (getangle [基点][提示])请求输入十进制角度数值,响应一个弧度值提示及参考点可有可无6.2(getcorner 基点[提示])请求输入另一矩形框对角点坐标6.3(getdist [基点][提示])请求输入一段距离6.4(getint [提示])请求输入一个整数值6.5(getkword [提示]请求输入“关键词”6.6(getorient [基点][提示])请求输入十进制角度,响应一弧度值不受angbase、angdir影响6.7(getPoint [基点][提示])请求输入一个点的坐标6.8(getreal [提示]请求输入一个实数6.9(getstring [提示])请求输入一个字符串6.10(initget [位]字符串)设定下次getxxx函数的有效输入七、几何运算功能函数7.l(angle 点1 点2)取得两点的角度弧度值7.2(distance 点1 点2)取得两点的距离7.3(inters 点1 点2 点3 点4[模式])取得两条线的交点7.4(osnap 点模式字符串)按照捕捉模式取得另一坐标点7.5(polar 基点弧度距离)按照极坐标法取得另一坐标点7.6(textbox 对象列表)取得文字字符串的两个对角点坐标八、对象处理功能函数8.l(entdel 对象名称)删除或取消删除对象8.2(entget 对象名称[应用程序列表])取出对象名称的信息列表8.3 (entlast)取出图形信息中的最后一个对象8.4(entmake 对象列表)建立一个新的对象列表8.5(entmod 对象列表)根据更新的信息列表更新屏幕上元体8.6(entnext [对象名称])找寻图面中的下一个对象8.7(entsel [提示])请求选取一个对象,响应包含对象名称及选点坐标的列表;8.8(entupd 对象名称)更新屏幕上复元体图形8.9(handent 图码)返回:图码的元体名称8.10(nentsel[提示])返回:BLOCK所含副元体对象信息列表8.11(nentselp [提示][点])返回:BLOCK所含副元体对象信息似4*4矩形表示)九、选择集、符号表处理函数9.l(ssadd [对象名称][选择集])将对象加入选择集或建立一新选择集9.2(ssdel 对象名称选择集)将对象自选择集中移出9.3(ssget [模式][点1][点2]取得一个选择集9.4(ssget ”X”[过滤列表])取得根据过滤列表所指定围的选择集9.5(sslenth 选择集)计算选择集的对象个数9.6(ssmemb 对象名称选择集)响应对象名称是否包含于选择集9.7(ssname 选择集索引值)根据索引值取出选择集中的对象名称9.8(tblnext 符号表名称[T])检视符号表,有效的符号表:”LAYER”、”LTYPE”、”VIEW”、”STYLE”、”BLOCK”9.9(tblsearch 符号表名称符号)在符号表中搜寻符号十、AutoCAD相关查询、控制功能函数10.l(command ”AutoCAD命令”…)超重量级函数,调用执行AutoCAD命令 AutoLisp函数 5/810.2(findfile 文件名)返回:该文件名的路径及文件名10.3(getfiled 标题定档名扩展名旗号)通过标准AutoCAD文件对话DCL 对话框获得文件10.4(getenv ”环境变量”)取得该环境变量的设定值,以字符串表示10.5(getvar ”系统变量”)取得该系统变量的设定值,以字符串表示10.6(setvar ”系统变量”值)设定该系统变量的值10.7(regapp 应用类项)将目前的AutoCAD图形登记为一个应用程序名称十一、判断式、循环相关功能函数11.1(If <比较式><表达式1>[表达式2] 检算比较式结果,如果为真,执行<表达式1>,否则执行<表达式2>11.2(repeat 次数[< 表达式><表达式>…])重复执行N次表达式11.3(While <比较式><表达式>…)当条件成立则执行表达式容11.4(cond <比较式1><表达式1>多条件式的if整合功能<比较式2><表达式2><比较式3><表达式3>)11.5 (prong 表达式1 表达式2…)连接其中的表达式为一组,常用于配合if、cond等函数十二、函数处理、定义、追踪与错误处理功能函数12.l(*error* 字符串)程序错误时的警示信息12.2(alert 字符串)以对话框式显示出警告字符串12.3(apply 功能函数列表)将功能函数与列表结合后执行12.4(defun 名称自变量列表表达式_.)自定函数或子程序12.5(eval 表达式)返回:表达式的执行结果12.6(exit)强制退出目前的应用程序12.7(lambda 自变量表达式)定义未命名的函数12.8(progn 表达式1 表达式2…)连接其的表达式为一组,常用于配合if、cond 等函数12.9(quit)强制退出目前的应用程序12.10(tablet 代码[列1列2列3方向])取用或建立对数字板的校调12.11(trace 函数…)对函数设定追踪标记,辅助检错12.12(untrace 函数…)对函数设定解除追踪标记 AutoLisp函数 6/8十三、显示、打印控制功能函数13.l(gfaphscr)作图环境切换到图形画面13.2(grclear)暂时清除模前的屏幕画面13.3(grdraw起点终点颜色[亮显])暂时性的画出一条线13.4(grread[追踪])由输入设备读取追踪值13.5(grtext位置字符串[亮显])将字符串显示在状态列或屏幕菜单上13.6(grvecs向量列表[转置矩阵])暂时性的画出多条线13.7(menucmd字符串);提供在AlltOLISP中调用各菜单13.8(Prinl[表达式[文件代码]]将表达式打印于命令区或已打开的文件句柄字符则以“\”为前缀展开13.9(pinc[表达式[文件代码]]除句柄字符则不以”\”为前缀展外开其余同Prinl 13.10(print[表达式[文件代码]]除表达式会往下一新行列出,及空一格外其余同prinl13.11(prompt信息)将信息显示于屏幕的命令区,并随后响应一个nil信息13.12(redraw[对象名称[模式]])重绘整图或根据对象名称重绘该图形13.13(terpri)在屏幕上显示新列13.14(textscr)作图环境切换到文字画面13.15(textpage)清除文字画面文字类似DOS的cls命令13.16(vports)返回:窗口组态列表十四、符号、元素、表达式处理功能函数14.l(atom元素)如果元素不是列表,响应T,否则为nil14.2(atoms-family格式闲号列表])返回:一组己定义函数的符号列表14.3(boundp表达式)返回:T或nil,响应表达式是否有值存在14.4(minusp元素)返回:T或n儿元素是否为负值14.5(not元素)返回:T或n儿判定元素是否为ni114.6(null元素)返回:T或nil判定元素是否被赋予nil值14.7(numberp元素)返回:T或nil,元素是否为整数或实数14.8(quote表达式)响应表达式未检算前状态,同“‘”功能14.9(set符号表达式)将表达式结果设定给带单引号’符号14.10(setq符号1 表达式1[符号2表达式2]…)设定表达式结果给各符号14.11(type元素)返回:元素的信息型态14.12(zerop元素)返回:T或nil,元素是否为0值十五、ADS、ARX、AutoLISP加载与卸载函数 AutoLisp函数 7/815.l(ads)返回:目前加载ADS程序列表15.2(arx)返回:目前加载ARX程序列表15.3(arxload应用程序[出错处理]))返回:加载ARX程序15.4(arxunload应用程序[出错处理]))返回:卸载ARX程序15.5(ver)返回:目前AutoLISP版本字符串15.6(load LSP文件名[加载失败])加载AutoLISP文件(*.lsp)15.7 (xload应用程序[错处理])加载ADS应用程序15.8 (xunloa应用程序[出错处理])卸载ADS应用程序十六、存空间管理函数16.l(alloc数值)以节点数值设定区段大小16.2(expand数值)以区段数值配置节点空间16.3(gc)强制收回废存16.4(mem)显示目前的存使用状态16.5(xdroom对象名称)返回对象扩展信息允许使用的存空间16.6(xdsize列表)返回对象扩展信息所占用的存空间十七、其它重要的功能函数17.l(acad_colordlg 颜色码旗号)显示出标准AutoCAD颜色选择对话框17.2(acad_helpdlg 求助文件名主题)显示出标准AutoCAD求助对话框17.3(acad_strlsort字符串列表)作字符串列表排序17.4(bherrs)取得bhatch与bpcly失败所产生的错误信息17.5(bhatch点[选择集[向量]])根据Pick point选点方式调用bhatch命令,绘制选集区域的剖面线17.6(bpoly点[选择集[向量]])根据Pick point选点方式调用bpoly命令并产生一定域Polyline17.7(cal计算式字符串)执行如CAL计算功能十八、ADS、ARX外部定义的3D函数18.1(align自变量 1 自变量2....)执行如ALIGN命令各选项顺序18.2(c:3dsin模式3DS文件名)导入3DS文件18.3(C:3dsout模式3DS文件名)输出3DS文件18.4(c:background模式[选项])设定渲染背景18.5(C:fog模式[选项])设定渲染的雾效果18.6(C:light模式[选项])设定渲染的灯光控制18.7(c:lsedit模式【选项1】设定渲染的景物控制18.8(C:lslib模式[选项])管理景物图库18.9(c:matilb模式材质材质库名)管理材质数据库18.10(c:mirror3d 自变量1 自变量2……)执行如MIRROR3D命令18.11(C:psdrap模式)根据模式设定值(0或1),传唤psdrap命令18.12(C:psfill对象名称图案名称[自变量1[自变量2]])以POStSCript图案填满18.13(c:psin文件名位置比例)插入一个Postscript(*.eps)文件18.14(c:render[渲染文件])执行渲染效果18.15(C:rfileopt格式自变量1 自变量2 自变量3…)设定执行渲染选项18.16(c:replay影像文件名影像类别[选项])展示影像文件TGA、BMP、TIF 18.17(C:rmat模式选项)控管材质建立、贴附、编辑、分离18.18(c:rotate3d自变量 1 自变量2…)执行如ROTATE3D命令各选项顺序18.19(C:rpref模式选项[设定])渲染环境设定18.20(c:saveimg影像文件名影像类别[选项])储存图像文件TGA、BMP、TIF 18.21 (c:scene模式[选项])SCENE场景管理18.22(C:setuv模式选集自变量1 自变量2…)SETUV贴图模式管理18.23(C:showmat自变量1)显示对象的材质贴附信息18.24(C:solprof自变量 1 自变量工..)建立3D实体的轮廓影像18.25(C:StatS[渲染信息文件])显示渲染信息统计信息十九、ADS、ARX 外部定义的数据库相关函数19.l(c:aseadmin自变量1 自变量2…)管理外部数据库19.2(c:aseexportt自变量1 自变量2…)输出信息19.3 (c:aselinks自变量1 自变量2…)连接对象与信息19.4(c:aserow自变量1 自变量2…)管理外部信息表格19.5(c:aseselect自变量1 自变量2…)建立外部信息与对象选集19.6 (c:asesqled自变量 1 自变量2…)执行SQL程序。
LISP函数大全
![LISP函数大全](https://img.taocdn.com/s3/m/222bc96baef8941ea76e05ba.png)
AutoLisp函数一、数学运算功能函数1.l(十数值数值…)返回:累计实数或整数数值1.2(一数值数值…)返回:差值1.3(* 数值数值…)返回:所有数值乘积1.4(/ 数值数值…)返回:第一个数值除以第二个以后数值的商1.5(l十数值)返回:数值十ll、 6(1—数值)返回:数值一ll.7(abs 数值)返回:数值的绝对值1.8(atan 数值)返回:反正切值1.9(cos 角度)返回:角度的余弦值,角度值为弧度1.10(exp 数值)返回:数值的指数1.11(expt 底数指数)返回:底数的指数值1.12(fix 数值)返回:将数值转换为整数值1.14(gcd 数值1 数值2)返回:两数值的最大公因数1.15(log 数值)返回:数值的自然对数值1.16(max 数值数值…)返回:数值中的最大值1.17(min 数值数值…)返回:数值中的最小值1.18 pi 常数∏,其值约为3.14159261.19(rem 数值 1数值 2)返回:M数值的相除的余数l.20(sin 角度)返回:角度的正旋值,角度值为弧度1.21(sqrt 数值)返回:数值的平方根二、检验与逻辑运算功能函数2.l(= 表达式1 表达式2)比较表达式1就是否等于式2,适用数值及字符串2.2 (/= 表达式1 表达式2)比较表达式1就是否大于等于表达式22.3(<表达式1 表达式2) 比较表达式1就是否<小于表达式22.4(<= 表达式1 表达式2)比较表达式1就是否<一小于等于表达式22.5(>表达式1 表达式2) 比较表达式1就是否>大于表达式22.6(>= 表达式1 表达式2) 比较表达式1就是否大于等于表达式22.7 (~数值)返回:数值的位 not值,(1的补码)2.8 (and 表达式1 表达式2…)返回:逻辑and的结果2.9(boole 函数整数整数…)返回:位式布尔运算AutoLisp函数2/82.10(eq 表达式1 表达式2)比较表达式1与表达式2就是否相同,适用列表比较(实际相同)2.11(equal 表达式 1表达式 2[差量])比较表达式 1与表达式 2就是否相同,差量可省略(内容相同)三、转换运算功能函数3.l(angtof 字符串[模式])返回:角度值的字符串转成实数3.2(angtos 角度[模式[精度]])返回:角度转成的字符串值3.3(atof 字符串)返回:字符串转成实数值3.4 (atoi 字符串)返回:字符串转成整数值3.5 (cvunit 数值原始单位转换单位)返回:数值转换单位后的值转换根据acad.nut文件3.6(distof 字符串[模式])返回:根据模式将字符串转成实数值3.7(itoa 整数)返回:整数转成字符串3.8(rtos 数值模式[精度])返回:实数转成字符串3.9 (trans 点原位置新位置[位移]) 返回:转换坐标系统值四、列表处理功能函数4.1 (append 列表列表……) 结合所有列表成一个列表4.2(assoc 关键元素联合列表)根据关键元素找寻联合列表中关系信息4.3 (car 列表)返回列表中的第一个元素,通常用来求X坐标4.4(cadr 列表)返回列表中的第二个元素,通常用来求y坐标4.5(caddr 列表)返回列表中的第三个元素,通常用来求Z坐标4.6(cdr 列表)返回:除去第一个元素后的列表4.7(cons 新元素列表)返回:将新元素添加到列表4.8(foreach 名称列表表达式)返回:将列表的每一元素对应至名称再根据表达式执行响应4.9(length 列表)返回:列表内的元素数量4.10(list 元素元素…)返回:将所有元素合并为一列表4.11(listp 元素)返回:判断元素就是否为一串4.12(mapcar函数列表1列表2…)返回:将列表1、列表2列表的元素配合函数,求得新列表4.13(member 关键元素列表)返回:根据关键元素(含似后的列表4.14(nth n 列表)返回:列表的第n个元素AutoLisp函数3/84.15(reverse 列表)返回:将列表元素根据顺序颠倒过来的列表4.16(subst 新项旧项列表)返回:替换新旧列表后的列表五、字符串、字符、文件处理函数5.l(ascii 字符串)返回:字符串第一个字符的“ASCII”码5.2 (chr 整数)返回:整数所对应的ASCII单一字符串5.3(close 文件名称)关闭文件5.4(open 文件名模式)返回:打开文件代码,准备读取或写入信息5.5(read 字符串)返回:列表中的字符串的第一组元素5.6(read-char[文件代码])返回:通过键盘或文件中读取单一字符5.7(read-line [文件代码])返回:经由键盘或文件中读取一行字符串5.8(strcase 字符串[字样])返回:转换字符串大小写5.9(strcat 字符串1字符串2…)返回:将各字符串合并为一个字符串5.10(strlen 字符串)返回:字符串构成的字符数(即字符串长度)5.11(substr 字符串起始长度)返回:取出于字符串‘5.12(wcmatch 字符串格式)返回:T或 nil,将字符串与通用字符进行比较5.13(write-char数值[文件代码])返回:将一ASCII字符写到文件或屏幕 15.14(write-line字符串[文件代码])返回:将字符串写到文件或屏幕上六、等待输入功能函数6.l (getangle [基点] [提示])请求输入十进制角度数值,响应一个弧度值提示及参考点可有可无6.2(getcorner 基点[提示])请求输入另一矩形框对角点坐标 6.3(getdist [基点][提示])请求输入一段距离6.4(getint [提示])请求输入一个整数值6.5(getkword [提示]请求输入“关键词”6.6(getorient [基点][提示])请求输入十进制角度,响应一弧度值不受angbase、angdir影响6.7(getPoint [基点][提示])请求输入一个点的坐标6.8(getreal [提示]请求输入一个实数6.9(getstring [提示])请求输入一个字符串6.10(initget [位]字符串)设定下次getxxx函数的有效输入七、几何运算功能函数7.l(angle 点1 点2)取得两点的角度弧度值7.2(distance 点1 点2)取得两点的距离7.3(inters 点1 点2 点3 点 4[模式])取得两条线的交点7.4(osnap 点模式字符串)按照捕捉模式取得另一坐标点7.5(polar 基点弧度距离)按照极坐标法取得另一坐标点7、6(textbox 对象列表)取得文字字符串的两个对角点坐标八、对象处理功能函数8.l(entdel 对象名称)删除或取消删除对象8.2(entget 对象名称[应用程序列表])取出对象名称的信息列表8.3 (entlast) 取出图形信息中的最后一个对象8.4(entmake 对象列表)建立一个新的对象列表8.5(entmod 对象列表)根据更新的信息列表更新屏幕上元体8.6(entnext [对象名称])找寻图面中的下一个对象8.7(entsel [提示])请求选取一个对象,响应包含对象名称及选点坐标的列表;8.8(entupd 对象名称)更新屏幕上复元体图形8.9(handent 图码)返回:图码的元体名称8.10(nentsel[提示])返回:BLOCK所含副元体对象信息列表8.11(nentselp [提示][点])返回:BLOCK所含副元体对象信息似4*4矩形表示)九、选择集、符号表处理函数9.l(ssadd [对象名称][选择集])将对象加入选择集或建立一新选择集9.2(ssdel 对象名称选择集)将对象自选择集中移出9.3(ssget [模式][点 1][点 2]取得一个选择集9.4(ssget ”X” [过滤列表])取得根据过滤列表所指定范围的选择集9.5(sslenth 选择集)计算选择集的对象个数9.6(ssmemb 对象名称选择集)响应对象名称就是否包含于选择集内9.7(ssname 选择集索引值)根据索引值取出选择集中的对象名称9.8(tblnext 符号表名称[T])检视符号表,有效的符号表:”LAYER”、”LTYPE”、”VIEW”、”STYLE”、”BLOCK”9.9(tblsearch 符号表名称符号)在符号表中搜寻符号十、AutoCAD相关查询、控制功能函数10.l(command ”AutoCAD命令”…)超重量级函数,调用执行 AutoCAD命令AutoLisp函数5/810.2(findfile 文件名)返回:该文件名的路径及文件名10.3(getfiled 标题内定档名扩展名旗号)通过标准 AutoCAD文件对话 DCL对话框获得文件10.4(getenv ”环境变量”)取得该环境变量的设定值,以字符串表示10.5(getvar ”系统变量”)取得该系统变量的设定值,以字符串表示10.6(setvar ”系统变量”值)设定该系统变量的值10.7(regapp 应用类项)将目前的AutoCAD图形登记为一个应用程序名称十一、判断式、循环相关功能函数11.1(If <比较式><表达式1> [表达式2] 检算比较式结果,如果为真,执行<表达式1>,否则执行<表达式2>11.2( repeat 次数 [< 表达式><表达式>…])重复执行 N次表达式11.3(While <比较式><表达式>…) 当条件成立则执行表达式内容11.4(cond <比较式 1><表达式 1>多条件式的 if整合功能<比较式2><表达式2><比较式3><表达式3>)11.5 ( prong 表达式1 表达式2…) 连接其中的表达式为一组,常用于配合if、cond等函数十二、函数处理、定义、追踪与错误处理功能函数12.l(*error* 字符串)程序错误时的警示信息12.2(alert 字符串)以对话框式显示出警告字符串12.3(apply 功能函数列表)将功能函数与列表结合后执行12.4(defun 名称自变量列表表达式_.)自定函数或子程序12.5(eval 表达式)返回:表达式的执行结果12.6(exit)强制退出目前的应用程序12.7(lambda 自变量表达式)定义未命名的函数12.8(progn 表达式1 表达式2…)连接其内的表达式为一组,常用于配合if、cond等函数12.9(quit)强制退出目前的应用程序12.10(tablet 代码 [列1列2列3方向])取用或建立对数字板的校调12.11(trace 函数…)对函数设定追踪标记,辅助检错12.12(untrace 函数…)对函数设定解除追踪标记AutoLisp函数6/8十三、显示、打印控制功能函数13.l(gfaphscr)作图环境切换到图形画面13.2(grclear)暂时清除模前的屏幕画面13.3(grdraw起点终点颜色[亮显])暂时性的画出一条线13.4(grread[追踪])由输入设备读取追踪值13.5(grtext位置字符串[亮显])将字符串显示在状态列或屏幕菜单上13.6(grvecs向量列表[转置矩阵])暂时性的画出多条线13.7(menucmd字符串);提供在 AlltOLISP中调用各菜单13.8(Prinl[表达式[文件代码]]将表达式打印于命令区或已打开的文件句柄字符则以“\”为前缀展开13.9(pinc[表达式[文件代码]]除句柄字符则不以”\”为前缀展外开其余同Prinl13.10(print[表达式[文件代码]]除表达式会往下一新行列出,及空一格外其余同prinl13.11(prompt信息)将信息显示于屏幕的命令区,并随后响应一个nil信息13.12(redraw[对象名称[模式]])重绘整张图或根据对象名称重绘该图形13.13(terpri) 在屏幕上显示新列13.14(textscr) 作图环境切换到文字画面13.15(textpage)清除文字画面文字类似 DOS的cls命令13.16(vports)返回:窗口组态列表十四、符号、元素、表达式处理功能函数14.l(atom元素)如果元素不就是列表,响应T,否则为nil14.2(atoms-family格式闲号列表])返回:一组己定义函数的符号列表14.3(boundp表达式)返回:T或 nil,响应表达式就是否有值存在14.4(minusp元素)返回:T或n儿元素就是否为负值14.5(not元素)返回:T或n儿判定元素就是否为ni114.6(null元素)返回:T或nil判定元素就是否被赋予nil值14.7(numberp元素)返回:T或nil,元素就是否为整数或实数14.8(quote表达式)响应表达式未检算前状态,同“‘”功能14.9(set符号表达式)将表达式结果设定给带单引号’符号14.10(setq符号1 表达式1[符号2表达式2]…)设定表达式结果给各符号14.11(type元素)返回:元素的信息型态14.12(zerop元素)返回:T或nil,元素就是否为0值十五、ADS、ARX、AutoLISP加载与卸载函数AutoLisp函数7/815.l(ads)返回:目前加载ADS程序列表15.2(arx)返回:目前加载 ARX程序列表15.3(arxload应用程序[出错处理]))返回:加载 ARX程序15.4(arxunload应用程序[出错处理]))返回:卸载 ARX程序15.5(ver) 返回:目前 AutoLISP版本字符串15.6(load LSP文件名[加载失败])加载 AutoLISP文件(*.lsp)15.7 (xload应用程序[错处理])加载ADS应用程序15.8 (xunloa应用程序[出错处理])卸载 ADS应用程序十六、内存空间管理函数16.l(alloc数值)以节点数值设定区段大小16.2(expand数值)以区段数值配置节点空间16.3(gc)强制收回废内存16.4(mem)显示目前的内存使用状态16.5(xdroom对象名称)返回对象扩展信息允许使用的内存空间16.6(xdsize列表)返回对象扩展信息所占用的内存空间十七、其它重要的功能函数17.l(acad_colordlg 颜色码旗号)显示出标准 AutoCAD颜色选择对话框17.2(acad_helpdlg 求助文件名主题)显示出标准 AutoCAD求助对话框17.3(acad_strlsort字符串列表)作字符串列表排序17.4(bherrs) 取得 bhatch与 bpcly失败所产生的错误信息17.5(bhatch点[选择集[向量]])根据 Pick point选点方式调用 bhatch命令,绘制选集区域的剖面线17.6(bpoly点[选择集[向量]])根据Pick point选点方式调用bpoly命令并产生一定域Polyline17.7(cal计算式字符串)执行如 CAL计算功能十八、ADS、ARX外部定义的3D函数18、1(align自变量 1 自变量 2....)执行如 ALIGN命令各选项顺序18.2(c:3dsin模式3DS文件名)导入3DS文件18.3(C:3dsout模式3DS文件名)输出3DS文件18.4(c:background模式[选项])设定渲染背景18.5(C:fog模式[选项])设定渲染的雾效果18.6(C:light模式[选项])设定渲染的灯光控制18.7(c:lsedit模式【选项1】设定渲染的景物控制18.8(C:lslib模式[选项])管理景物图库18.9(c:matilb模式材质材质库名)管理材质数据库18.10(c:mirror3d 自变量1 自变量2……)执行如MIRROR3D命令18.11(C:psdrap模式)根据模式设定值(0或1),传唤psdrap命令18.12(C:psfill对象名称图案名称[自变量1[自变量2]])以POStSCript图案填满18.13(c:psin文件名位置比例)插入一个Postscript(*.eps)文件18.14(c:render[渲染文件])执行渲染效果18.15(C:r格式自变量1 自变量2 自变量3…)设定执行渲染选项18.16(c:replay影像文件名影像类别[选项])展示影像文件TGA、BMP、TIF18.17(C:rmat模式选项)控管材质建立、贴附、编辑、分离18.18(c:rotate3d自变量 1 自变量2…)执行如 ROTATE3D命令各选项顺序18.19(C:rpref模式选项[设定])渲染环境设定18.20(c:saveimg影像文件名影像类别[选项])储存图像文件TGA、BMP、TIF18.21 (c:scene模式 [选项]) SCENE场景管理18.22(C:setuv模式选集自变量1 自变量2…)SETUV贴图模式管理18.23(C:showmat自变量1)显示对象的材质贴附信息18.24(C:solprof自变量 1 自变量工..)建立 3D实体的轮廓影像18.25(C:StatS[渲染信息文件])显示渲染信息统计信息十九、ADS、ARX 外部定义的数据库相关函数19.l(c:aseadmin自变量1 自变量2…)管理外部数据库19.2(c:aseexportt自变量1 自变量2…)输出信息19.3 (c:aselinks自变量1 自变量2…)连接对象与信息19.4(c:aserow自变量1 自变量2…)管理外部信息表格19.5(c:aseselect自变量1 自变量2…)建立外部信息与对象选集19.6 (c:asesqled自变量 1 自变量2…) 执行SQL程序。
vlisp函数大全
![vlisp函数大全](https://img.taocdn.com/s3/m/7ac7743643323968011c923c.png)
以给定的弧的中心点、半径、起始角度以及结束弧度建立一个弧
vla-addattribute
以指定的性质在给定的位置建立属性定义
vla-addbox
建立边缘和wcs轴平行的3d长方体
vla-addcircle
以给定的中心点和半径建立一个圆
vla-addcone
建立一个底面在wcs上的xy平面上的圆锥体
取得与字典相关的外部记录数据
vla-handletoobject
取得与给定处理码的对应对象
vla-highlight
设定给定对象或给定选集中的所有对象的显示状态
vla-import
输入sat,eps,dxf或wmf格式的图形文件
vla-importprofile
输入其他用户建立的配置
vla-initializeuserinput
vla-appenditems
附加一个或多个图元到指定组群
vla-appendouterloop
附加一个外环到图案填充范围
vla-appendvertex
附加一个顶点到3Dpoly,polyline或polygonmesh对象末端
vla-arraypolar
以给定的numberofobjects、angletofill以及centerpoint建立对象的环形阵列
vla-addrevolvedsolid
以给定的绕轴面域建立旋转实体
vla-addseparator
加入分割线到已有的菜单表或工具条
vla-addshape
以所给的插入点、比例系数以及旋转角度,依据一个以名称识别的模板建立一个形(shape)对象
vla-addsolid
建立一个2D实体多边形
vlookup用法举例
![vlookup用法举例](https://img.taocdn.com/s3/m/a436290b42323968011ca300a6c30c225901f0aa.png)
VLOOKUP用法举例什么是VLOOKUP?VLOOKUP是Excel中一种非常强大的函数,用于在一个表格中查找某个值,并返回与该值相关联的数据。
它是垂直查找(Vertical Lookup)的缩写,因此函数名称中的”V”代表垂直。
VLOOKUP函数的语法在介绍VLOOKUP的用法之前,我们先来了解一下它的语法:=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])•lookup_value:要查找的值。
•table_array:要进行查找的表格区域。
•col_index_num:要返回数据所在列的索引号。
•range_lookup(可选):指定是否进行近似匹配。
默认为TRUE或省略,则进行近似匹配;如果为FALSE,则进行精确匹配。
以上就是VLOOKUP函数的基本语法。
VLOOKUP函数的用途VLOOKUP函数可以帮助我们快速地在一个大型数据表格中查找特定值,并返回相关信息。
它在处理大量数据时非常有用,尤其是当我们需要从一个数据表格中提取特定信息时。
下面我们将通过几个实际案例来演示VLOOKUP函数的用法。
1. 查找学生成绩假设我们有一个学生成绩单,其中包含学生的姓名和对应的成绩。
现在我们想要根据学生的姓名快速查找他们的成绩。
首先,我们需要创建一个名为”成绩单”的表格,其中包含两列:姓名和成绩。
姓名成绩张三90李四85王五95小明92小红88然后,在另一个单元格中输入以下公式:=VLOOKUP("小明", A2:B6, 2, FALSE)这个公式的意思是在”成绩单”表格中查找名为”小明”的学生,并返回他的成绩。
其中,A2:B6表示要进行查找的表格区域,2表示要返回数据所在列(即成绩)的索引号,FALSE表示进行精确匹配。
执行这个公式后,我们将得到结果为92,即小明的成绩是92分。
2. 查找商品价格假设我们有一个商品清单,其中包含商品名称和对应的价格。
vlisp函数词典
![vlisp函数词典](https://img.taocdn.com/s3/m/b4dc78384b35eefdc8d3332e.png)
vlisp函数词典Vlisp函数功能说明(vla-activate)激活指定图形(vla-add)建立一个对象并把它加入相应的集合中(vla-add3dface)以给定的四个顶点建立一个3Dface对象(vla-add3dmesh)以给定的M和N方向的点数及M和N的点坐标值建立的自由形状的3D网格面(vla-add3Dpoly)以给定的坐标值阵列建立一个3D多段线(vla-addarc)以给定的弧的中心点、半径、起始角度以及结束弧度建立一个弧(vla-addattribute)以指定的性质在给定的位置建立属性定义(vla-addbox)建立边缘和wcs轴平行的3d 长方体(vla-addcircle)以给定的中心点和半径建立一个圆(vla-addcone)建立一个底面在wcs上的xy平面上的圆锥体(vla-addcustomobject)建立custom对象(vla-addcylinder)建立一个在wcs的xy平面上的3d实体圆柱体(vla-adddim3pointangular)使用三点建立角度标注(vla-adddimaligned)建立一个对齐标注对象(vla-adddimangular)建立弧、两条线或圆周的角度标注(vla-adddimdiametric)以给定的直径上的亮点以及引线的长度建立圆周或弧的直径标注(vla-adddimordinate)以给定的定义点及引线端点建立坐标标注(vla-adddimradial)在给定的位置建立选取的对象半径标注(vla-adddimrotated)建立旋转的线性标注(vla-addellipse)以给定的中心点、主轴上的一点以及半径比在wcs的xy平面上建立一个椭圆(vla-addellipticalcone)以给定的center、majorradius、minorradius、以及height在wcs的xy 平面上建立一个3d实体椭圆圆锥体(vla-addellipticalcylinder)以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆柱体(vla-addextrudedsolid)以给定的profile、height以及taperangle建立拉伸实体(vla-addextrudedsolidalongpath)以给定的轮廓以及拉伸路径建立拉伸实体(vla-addfitpoint)以给定的索引将拟合点加到样条曲线(vla-addhatch)建立一个ahrch对象(vla-additems)以给定的索引将拟合点加到样条曲线(vla-addleader)以给定的点坐标值建立引线(vla-addlightweightpolyline)根据顶点的列表建立一条轻多段线(vla-addline)建立过两点的直线(vla-addmenuitem)加入菜单选项到弹出菜单中(vla-addminsertblock)插入图块的阵列(vla-addmline)建立过一个点阵列的多线(vla-addmtext)在插入点与边界框宽度所定义的矩形中建立一个多行文字输入图元(vla-addobject)加入对象到具名的字典(vla-addpoint)在给定的位置上建立一个point对象(vla-addpolyfacemesh)标出顶点,建立一个多面网格(vla-addpolyline)从顶点的表建立一条多段线(vla-addpviewport)以给定的中心点、高度及宽度加入图纸空间视口(vla-addraster)根据已有的图像文件建立新的点阵式图像(vla-addray)建立通过两个唯一点的射线(vla-addregion)从一组图元建立面域。
VLOOKUP函数最常用的10种用法
![VLOOKUP函数最常用的10种用法](https://img.taocdn.com/s3/m/e30d87ce0722192e4436f601.png)
VLOOKUP函数最常用用法VLOOKUP函数是工作中最常用的一种查找函数,掌握好VLOOKUP函数能够极大提高工作的效率。
VLOOKUP函数用于首列查找并返回指定列的值,字母“V”表示垂直方向。
VLOOKUP函数的语法如下:VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])其中,第1参数lookup_value为要搜索的值,第2参数table_array为首列可能包含查找值的单元格区域或数组,第3参数col_index_num为需要从table_array中返回的匹配值的列号,第4参数range_lookup用于指定精确匹配或近似匹配模式。
当range_lookup为TRUE、被省略或使用非零数值时,表示近似匹配模式,要求table_array 第一列中的值必须按升序排列,并返回小于等于lookup_value的最大值对应列的数据。
当参数为FALSE时(常用数字0或保留参数前的逗号代替),表示只查找精确匹配值,返回table_array的第一列中第一个找到的值,精确匹配模式不必对table_array第一列中的值进行排序。
如果使用精确匹配模式且第1参数为文本,则可以在第1参数中使用通配符问号(?)和星号(*)。
VLOOKUP函数不区分字母大小写。
案例一A3:B7单元格区域为字母等级查询表,表示60分以下为E级、60~69分为D级、70~79分为C级、80~89分为B级、90分以上为A级。
D:G列为初二年级1班语文测验成绩表,如何根据语文成绩返回其字母等级?在H3:H13单元格区域中输入=VLOOKUP(G3,$A$3:$B$7,2)案例二在Sheet1里面如何查找折旧明细表中对应编号下的月折旧额?(跨表查询)在Sheet1里面的C2:C4单元格输入=VLOOKUP(A2,折旧明细表!A$2:$G$12,7,0)案例三如何实现通配符查找?在B2:B7区域中输入公式=VLOOKUP(A2&"*",折旧明细表!$B$2:$G$12,6,0)案例四如何实现模糊查找?在F1:F9区域中输入公式=VLOOKUP(E2,$A$2:$B$7,2,1)案例五如何通过数值查找文本数据、通过文本查找数值数据、同时实现数值与文本数据混合查找?通过数值查找文本数据:在F3:F6区域中输入公式=VLOOKUP(E3&"",$A$2:$C$6,3,0)通过文本查找数值数据:在F11:F13区域中输入公式=VLOOKUP(--E11,$A$10:$C$14,3,0) 同时实现数值与文本数据混合查找:在F19:F21区域中输入公式=IF(ISNA(VLOOKUP(E19*1,$A$18:$C$22,3,0)),VLOOKUP(E19&"",$A$18:$C$22,3,0),V LOOKUP(E19*1,$A$18:$C$22,3,0))案例六在Excel中录入数据信息时,为了提高工作效率,用户希望通过输入数据的关键字后,自动显示该记录的其余信息,例如,输入员工工号自动显示该员工的信命,输入物料号就能自动显示该物料的品名、单价等。
VLISP函数大全
![VLISP函数大全](https://img.taocdn.com/s3/m/e5deb7c533d4b14e85246868.png)
Vlisp函数功能说明vla-activate激活指定图形vla-add建立一个对象并把它加入相应的集合中vla-add3dface以给定的四个顶点建立一个3Dface对象vla-add3dmesh以给定的M和N方向的点数及M和N的点坐标值建立的自由形状的3D网格面vla-add3Dpoly以给定的坐标值阵列建立一个3D多段线vla-addarc以给定的弧的中心点、半径、起始角度以及结束弧度建立一个弧vla-addattribute以指定的性质在给定的位置建立属性定义vla-addbox建立边缘和wcs轴平行的3d长方体vla-addcircle以给定的中心点和半径建立一个圆vla-addcone建立一个底面在wcs上的xy平面上的圆锥体vla-addcustomobject建立custom对象vla-addcylinder建立一个在wcs的xy平面上的3d实体圆柱体vla-adddim3pointangular使用三点建立角度标注vla-adddimaligned建立一个对齐标注对象vla-adddimangular建立弧、两条线或圆周的角度标注vla-adddimdiametric以给定的直径上的亮点以及引线的长度建立圆周或弧的直径标注vla-adddimordinate以给定的定义点及引线端点建立坐标标注vla-adddimradial在给定的位置建立选取的对象半径标注vla-adddimrotated建立旋转的线性标注vla-addellipse以给定的中心点、主轴上的一点以及半径比在wcs的xy平面上建立一个椭圆vla-addellipticalcone以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆锥体vla-addellipticalcylinder以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆柱体vla-addextrudedsolid以给定的profile、height以及taperangle建立拉伸实体vla-addextrudedsolidalongpath以给定的轮廓以及拉伸路径建立拉伸实体vla-addfitpoint以给定的索引将拟合点加到样条曲线vla-addhatch建立一个ahrch对象vla-additems以给定的索引将拟合点加到样条曲线vla-addleader以给定的点坐标值建立引线vla-addlightweightpolyline根据顶点的列表建立一条轻多段线vla-addline建立过两点的直线vla-addmenuitem加入菜单选项到弹出菜单中vla-addminsertblock插入图块的阵列vla-addmline建立过一个点阵列的多线vla-addmtext在插入点与边界框宽度所定义的矩形中建立一个多行文字输入图元vla-addobject加入对象到具名的字典vla-addpoint在给定的位置上建立一个point对象vla-addpolyfacemesh标出顶点,建立一个多面网格vla-addpolyline从顶点的表建立一条多段线vla-addpviewport以给定的中心点、高度及宽度加入图纸空间视口vla-addraster根据已有的图像文件建立新的点阵式图像vla-addray建立通过两个唯一点的射线vla-addregion从一组图元建立面域。
VFP函数大全
![VFP函数大全](https://img.taocdn.com/s3/m/bfc9c3de50e2524de5187ede.png)
VFP函数大全一、数值函数数值函数用于数值运算,其自变量与函数都是数值型数据。
1.取绝对值函数ABS( )【格式】ABS(<nExp>)【功能】计算nExp的值,并返回该值的绝对值。
2.指数函数EXP( )【格式】EXP(<nExp>)【功能】求以e为底、nExp值为指数的幂,即返回ex的值。
3.取整函数INT( )【格式】INT(<nExp>)【功能】计算nExp的值,返回该值的整数部分。
4.上界函数CEILING( )【格式】CEILING(<nExp>)【功能】计算nExp的值,返回一个大于或等于该值的最小整数。
5.下界函数FLOOR( )【格式】FLOOR(<nExp>)【功能】计算nExp的值,返回一个小于或等于该值的最大整数。
6.自然对数函数LOG( )【格式】LOG(<nExp>)【功能】求nExp的自然对数。
nExp的值必须为正数。
7.常用对数函数【格式】LOG10(<nExp>)【功能】求nExp的常用对数。
nExp的值必须为正数。
8.平方根函数SQRT( )【格式】SQRT(<nExp>)【功能】求非负nExp的平方根。
9.最大值函数MAX( )和最小值函数MIN( )【格式】MAX(<nExp1>,< nExp2>[,< nExp3>...])MIN(<nExp1>,< nExp2>[,< nExp3>...])【功能】返回数值表达式中的最大值MAX( )和最小值MIN( )。
10.求余数函数MOD( )【格式】MOD(<nExp1>,<nExp2>)【功能】返回nExp1除以nExp2的余数。
余数的小数位数与nExp1相同,符号与nExp2相同。
11.四舍五入函数ROUND( )【格式】ROUND(<nExp1>,< nExp2>)【功能】返回nExp1四舍五入的值,nExp2表示保留的小数位数。
LISP函数(分类)大全
![LISP函数(分类)大全](https://img.taocdn.com/s3/m/6e6737bcb84ae45c3a358c41.png)
AutoLisp函数一、数学运算功能函数1.l(十数值数值…)返回:累计实数或整数数值1.2(一数值数值…)返回:差值1.3(*数值数值…)返回:所有数值乘积1.4(/数值数值…)返回:第一个数值除以第二个以后数值的商1.5(l十数值)返回:数值十ll.6(1—数值)返回:数值一ll.7(abs数值)返回:数值的绝对值1.8(atan数值)返回:反正切值1.9(cos角度)返回:角度的余弦值,角度值为弧度1.10(exp数值)返回:数值的指数1.11(expt底数指数)返回:底数的指数值1.12(fix数值)返回:将数值转换为整数值1.14(gcd数值1数值2)返回:两数值的最大公因数1.15(log数值)返回:数值的自然对数值1.16(max数值数值…)返回:数值中的最大值1.17(min数值数值…)返回:数值中的最小值1.18pi常数∏,其值约为3.14159261.19(rem数值1数值2)返回:M数值的相除的余数l.20(sin角度)返回:角度的正旋值,角度值为弧度1.21(sqrt数值)返回:数值的平方根二、检验与逻辑运算功能函数2.l(=表达式1表达式2)比较表达式1是否等于式2,适用数值及字符串2.2(/=表达式1表达式2)比较表达式1是否大于等于表达式22.3(<表达式1表达式2)比较表达式1是否<小于表达式22.4(<=表达式1表达式2)比较表达式1是否<一小于等于表达式22.5(>表达式1表达式2)比较表达式1是否>大于表达式22.6(>=表达式1表达式2)比较表达式1是否大于等于表达式22.7(~数值)返回:数值的位not值,(1的补码)2.8(and表达式1表达式2…)返回:逻辑and的结果2.9(boole函数整数整数…)返回:位式布尔运算AutoLisp函数2/82.10(eq表达式1表达式2)比较表达式1与表达式2是否相同,适用列表比较(实际相同)2.11(equal表达式1表达式2[差量])比较表达式1与表达式2是否相同,差量可省略(内容相同)三、转换运算功能函数3.l(angtof字符串[模式])返回:角度值的字符串转成实数3.2(angtos角度[模式[精度]])返回:角度转成的字符串值3.3(atof字符串)返回:字符串转成实数值3.4(atoi字符串)返回:字符串转成整数值3.5(cvunit数值原始单位转换单位)返回:数值转换单位后的值转换根据acad.nut 文件3.6(distof字符串[模式])返回:根据模式将字符串转成实数值3.7(itoa整数)返回:整数转成字符串3.8(rtos数值模式[精度])返回:实数转成字符串3.9(trans点原位置新位置[位移])返回:转换坐标系统值四、列表处理功能函数4.1(append列表列表……)结合所有列表成一个列表4.2(assoc关键元素联合列表)根据关键元素找寻联合列表中关系信息4.3(car列表)返回列表中的第一个元素,通常用来求X坐标4.4(cadr列表)返回列表中的第二个元素,通常用来求y坐标4.5(caddr列表)返回列表中的第三个元素,通常用来求Z坐标4.6(cdr列表)返回:除去第一个元素后的列表4.7(cons新元素列表)返回:将新元素添加到列表4.8(foreach名称列表表达式)返回:将列表的每一元素对应至名称再根据表达式执行响应4.9(length列表)返回:列表内的元素数量4.10(list元素元素…)返回:将所有元素合并为一列表4.11(listp元素)返回:判断元素是否为一串4.12(mapcar函数列表1列表2…)返回:将列表1、列表2列表的元素配合函数,求得新列表4.13(member关键元素列表)返回:根据关键元素(含似后的列表4.14(nth n列表)返回:列表的第n个元素AutoLisp函数3/84.15(reverse列表)返回:将列表元素根据顺序颠倒过来的列表4.16(subst新项旧项列表)返回:替换新旧列表后的列表五、字符串、字符、文件处理函数5.l(ascii字符串)返回:字符串第一个字符的“ASCII”码5.2(chr整数)返回:整数所对应的ASCII单一字符串5.3(close文件名称)关闭文件5.4(open文件名模式)返回:打开文件代码,准备读取或写入信息5.5(read字符串)返回:列表中的字符串的第一组元素5.6(read-char[文件代码])返回:通过键盘或文件中读取单一字符5.7(read-line[文件代码])返回:经由键盘或文件中读取一行字符串5.8(strcase字符串[字样])返回:转换字符串大小写5.9(strcat字符串1字符串2…)返回:将各字符串合并为一个字符串5.10(strlen字符串)返回:字符串构成的字符数(即字符串长度)5.11(substr字符串起始长度)返回:取出于字符串‘5.12(wcmatch字符串格式)返回:T或nil,将字符串与通用字符进行比较5.13(write-char数值[文件代码])返回:将一ASCII字符写到文件或屏幕15.14(write-line字符串[文件代码])返回:将字符串写到文件或屏幕上六、等待输入功能函数6.l(getangle[基点][提示])请求输入十进制角度数值,响应一个弧度值提示及参考点可有可无6.2(getcorner基点[提示])请求输入另一矩形框对角点坐标6.3(getdist[基点][提示])请求输入一段距离6.4(getint[提示])请求输入一个整数值6.5(getkword[提示]请求输入“关键词”6.6(getorient[基点][提示])请求输入十进制角度,响应一弧度值不受angbase、angdir 影响6.7(getPoint[基点][提示])请求输入一个点的坐标6.8(getreal[提示]请求输入一个实数6.9(getstring[提示])请求输入一个字符串6.10(initget[位]字符串)设定下次getxxx函数的有效输入七、几何运算功能函数7.l(angle点1点2)取得两点的角度弧度值7.2(distance点1点2)取得两点的距离7.3(inters点1点2点3点4[模式])取得两条线的交点7.4(osnap点模式字符串)按照捕捉模式取得另一坐标点7.5(polar基点弧度距离)按照极坐标法取得另一坐标点7.6(textbox对象列表)取得文字字符串的两个对角点坐标八、对象处理功能函数8.l(entdel对象名称)删除或取消删除对象8.2(entget对象名称[应用程序列表])取出对象名称的信息列表8.3(entlast)取出图形信息中的最后一个对象8.4(entmake对象列表)建立一个新的对象列表8.5(entmod对象列表)根据更新的信息列表更新屏幕上元体8.6(entnext[对象名称])找寻图面中的下一个对象8.7(entsel[提示])请求选取一个对象,响应包含对象名称及选点坐标的列表;8.8(entupd对象名称)更新屏幕上复元体图形8.9(handent图码)返回:图码的元体名称8.10(nentsel[提示])返回:BLOCK所含副元体对象信息列表8.11(nentselp[提示][点])返回:BLOCK所含副元体对象信息似4*4矩形表示)九、选择集、符号表处理函数9.l(ssadd[对象名称][选择集])将对象加入选择集或建立一新选择集9.2(ssdel对象名称选择集)将对象自选择集中移出9.3(ssget[模式][点1][点2]取得一个选择集9.4(ssget”X”[过滤列表])取得根据过滤列表所指定范围的选择集9.5(sslenth选择集)计算选择集的对象个数9.6(ssmemb对象名称选择集)响应对象名称是否包含于选择集内9.7(ssname选择集索引值)根据索引值取出选择集中的对象名称9.8(tblnext符号表名称[T])检视符号表,有效的符号表:”LAYER”、”LTYPE”、”VIEW”、”STYLE”、”BLOCK”9.9(tblsearch符号表名称符号)在符号表中搜寻符号十、AutoCAD相关查询、控制功能函数10.l(command”AutoCAD命令”…)超重量级函数,调用执行AutoCAD命令AutoLisp 函数5/810.2(findfile文件名)返回:该文件名的路径及文件名10.3(getfiled标题内定档名扩展名旗号)通过标准AutoCAD文件对话DCL对话框获得文件10.4(getenv”环境变量”)取得该环境变量的设定值,以字符串表示10.5(getvar”系统变量”)取得该系统变量的设定值,以字符串表示10.6(setvar”系统变量”值)设定该系统变量的值10.7(regapp应用类项)将目前的AutoCAD图形登记为一个应用程序名称十一、判断式、循环相关功能函数11.1(If<比较式><表达式1>[表达式2]检算比较式结果,如果为真,执行<表达式1>,否则执行<表达式2>11.2(repeat次数[<表达式><表达式>…])重复执行N次表达式11.3(While<比较式><表达式>…)当条件成立则执行表达式内容11.4(cond<比较式1><表达式1>多条件式的if整合功能<比较式2><表达式2><比较式3><表达式3>)11.5(prong表达式1表达式2…)连接其中的表达式为一组,常用于配合if、cond 等函数十二、函数处理、定义、追踪与错误处理功能函数12.l(*error*字符串)程序错误时的警示信息12.2(alert字符串)以对话框式显示出警告字符串12.3(apply功能函数列表)将功能函数与列表结合后执行12.4(defun名称自变量列表表达式_.)自定函数或子程序12.5(eval表达式)返回:表达式的执行结果12.6(exit)强制退出目前的应用程序12.7(lambda自变量表达式)定义未命名的函数12.8(progn表达式1表达式2…)连接其内的表达式为一组,常用于配合if、cond等函数12.9(quit)强制退出目前的应用程序12.10(tablet代码[列1列2列3方向])取用或建立对数字板的校调12.11(trace函数…)对函数设定追踪标记,辅助检错12.12(untrace函数…)对函数设定解除追踪标记AutoLisp函数6/8十三、显示、打印控制功能函数13.l(gfaphscr)作图环境切换到图形画面13.2(grclear)暂时清除模前的屏幕画面13.3(grdraw起点终点颜色[亮显])暂时性的画出一条线13.4(grread[追踪])由输入设备读取追踪值13.5(grtext位置字符串[亮显])将字符串显示在状态列或屏幕菜单上13.6(grvecs向量列表[转置矩阵])暂时性的画出多条线13.7(menucmd字符串);提供在AlltOLISP中调用各菜单13.8(Prinl[表达式[文件代码]]将表达式打印于命令区或已打开的文件句柄字符则以“\”为前缀展开13.9(pinc[表达式[文件代码]]除句柄字符则不以”\”为前缀展外开其余同Prinl 13.10(print[表达式[文件代码]]除表达式会往下一新行列出,及空一格外其余同prinl13.11(prompt信息)将信息显示于屏幕的命令区,并随后响应一个nil信息13.12(redraw[对象名称[模式]])重绘整张图或根据对象名称重绘该图形13.13(terpri)在屏幕上显示新列13.14(textscr)作图环境切换到文字画面13.15(textpage)清除文字画面文字类似DOS的cls命令13.16(vports)返回:窗口组态列表十四、符号、元素、表达式处理功能函数14.l(atom元素)如果元素不是列表,响应T,否则为nil14.2(atoms-family格式闲号列表])返回:一组己定义函数的符号列表14.3(boundp表达式)返回:T或nil,响应表达式是否有值存在14.4(minusp元素)返回:T或n儿元素是否为负值14.5(not元素)返回:T或n儿判定元素是否为ni114.6(null元素)返回:T或nil判定元素是否被赋予nil值14.7(numberp元素)返回:T或nil,元素是否为整数或实数14.8(quote表达式)响应表达式未检算前状态,同“‘”功能14.9(set符号表达式)将表达式结果设定给带单引号’符号14.10(setq符号1表达式1[符号2表达式2]…)设定表达式结果给各符号14.11(type元素)返回:元素的信息型态14.12(zerop元素)返回:T或nil,元素是否为0值十五、ADS、ARX、AutoLISP加载与卸载函数AutoLisp函数7/815.l(ads)返回:目前加载ADS程序列表15.2(arx)返回:目前加载ARX程序列表15.3(arxload应用程序[出错处理]))返回:加载ARX程序15.4(arxunload应用程序[出错处理]))返回:卸载ARX程序15.5(ver)返回:目前AutoLISP版本字符串15.6(load LSP文件名[加载失败])加载AutoLISP文件(*.lsp)15.7(xload应用程序[错处理])加载ADS应用程序15.8(xunloa应用程序[出错处理])卸载ADS应用程序十六、内存空间管理函数16.l(alloc数值)以节点数值设定区段大小16.2(expand数值)以区段数值配置节点空间16.3(gc)强制收回废内存16.4(mem)显示目前的内存使用状态16.5(xdroom对象名称)返回对象扩展信息允许使用的内存空间16.6(xdsize列表)返回对象扩展信息所占用的内存空间十七、其它重要的功能函数17.l(acad_colordlg颜色码旗号)显示出标准AutoCAD颜色选择对话框17.2(acad_helpdlg求助文件名主题)显示出标准AutoCAD求助对话框17.3(acad_strlsort字符串列表)作字符串列表排序17.4(bherrs)取得bhatch与bpcly失败所产生的错误信息17.5(bhatch点[选择集[向量]])根据Pick point选点方式调用bhatch命令,绘制选集区域的剖面线17.6(bpoly点[选择集[向量]])根据Pick point选点方式调用bpoly命令并产生一定域Polyline17.7(cal计算式字符串)执行如CAL计算功能十八、ADS、ARX外部定义的3D函数18.1(align自变量1自变量2....)执行如ALIGN命令各选项顺序18.2(c:3dsin模式3DS文件名)导入3DS文件18.3(C:3dsout模式3DS文件名)输出3DS文件18.4(c:background模式[选项])设定渲染背景18.5(C:fog模式[选项])设定渲染的雾效果18.6(C:light模式[选项])设定渲染的灯光控制18.7(c:lsedit模式【选项1】设定渲染的景物控制18.8(C:lslib模式[选项])管理景物图库18.9(c:matilb模式材质材质库名)管理材质数据库18.10(c:mirror3d自变量1自变量2……)执行如MIRROR3D命令18.11(C:psdrap模式)根据模式设定值(0或1),传唤psdrap命令18.12(C:psfill对象名称图案名称[自变量1[自变量2]])以POStSCript图案填满18.13(c:psin文件名位置比例)插入一个Postscript(*.eps)文件18.14(c:render[渲染文件])执行渲染效果18.15(C:rfileopt格式自变量1自变量2自变量3…)设定执行渲染选项18.16(c:replay影像文件名影像类别[选项])展示影像文件TGA、BMP、TIF18.17(C:rmat模式选项)控管材质建立、贴附、编辑、分离18.18(c:rotate3d自变量1自变量2…)执行如ROTATE3D命令各选项顺序18.19(C:rpref模式选项[设定])渲染环境设定18.20(c:saveimg影像文件名影像类别[选项])储存图像文件TGA、BMP、TIF18.21(c:scene模式[选项])SCENE场景管理18.22(C:setuv模式选集自变量1自变量2…)SETUV贴图模式管理18.23(C:showmat自变量1)显示对象的材质贴附信息18.24(C:solprof自变量1自变量工..)建立3D实体的轮廓影像18.25(C:StatS[渲染信息文件])显示渲染信息统计信息十九、ADS、ARX外部定义的数据库相关函数19.l(c:aseadmin自变量1自变量2…)管理外部数据库19.2(c:aseexportt自变量1自变量2…)输出信息19.3(c:aselinks自变量1自变量2…)连接对象与信息19.4(c:aserow自变量1自变量2…)管理外部信息表格19.5(c:aseselect自变量1自变量2…)建立外部信息与对象选集19.6(c:asesqled自变量1自变量2…)执行SQL程序。
VLOOKUP函数最常用地10种用法
![VLOOKUP函数最常用地10种用法](https://img.taocdn.com/s3/m/15472beebe23482fb5da4c51.png)
VLOOKUP函数最常用用法VLOOKUP函数是工作中最常用的一种查找函数,掌握好VLOOKUP函数能够极大提高工作的效率。
VLOOKUP函数用于首列查找并返回指定列的值,字母“V”表示垂直方向。
VLOOKUP函数的语法如下:VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])其中,第1参数lookup_value为要搜索的值,第2参数table_array为首列可能包含查找值的单元格区域或数组,第3参数col_index_num为需要从table_array中返回的匹配值的列号,第4参数range_lookup用于指定精确匹配或近似匹配模式。
当range_lookup为TRUE、被省略或使用非零数值时,表示近似匹配模式,要求table_array 第一列中的值必须按升序排列,并返回小于等于lookup_value的最大值对应列的数据。
当参数为FALSE时(常用数字0或保留参数前的逗号代替),表示只查找精确匹配值,返回table_array的第一列中第一个找到的值,精确匹配模式不必对table_array第一列中的值进行排序。
如果使用精确匹配模式且第1参数为文本,则可以在第1参数中使用通配符问号(?)和星号(*)。
VLOOKUP函数不区分字母大小写。
案例一A3:B7单元格区域为字母等级查询表,表示60分以下为E级、60~69分为D级、70~79分为C级、80~89分为B级、90分以上为A级。
D:G列为初二年级1班语文测验成绩表,如何根据语文成绩返回其字母等级?在H3:H13单元格区域中输入=VLOOKUP(G3,$A$3:$B$7,2)案例二在Sheet1里面如何查找折旧明细表中对应编号下的月折旧额?(跨表查询)在Sheet1里面的C2:C4单元格输入=VLOOKUP(A2,折旧明细表!A$2:$G$12,7,0)案例三如何实现通配符查找?在B2:B7区域中输入公式=VLOOKUP(A2&"*",折旧明细表!$B$2:$G$12,6,0)案例四如何实现模糊查找?在F1:F9区域中输入公式=VLOOKUP(E2,$A$2:$B$7,2,1)案例五如何通过数值查找文本数据、通过文本查找数值数据、同时实现数值与文本数据混合查找?通过数值查找文本数据:在F3:F6区域中输入公式=VLOOKUP(E3&"",$A$2:$C$6,3,0)通过文本查找数值数据:在F11:F13区域中输入公式=VLOOKUP(--E11,$A$10:$C$14,3,0) 同时实现数值与文本数据混合查找:在F19:F21区域中输入公式=IF(ISNA(VLOOKUP(E19*1,$A$18:$C$22,3,0)),VLOOKUP(E19&"",$A$18:$C$22,3,0),V LOOKUP(E19*1,$A$18:$C$22,3,0))案例六在Excel中录入数据信息时,为了提高工作效率,用户希望通过输入数据的关键字后,自动显示该记录的其余信息,例如,输入员工工号自动显示该员工的信命,输入物料号就能自动显示该物料的品名、单价等。
Vlookup函数一网打尽
![Vlookup函数一网打尽](https://img.taocdn.com/s3/m/98506391e53a580216fcfe5b.png)
Vlookup函数By:as0810114 VLOOKUP(查找值,数据区域,返回列数,逻辑值)查找区域查找值G12公式为F12是要查找的值C$11:E$19是查找区域,且F12的值在查要返回的基本工资在查找区域C$11:E$1例2:VLOOKUP的模糊查找。
逻辑值如果为1或被省略,查找区域必须按升序排列,则返回精确匹配值或近似匹配值。
错误不及格不及格不及格不及格良好优秀VLOOKUP(F12,C语法查找值 是需要在数据区域的第一列中查找的数值,可以为数值、文本、引用或者是公式计算出的结果。
只有查找值在数据区域中的第一列存在时,公式才能返回正确的值。
如果查找的数值在第一列中不存在,则会返回错误值"#N/A"。
数据区域 是包括查找值和返回值在内的区域,一般表示为"$D$23:$F$31"的形式,以便于公式填充,也可以将区域定义为一个名称。
这些值可以是文本、数字或逻辑值。
文本不区分大小写。
返回列数 在数据区域的第一列找到查找值后,返回查找值对应的哪一行的第几列的单元格的内容。
小于1,则VLOOKUP返回错误值#VALUE!。
大于数据区域的列数,则 VLOOKUP返回错误值#REF!。
逻辑值 指明函数VLOOKUP返回时是精确匹配还是近似匹配。
如果为1或被省略,则返回精确匹配值或近似匹配值。
如果找不到精确匹配值,则返回小于查找值的最大值。
如果为1或被省略,则查找区域必须按升序排列;否则,VLOOKUP 可能无法返回正确的值。
优秀查找区域$G$37:$G$40以升序排列,若查优秀要查找的C37为79,79在$G$37:$G$40不存即在$G$37:$G$40中查找小于79的最大值查找张三的工号姓名工号赵三A002VLOOKUP(E51,IF({1,0},C50:C53,B50:B 公式剖析:1、这里其实不是VLOOKUP可以实现从右至右的查找,而是利用IF函数的数组效应把两列换位重新组合2、IF({1,0},C50:C53,B50:B53)这是本公式中最重要的组成部分。
lisp函数详解
![lisp函数详解](https://img.taocdn.com/s3/m/d475a9062e60ddccda38376baf1ffc4ffe47e21b.png)
lisp函数详解AuotLisp及vLisp函数全集按字母顺序排列按功能分类排列212. ssget一. 功能提示用户选择对象(图元),并返回一个选择集。
二. 格式(ssget [mode] [pt1 [pt2]] [pt_list] [filter_list])三. 说明(一).函数调用中各变元的说明mode变元是指定对象(图元)选择方法的一个字符串。
有效的选择方法是:'W'、 'WP'、 'C'、 'CP'、 'L'、 'P'、 'I'以及'F',它们分别对应于Window、WPolygon、Crossing、CPolygon、Last、Previous、Implied、Fence选择方法。
其它的可选的mode值是'X',它用于选择整个数据库。
pt1和pt2指定与选择有关的点。
调用ssget时提供了一个点而不提供mode变元,等价于拾取单个点来做对象选择。
ssget 函数忽略ObjectSnap(对象捕捉)的现行设置方式,除非您在调用本函数时专门指定了它。
filter_list变元是指定对象特征的一个关联表。
与filter_list匹配的那些对象被加入到选择集中。
如果调用ssget函数时,省略所有变元,则ssget函数给出'Selectobject'提示,允许用户交互地构造选择集。
选择集中可以包含图纸空间和模型空间两个空间中的对象,但该选择集由某一种操作所使用时,在现行空间中无效的那些对象会被过滤掉。
由ssget函数返回的选择集中仅包含主图元(不包含属性和多义线的顶点图元)。
下面给出一些使用实例。
(1)(ssget)让用户用普通的对象选择方法选择对象,构成选择集。
(2)(ssget 'P')生成一个选择集,该选择集由最近所选择的那些对象所组成。
AutoLISP函数大全
![AutoLISP函数大全](https://img.taocdn.com/s3/m/e45bf0ff3086bceb19e8b8f67c1cfad6195fe999.png)
AutoLISP函数大全一、数学运算功能函数l(+数值数值…) 返回:累计实数或整数数值2(-数值数值…) 返回:差值3(*数值数值…) 返回:所有数值乘积4(/数值数值…) 返回:第一个数值除以第二个以后数值的商5(l+ 数值) 返回:数值+l6(1- 数值) 返回:数值-l7(abs数值) 返回:数值的绝对值8(atan数值) 返回:反正切值9(cos角度) 返回:角度的余弦值,角度值为弧度10(exp数值) 返回:数值的指数11(expt底数指数) 返回:底数的指数值12(fix数值) 返回:将数值转换为整数值13(float数值) 返回:将数值转换为实数值14(gcd数值1数值2) 返回:两数值的最大公因数15(log数值) 返回:数值的自然对数值16(max数值数值…) 返回:数值中的最大值17(min数值数值…) 返回:数值中的最小值18pi 常数∏,其值约为3.141592619(rem数值1数值2) 返回:M数值的相除的余数20(sin角度) 返回:角度的正旋值,角度值为弧度21(sqrt数值) 返回:数值的平方根二、检验与逻辑运算功能函数l(=表达式1表达式2) 比较表达式1是否等于式2,适用数值及字符串2(/=表达式1表达式2) 比较表达式1是否大于等于表达式23(<表达式1表达式2) 比较表达式1是否<小于表达式24(<=表达式1表达式2) 比较表达式1是否<一小于等于表达式25(>表达式1表达式2) 比较表达式1是否>大于表达式26(>=表达式1表达式2) 比较表达式1是否大于等于表达式27(~数值) 返回:数值的位not值,(1的补码)8(and表达式1表达式2…) 返回:逻辑and的结果9(boole函数整数整数…) 返回:位式布尔运算10(eq表达式1表达式2) 比较表达式1与表达式2是否相同,适用列表比较(实际相同)11(equal表达式1表达式2[差量])比较表达式1与表达式2是否相同,差量可省略(内容相同)三、转换运算功能函数l(angtof字符串[模式])返回:角度值的字符串转成实数2(angtos角度[模式[精度]])返回:角度转成的字符串值3(atof字符串)返回:字符串转成实数值4(atoi字符串)返回:字符串转成整数值5(cvunit数值原始单位转换单位)返回:数值转换单位后的值转换根据acad.nut文件6(distof字符串[模式])返回:根据模式将字符串转成实数值7(itoa整数)返回:整数转成字符串8(rtos数值模式[精度])返回:实数转成字符串9(trans点原位置新位置[位移])返回:转换坐标系统值四、列表处理功能函数1(append列表列表……)结合所有列表成一个列表2(assoc关键元素联合列表)根据关键元素找寻联合列表中关系信息3(car列表)返回列表中的第一个元素,通常用来求X坐标4(cadr列表)返回列表中的第二个元素,通常用来求y坐标5(caddr列表)返回列表中的第三个元素,通常用来求Z坐标6(cdr列表)返回:除去第一个元素后的列表7(cons新元素列表)返回:将新元素添加到列表8(foreach名称列表表达式)返回:将列表的每一元素对应至名称再根据表达式执行响应9(length列表)返回:列表内的元素数量10(list元素元素…)返回:将所有元素合并为一列表11(listp元素)返回:判断元素是否为一串12(mapcar函数列表1列表2…)返回:将列表1、列表2列表的元素配合函数,求得新列表13(member关键元素列表)返回:根据关键元素(含似后的列表14(nthn列表)返回:列表的第n个元素15(reverse列表)返回:将列表元素根据顺序颠倒过来的列表16(subst新项旧项列表)返回:替换新旧列表后的列表五、字符串、字符、文件处理函数l(ascii字符串)返回:字符串第一个字符的?ASCII?码2(chr整数)返回:整数所对应的ASCII单一字符串3(close文件名称)关闭文件4(open文件名模式)返回:打开文件代码,准备读取或写入信息5(read字符串)返回:列表中的字符串的第一组元素6(read-char[文件代码])返回:通过键盘或文件中读取单一字符7(read-line[文件代码])返回:经由键盘或文件中读取一行字符串8(strcase字符串[字样])返回:转换字符串大小写9(strcat字符串1字符串2…)返回:将各字符串合并为一个字符串10(strlen字符串)返回:字符串构成的字符数(即字符串长度)11(substr字符串起始长度)返回:取出于字符串‘12(wcmatch字符串格式)返回:T或nil,将字符串与通用字符进行比较13(write-char数值[文件代码])返回:将一ASCII字符写到文件或屏幕14(write-line字符串[文件代码])返回:将字符串写到文件或屏幕上六、等待输入功能函数l(getangle[基点][提示])请求输入十进制角度数值,响应一个弧度值提示及参考点可有可无2(getcorner基点[提示])请求输入另一矩形框对角点坐标3(getdist[基点][提示])请求输入一段距离4(getint[提示])请求输入一个整数值5(getkword[提示]请求输入?关键词?6(getorient[基点][提示])请求输入十进制角度,响应一弧度值不受angbase、angdir影响7(getPoint[基点][提示])请求输入一个点的坐标8(getreal[提示]请求输入一个实数9(getstring[提示])请求输入一个字符串10(initget[位]字符串)设定下次getxxx函数的有效输入七、几何运算功能函数7.l(angle点1点2)取得两点的角度弧度值7.2(distance点1点2)取得两点的距离7.3(inters点1点2点3点4[模式])取得两条线的交点7.4(osnap点模式字符串)按照捕捉模式取得另一坐标点7.5(polar基点弧度距离)按照极坐标法取得另一坐标点7.6(textbox对象列表)取得文字字符串的两个对角点坐标八、对象处理功能函数8.l(entdel对象名称)删除或取消删除对象8.2(entget对象名称[应用程序列表])取出对象名称的信息列表8.3(entlast)取出图形信息中的最后一个对象8.4(entmake对象列表)建立一个新的对象列表8.5(entmod对象列表)根据更新的信息列表更新屏幕上元体8.6(entnext[对象名称])找寻图面中的下一个对象8.7(entsel[提示])请求选取一个对象,响应包含对象名称及选点坐标的列表;8.8(entupd对象名称)更新屏幕上复元体图形8.9(handent图码)返回:图码的元体名称8.10(nentsel[提示])返回:BLOCK所含副元体对象信息列表8.11(nentselp[提示][点])返回:BLOCK所含副元体对象信息似4*4矩形表示)九、选择集、符号表处理函数9.l(ssadd[对象名称][选择集])将对象加入选择集或建立一新选择集9.2(ssdel对象名称选择集)将对象自选择集中移出9.3(ssget[模式][点1][点2]取得一个选择集9.4(ssget?X?[过滤列表])取得根据过滤列表所指定范围的选择集9.5(sslenth选择集)计算选择集的对象个数9.6(ssmemb对象名称选择集)响应对象名称是否包含于选择集内9.7(ssname选择集索引值)根据索引值取出选择集中的对象名称9.8(tblnext符号表名称[T])检视符号表,有效的符号表:?LAYER?、?LTYPE?、?VIEW?、STYLE?、?BLOCK?9.9(tblsearch符号表名称符号)在符号表中搜寻符号十、AutoCAD相关查询、控制功能函数10.l(command?AutoCAD命令?…)超重量级函数,调用执行AutoCAD命令10.2(findfile文件名)返回:该文件名的路径及文件名10.3(getfiled标题内定档名扩展名旗号)通过标准AutoCAD文件对话DCL 对话框获得文件10.4(getenv?环境变量?)取得该环境变量的设定值,以字符串表示10.5(getvar?系统变量?)取得该系统变量的设定值,以字符串表示10.6(setvar?系统变量?值)设定该系统变量的值10.7(regapp应用类项)将目前的AutoCAD图形登记为一个应用程序名称十一、判断式、循环相关功能函数11.1(If<比较式><表达式1>[表达式2]检算比较式结果,如果为真,执行<表达式1>,否则执行<表达式2>11.2(repeat次数[<表达式><表达式>…])重复执行N次表达式11.3(While<比较式><表达式>…)当条件成立则执行表达式内容11.4(cond<比较式1><表达式1>多条件式的if整合功能<比较式2><表达式2><比较式3><表达式3>)11.5(prong表达式1表达式2…)连接其中的表达式为一组,常用于配合if、cond等函数十二、函数处理、定义、追踪与错误处理功能函数12.l(*error*字符串)程序错误时的警示信息12.2(alert字符串)以对话框式显示出警告字符串12.3(apply功能函数列表)将功能函数与列表结合后执行12.4(defun名称自变量列表表达式_.)自定函数或子程序12.5(eval表达式)返回:表达式的执行结果12.6(exit)强制退出目前的应用程序12.7(lambda自变量表达式)定义未命名的函数12.8(progn表达式1表达式2…)连接其内的表达式为一组,常用于配合if、cond等函数12.9(quit)强制退出目前的应用程序12.10(tablet代码[列1列2列3方向])取用或建立对数字板的校调12.11(trace函数…)对函数设定追踪标记,辅助检错12.12(untrace函数…)对函数设定解除追踪标记十三、显示、打印控制功能函数l(gfaphscr)作图环境切换到图形画面2(grclear)暂时清除模前的屏幕画面3(grdraw起点终点颜色[亮显])暂时性的画出一条线4(grread[追踪])由输入设备读取追踪值5(grtext位置字符串[亮显])将字符串显示在状态列或屏幕菜单上6(grvecs向量列表[转置矩阵])暂时性的画出多条线7(menucmd字符串);提供在AlltOLISP中调用各菜单8(Prinl[表达式[文件代码]]将表达式打印于命令区或已打开的文件句柄字符则以?\?为前缀展开9(pinc[表达式[文件代码]]除句柄字符则不以?\?为前缀展外开其余同Prinl10(print[表达式[文件代码]]除表达式会往下一新行列出,及空一格外其余同prinl11(prompt信息)将信息显示于屏幕的命令区,并随后响应一个nil信息12(redraw[对象名称[模式]])重绘整张图或根据对象名称重绘该图形13(terpri)在屏幕上显示新列14(textscr)作图环境切换到文字画面15(textpage)清除文字画面文字类似DOS的cls命令16(vports)返回:窗口组态列表十四、符号、元素、表达式处理功能函数l(atom元素)如果元素不是列表,响应T,否则为nil2(atoms-family格式闲号列表])返回:一组己定义函数的符号列表3(boundp表达式)返回:T或nil,响应表达式是否有值存在4(minusp元素)返回:T或n儿元素是否为负值5(not元素)返回:T或n儿判定元素是否为ni16(null元素)返回:T或nil判定元素是否被赋予nil值7(numberp元素)返回:T或nil,元素是否为整数或实数8(quote表达式)响应表达式未检算前状态,同?‘?功能9(set符号表达式)将表达式结果设定给带单引号’符号10(setq符号1表达式1[符号2表达式2]…)设定表达式结果给各符号11(type元素)返回:元素的信息型态12(zerop元素)返回:T或nil,元素是否为0值十五、ADS、ARX、AutoLISP加载与卸载函数15.l(ads)返回:目前加载ADS程序列表15.2(arx)返回:目前加载ARX程序列表15.3(arxload应用程序[出错处理]))返回:加载ARX程序15.4(arxunload应用程序[出错处理]))返回:卸载ARX程序15.5(ver)返回:目前AutoLISP版本字符串15.6(loadLSP文件名[加载失败])加载AutoLISP文件(*.lsp) 15.7(xload应用程序[错处理])加载ADS应用程序15.8(xunloa应用程序[出错处理])卸载ADS应用程序十六、内存空间管理函数l(alloc数值)以节点数值设定区段大小2(expand数值)以区段数值配置节点空间3(gc)强制收回废内存4(mem)显示目前的内存使用状态5(xdroom对象名称)返回对象扩展信息允许使用的内存空间6(xdsize列表)返回对象扩展信息所占用的内存空间十七、其它重要的功能函数l(acad_colordlg颜色码旗号)显示出标准AutoCAD颜色选择对话框2(acad_helpdlg求助文件名主题)显示出标准AutoCAD求助对话框3(acad_strlsort字符串列表)作字符串列表排序4(bherrs)取得bhatch与bpcly失败所产生的错误信息5(bhatch点[选择集[向量]])根据Pickpoint选点方式调用bhatch命令,绘制选集区域的剖面线6(bpoly点[选择集[向量]])根据Pickpoint选点方式调用bpoly 命令并产生一定域Polyline7(cal计算式字符串)执行如CAL计算功能十八、ADS、ARX外部定义的3D函数18.1(align自变量1自变量2....)执行如ALIGN命令各选项顺序18.2(c:3dsin模式3DS文件名)导入3DS文件18.3(C:3dsout模式3DS文件名)输出3DS文件18.4(c:background模式[选项])设定渲染背景18.5(C:fog模式[选项])设定渲染的雾效果18.6(C:light模式[选项])设定渲染的灯光控制18.7(c:lsedit模式【选项1】设定渲染的景物控制18.8(C:lslib模式[选项])管理景物图库18.9(c:matilb模式材质材质库名)管理材质数据库18.10(c:mirror3d自变量1自变量2……)执行如MIRROR3D 命令18.11(C:psdrap模式)根据模式设定值(0或1),传唤psdrap 命令18.12(C:psfill对象名称图案名称[自变量1[自变量2]])以POStSCript 图案填满18.13(c:psin文件名位置比例)插入一个Postscript(*.eps)文件18.14(c:render[渲染文件])执行渲染效果18.15(C:rfileopt格式自变量1自变量2自变量3…)设定执行渲染选项18.16(c:replay影像文件名影像类别[选项])展示影像文件TGA、BMP、TIF18.17(C:rmat模式选项)控管材质建立、贴附、编辑、分离18.18(c:rotate3d自变量1自变量2…)执行如ROTATE3D命令各选项顺序18.19(C:rpref模式选项[设定])渲染环境设定18.20(c:saveimg影像文件名影像类别[选项])储存图像文件TGA、BMP、TIF18.21(c:scene模式[选项])SCENE场景管理18.22(C:setuv模式选集自变量1自变量2…)SETUV贴图模式管理18.23(C:showmat自变量1)显示对象的材质贴附信息18.24(C:solprof自变量1自变量工..)建立3D实体的轮廓影像18.25(C:StatS[渲染信息文件])显示渲染信息统计信息十九、ADS、ARX外部定义的数据库相关函数19.l(c:aseadmin自变量1自变量2…)管理外部数据库19.2(c:aseexportt自变量1自变量2…)输出信息19.3(c:aselinks自变量1自变量2…)连接对象与信息19.4(c:aserow自变量1自变量2…)管理外部信息表格19.5(c:aseselect自变量1自变量2…)建立外部信息与对象选集19.6(c:asesqled自变量1自变量2…)执行SQL程序。
VLISP调用EXCEL常用公共函数
![VLISP调用EXCEL常用公共函数](https://img.taocdn.com/s3/m/1cc567b669eae009591becbe.png)
;;;;;;;;此為經整理過后一些VLISP調用EXCEL常用公共函數;;;;;;;;;;;; ;;;;;;;;此為私人函數未經許可請勿............................... ;;;;;;;;開發:朱衛星 2005/02/22 rev01............................ ;;;;;;;;it's the first!ok!used in acad at least rev. 2000;;;;;;; (Defun vlxls-variant->list (VarX / Run Item Rtn)(setq Run T)(while Run(cond ((= (type VarX) 'SAFEARRAY)(setq VarX (vlax-safearray->list VarX)))((= (type VarX) 'VARIANT)(if (member (vlax-variant-type VarX) (list 5 4 3 2))(setq VarX (vlax-variant-change-type Varx vlax-vbString)))(setq VarX (vlax-variant-value VarX)))(t (setq Run nil))))(cond ((= (type VarX) 'LIST)(foreach Item VarX(setq Item (vlxls-variant->list Item) Rtn (append Rtn (list Item)) )))((= VarX nil) (setq Rtn ""))(t (setq Rtn VarX)))Rtn)(Defun vlxls-color-ECI->truecolor (Color / Rtn)(if (setq Rtn (cdr (assoc Color *xls-color*)))(setq Rtn (nth 1 Rtn)))(if (null Rtn)(setq Rtn 16711935))Rtn);;;EXAMPLE:;;;(vlxls-color-eci->truecolor 0)return: 16711935;;;(vlxls-color-eci->truecolor 1)return: 0;;;(vlxls-color-eci->truecolor 12)return: 8355584;;;(vlxls-color-eci->truecolor 120)return: 16711935(Defun vlxls-color-eci->aci (Color / Rtn)(if (null (setq Rtn (cdr (assoc Color *xls-color*))))(setq Rtn 256)(setq Rtn (nth 0 Rtn)))Rtn);;;EXAMPLE:;;;(vlxls-color-eci->aci 0)return: 256;;;(vlxls-color-eci->aci 1)return: 18;;;(vlxls-color-eci->aci 12)return: 56;;;(vlxls-color-eci->aci 120)return: 256(Defun vlxls-color-aci->eci (Color / Item Rtn)(foreach Item *xls-color*(if (= (nth 1 Item) Color)(setq Rtn (car Item))))(if (null Rtn)(setq Rtn 0))Rtn);;;Examples:;;;(vlxls-color-aci->eci 0)return: 0;;;(vlxls-color-aci->eci 1)return: 3;;;(vlxls-color-aci->eci 12)return: 0;;;(vlxls-color-aci->eci 120)return: 0(Defun vlxls-color-aci->truecolor (aci)(vlxls-color-eci->truecolor (vlxls-color-aci->eci aci)));;;Examples:;;;(vlxls-color-aci-> truecolor 0) return: 16711935;;;(vlxls-color-aci->truecolor 1) return: 16711680;;;(vlxls-color-aci-> truecolor 12)return: 16711935;;;(vlxls-color-aci-> truecolor 120)return: 16711935;;;OK!NOW LET'S GO! START EXCEL.APPLICATION!!............;;;before use these program you should install "Microsoft Excel" in your computer!! ;;;if not,you will recicieve an error messege!!;;;such as "warning:........."! ZWX 2005/02/22 COPYRIGHT .....(Defun vlxls-app-Init (/ OSVar GGG Olb8 Olb9 Olb10 TLB Out msg msg1 msg2) ;;;;;;;;;;該程序實現了初始化EXCEL應用程序!(if *Chinese*(setq msg "\n 初始化微軟Excel "msg1 "\042初始化Excel失敗\042"msg2 (strcat "\042 警告""\n ====""\n 無法在您的計算机上檢測到微軟Excel 軟件""\n 如果您确認已經安裝Excel, 請發送電子郵""\n 件到yota@獲取更多的解決方案\042"))(setq msg "\n Initializing Microsoft Excel "msg1 "\042Initialization Error\042"msg2 (strcat "\042 WARNING""\n =======""\n Can NOT detect Excel97/200X/XP in your computer" "\n If you already have Excel installed, please email""\n us to get more solution via yota@\042")))(if (null msxl-xl24HourClock)(progn (if (and (setq GGG (vl-registry-read"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\Excel.EXE""Path"))(setq GGG (strcase (strcat GGG "Excel.EXE"))))(progn (foreach OSVar (list "SYSTEMROOT" "WINDIR""WINBOOTDIR" "SYSTEMDRIVE" "USERNAME" "COMPUTERNAME" "HOMEDRIVE" "HOMEPATH" "PROGRAMFILES") (if (vl-string-search (strcat "%" OSVar "%") GGG)(setq GGG (vl-string-subst (strcase (getenv OSVar))(strcat "%" OSVar "%")GGG))))(setq Olb8 (findfile (vl-string-subst "EXCEL8.OLB" "EXCEL.EXE" GGG))Olb9 (findfile (vl-string-subst "EXCEL9.OLB" "EXCEL.EXE" GGG))Olb10 (findfile (vl-string-subst "EXCEL10.OLB" "EXCEL.EXE" GGG))) (cond ((= (vl-filename-base (vl-filename-directory GGG))"OFFICE11")(setq TLB GGG Out "2003"))((= (vl-filename-base (vl-filename-directory GGG))"OFFICE10")(setq TLB GGG Out "XP"))(Olb9 (setq TLB Olb9 Out "2000"))(Olb8 (setq TLB Olb8 Out "97"))(t (setq Out "Version Unknown")))(if TLB (progn (princ (strcat MSG Out "..."))(vlax-import-type-library:tlb-filename TLB:methods-prefix "msxl-":properties-prefix "msxl-":constants-prefix "msxl-"))))(progn (if vldcl-msgbox(vldcl-msgbox "x" msg1 msg2)(alert (read msg2)))(exit)))))msxl-xl24HourClock);;;Examples:;;;(vlxls-app-init) return: 33(Defun vlxls-app-New (UnHide / Rtn);;;; 該程序實現功能:新建一個excel格;;;;;;;;;; THIS PROGRAM CAN BUILD A NEW EXCELFILE(if (vlxls-app-init)(progn(if *Chinese* (princ "\n 新建微軟Excel工作表...")(princ "\n Creating new Excel Spreadsheet file...")) ion"))(progn (vlax-invoke-method(vlax-get-property Rtn 'WorkBooks)'Add)(if UnHide (vla-put-visible Rtn 1)(vla-put-visible Rtn 0))))))Rtn);;;Examples:;;;(setq *xlapp* (vlxls-app-new T)) return: #(Defun vlxls-app-open(XLSFile UnHide / ExcelApp WorkSheet Sheets ActiveSheet Rtn) ;;;function: this program can open an excelfile(setq XLSFile (strcase XLSFile))(if (null (wcmatch XLSFile "*.XLS"))(setq XLSFile (strcat XLSFile ".XLS")))(if (and (findfile XLSFile)(setq Rtn (vlax-get-or-create-object "Excel.Application")))(progn (vlax-invoke-method (vlax-get-property Rtn 'WorkBooks)'Open XLSFile)(if UnHide(vla-put-visible Rtn 1)(vla-put-visible Rtn 0))))Rtn);;;Examples:;;;(setq *xlapp* (vlxls-app-open “” T)) e #(Defun vlxls-app-save (xlapp);;;;保存文件(equal (vlax-invoke-method(vlax-get-property Xlapp "ActiveWorkbook")"Save"):vlax-true));;;Examples:;;;(vlxls-app-save *xlapp*) return: T(Defun vlxls-app-saveas (xlapp Filename / Rtn);;;另存文件(if (null filename)(setq filename (strcat (getvar "dwgprefix") "XLS.XLS")))(if (null (wcmatch (setq filename (strcase Filename)) "*.XLS")) (setq filename (strcat filename ".XLS")))(if (findfile Filename)(vl-file-delete (findfile Filename)))(vlax-invoke-method(vlax-get-property Xlapp "ActiveWorkbook")"SaveAs"Filenamemsxl-xlNormal"""":vlax-False:vlax-Falsenil)(findfile Filename));;;Examples:;;;(vlxls-app-saveas *xlapp* nil) return: “”;;;(vlxls-app-saveas *xlapp* “”) return: “”;;;(vlxls-app-saveas *xlapp* nil) return: NIL(Defun vlxls-app-quit (ExlObj SaveYN);;退出應用程序(if SaveYN(vlax-invoke-method(vlax-get-property ExlObj "ActiveWorkbook")'Close)(vlax-invoke-method(vlax-get-property ExlObj "ActiveWorkbook")'Close:vlax-False))(vlax-invoke-method ExlObj 'QUIT)(vlax-release-object ExlObj)(setq ExlObj nil)(gc));;;Examples:;;;(vlxls-app-quit *xlapp* nil) return: nil(Defun vlxls-app-kill (SaveYN / ExlObj);;;強行清除所有EXCEL應用程序(while (setq ExlObj (vlax-get-object "Excel.Application"))(vlxls-app-quit ExlObj SaveYN)));;;Examples:;;;(vlxls-app-kill T) return: nil(Defun vlxls-app-autofit (xlapp / sh act Rtn);;;存儲格自動調整大小(setq act (vlxls-Sheet-Get-Active xlapp))(foreach sh (append (vl-remove act (vlxls-sheet-get-all Xlapp))(list act))(setq Rtn (variant-value (msxl-autofit(msxl-get-columns(msxl-get-Cells(vlxls-sheet-get-usedrange xlapp sh)))))))(equal Rtn :vlax-true));;;Examples:;;;(vlxls-app-autofit *xlapp*) return: T;;;(vlxls-app-autofit *xlapp*) return: NIL(Defun vlxls-sheet-get-all (xlapp / SH Rtn);;;;取得所有應用的頁(vlax-for SH (vlax-get-property Xlapp "sheets")(setq Rtn (cons (vlax-get-property sh "Name") Rtn)))(reverse Rtn));;;Examples:;;;(vlxls-sheet-get-all *xlapp*) e ("Sheet1" "Sheet2" "Sheet3")(Defun vlxls-Sheet-Get-Active (xlapp);;;;返回當前應用的頁(vlax-get-property (msxl-get-ActiveSheet Xlapp) 'name));;;Examples:;;;(vlxls-sheet-get-active *xlapp*) return: "Sheet2"(Defun vlxls-sheet-delete (xlapp Name / sh Rtn);;;刪除頁(setq Rtn (vlxls-sheet-get-all Xlapp))(vlax-for sh (vlax-get-property Xlapp "sheets")(if (= (vlax-get-property sh "Name") Name)(vlax-invoke-method sh "Delete")))(not (equal Rtn (vlxls-sheet-get-all Xlapp))));;;Examples:;;;(vlxls-sheet-delete *xlapp* “Sheet1”) return: T;;;(vlxls-sheet-delete *xlapp* “UnExistingSheet”) return: NIL(Defun vlxls-sheet-rename (New Old Xlapp / sh Rtn);;;給頁重新命名(if (null old)(setq old (msxl-get-name (msxl-get-activesheet Xlapp))))(if (member New (vlxls-sheet-get-all Xlapp))(setq Rtn nil)(progn (vlax-for sh (vlax-get-property Xlapp "sheets")(if (= (msxl-get-name sh) Old)(msxl-put-name sh New)))(setq Rtn (equal New (vlax-get-property (msxl-get-ActiveSheet Xlapp) 'name)))))Rtn);;;Examples:;;;(vlxls-sheet-rename “New”“Sheet1” *xlapp*) return: T;;;(vlxls-sheet-rename “New” NIL *xlapp*) return: T;;;(vlxls-sheet-rename “Sheet3” NIL *xlapp*) return: NIL;;;(vlxls-sheet-rename “Sheet2”“Sheet1” *xlapp*) return: NIL;;;(vlxls-sheet-rename “Sheet2”“UnExistSheet” *xlapp*) return: NIL(Defun vlxls-sheet-add (xlapp Name / Rtn);;;增加頁(if (member name (vlxls-sheet-get-all xlapp))(setq Rtn nil)(progn (vlax-put-property(vlax-invoke-method(vlax-get-property Xlapp "sheets") "Add")"name" Name)(setq Rtn (equal (vlxls-sheet-get-active xlapp) name))))Rtn);;;Examples:;;;(vlxls-sheet-add *xlapp* “Sheet1”) return: T;;;(vlxls-sheet-add *xlapp* NIL) return: T;;;(vlxls-sheet-add *xlapp* “NewSheet”) return: NIL(Defun vlxls-sheet-put-active (xlapp Name / sh);;;設置當前使用頁(if (null (vlxls-sheet-add xlapp name))(vlax-for sh (vlax-get-property Xlapp "sheets")(if (= (vlax-get-property sh "Name") Name)(vlax-invoke-method sh "Activate"))))(equal (vlxls-sheet-get-active xlapp) name));;;Examples:;;;(vlxls-sheet-put-active *xlapp* “Sheet1”) return: T;;;(vlxls-sheet-put-active *xlapp* “NewSheet”) return: T(Defun vlxls-sheet-get-UsedRange (xlapp Name / sh Rtn);;;取得使用頁的使用范圍(if (null Name)(setq Name (vlax-get-property (msxl-get-ActiveSheet Xlapp) 'Name)))(vlax-for sh (vlax-get-property Xlapp "sheets")(if (= (vlax-get-property sh "Name") Name)(setq Rtn (vlax-get-property sh "UsedRange"))))Rtn);;;Examples:;;;(vlxls-sheet-get-usedrange *xlapp* “Sheet1”) return: T;;;(vlxls-sheet- get-usedrange *xlapp* “NewSheet”) return: T(Defun vlxls-cellid (id / xx id1 id2 Rtn) ;;;;cell id 轉換(if (= (type id) 'list)(setq id (vlxls-rangeid id)))(setq id (strcase id))(if (null (setq xx (vl-string-search ":" id)))(setq Rtn (list id ""))(setq id1 (substr id 1 xx)id2 (substr id (+ xx 2))id1 (vlxls-rangeid id1)id2 (vlxls-rangeid id2)Rtn (list (vlxls-rangeid (list (min (car id1) (car id2))(min (cadr id1) (cadr id2))))(vlxls-rangeid (list (max (car id1) (car id2))(max (cadr id1) (cadr id2)))))))Rtn);;;Examples:;;;(vlxls-cellid ‘(3 14)) return: ("C14" "");;;(vlxls-cellid “D23”) return: ("D23" "");;;(vlxls-cellid “C12:F3”) return: ("C3" "F12");;;(vlxls-cellid “F15:G22”) return: ("F15" "G22")(Defun vlxls-rangeid (id / str->list list->str xid->str Rtn) ;;;;range id 轉換(Defun str->list1 (str / ii xk xv rr pos x y)(setq rr (strlen str))(foreach ii '("0" "1" "2" "3" "4" "5" "6" "7" "8" "9")(if (setq pos (vl-string-search ii str))(setq rr (min pos rr))))(setq x (substr str 1 rr)y (substr str (1+ rr)))(if (= (strlen x) 2)(setq xk (- (ascii (substr x 1 1)) 64)xv (- (ascii (substr x 2)) 64))(setq xk 0xv (- (ascii x) 64)))(list (+ (* xk 26) xv) (read y)))(Defun xid->str (IntNum / PosNum Nm-One)(setq Nm-One (1- IntNum)PosNum (/ Nm-One 26))(if (= PosNum 0)(chr (+ 65 (rem Nm-One 26)))(strcat (chr (+ 64 PosNum)) (chr (+ 65 (rem Nm-One 26))))))(Defun list->str1 (idr / x y)(setq x (car idr)y (cadr idr)x (xid->str x)y (itoa y))(strcat x y))(cond ((= (type id) 'str) (setq Rtn (str->list1 id)))((= (type id) 'list) (setq Rtn (list->str1 id))))Rtn);;;Examples:;;;(vlxls-rangeid ‘(3 14)) return: "C14";;;(vlxls-rangeid “D23”) return: (4 23);;;(vlxls-rangeid “DD23”) return: (108 23)(Defun vlxls-range-autofit (range);;自動調整范圍內存儲格(equal (vlax-variant-value(msxl-autofit(msxl-get-columns (msxl-get-Cells range)))):vlax-true));;;Examples:;;;(vlxls-range-autofit (msxl-get-range *xlapp* “C12:F15”)) return: T ;;;(vlxls-range-autofit RangeObject) return: NIL(Defun vlxls-cell-put-active (xl id / Rtn);;范圍內激活(if (= (type id) 'list)(setq id (vlxls-rangeid id)))(msxl-activate (setq Rtn (msxl-get-range xl id)))Rtn);;;Examples:;;;(vlxls-cell-put-active *xlapp* “C12:F15”) return: #;;;(vlxls-cell-put-active *xlapp* “F12”) return: #(Defun vlxls-cell-get-value (xl id);;取得范圍內值并列表(if (= (type id) 'list)(setq id (vlxls-rangeid id)))(vlxls-variant->list(msxl-get-value2 (msxl-get-range xl id))));;;Examples:;;;(vlxls-cell-get-value *xlapp* “C12”) return: “g”;;;(vlxls-cell-get-value *xlapp* “C12:C12”) return: “g”;;;(vlxls-cell-get-value *xlapp* “C12:C15”) return: (("g") ("") ("") ("")) ;;;(vlxls-cell-get-value *xlapp* “C12:F12”) return: (("g" "ds" "" ""));;;(vlxls-cell-get-value *xlapp* “C12:F15”) return: (("g" "ds" "" "") ("" "" "g" "") ("" "" "" "") ("" "" "" ""))(Defun vlxls-cell-put-value (xl id Data / vllist-explode idx xx yy ary Rtn) ;;;;;將信息輸入區域內(Defun vllist-explode1 (lst)(cond ((not lst) nil)((atom lst) (list lst))((append (vllist-explode1 (car lst))(vllist-explode1 (cdr lst))))))(if (null id)(setq id "A1"))(if (= (type id) 'list)(setq id (vlxls-rangeid id)))(if (= (type (car Data)) 'LIST)(setq ARY (vlax-make-safearrayvlax-vbstring(cons 0 (1- (length Data)))(cons 1 (length (car Data))))XX (1- (length (car Data)))YY (1- (length Data)))(setq ARY (vlax-make-safearrayvlax-vbstring(cons 0 1)(cons 1 (length Data)))XX (1- (length Data))YY 0))(if (= xx yy 0)(msxl-put-value2(setq Rtn (msxl-get-range xl id))(car (vllist-explode1 data)))(progn(setq id (vlxls-cellid-calc id xx yy))(msxl-put-value2(setq Rtn (msxl-get-range xl id))(vlax-safearray-fill ary data))))Rtn);;;Examples:;;;(vlxls-cell-put-value *xlapp* “C12”“xx”) return: #;;;(vlxls-cell-put-value *xlapp* “C12:F3”“xx”) return: #;;;(vlxls-cell-put-value *xlapp* “C12:D13”‘((“zz”“xx”)(“xx”“zz”))) ereturn:(Defun vlxls-cellid-calc (id x y / idx) ;;;計算范圍(setq id (car (vlxls-cellid id))idx (vlxls-rangeid id)x (+ x (car idx))x (if (< x 1)1x)y (+ y (cadr idx))y (if (< y 1)1y)idx (vlxls-rangeid (list x y))id (vlxls-cellid (strcat id ":" idx))id (strcat (car id) ":" (cadr id)))id);;;Examples:;;;(vlxls-cellid-calc “C12” 2 20) return: "C12:E32";;;(vlxls-cellid-calc ‘(2 23) 2 -120) return: "B1:D23"(Defun vlxls-get-row-value (xl id len / vllist-explode Rtn);;取出單列的內容(Defun vllist-explode4 (lst)(cond ((not lst) nil)((atom lst) (list lst))((append (vllist-explode4 (car lst))(vllist-explode4 (cdr lst))))))(if (> len 0)(setq id (vlxls-cellid-calc id (1- len) 0))(setq id (vlxls-cellid-calc id (1+ len) 0)))(setq Rtn (vllist-explode4 (vlxls-cell-get-value xl id)))Rtn);;;Examples:;;;(vlxls-get-row-value *xlapp* “C12” 2) return: ("zz" "xxx");;;(vlxls-get-row-value *xlapp* “C12” -20) return: ("" "" "zz")(Defun vlxls-put-row-value (xl id data flg / Rtn);;;單列輸入信息并且flg為t則自動調整尺寸(if (= (type data) 'str)??? (setq data (list data))??? )(setq?? id (car (vlxls-cellid id))id (vlxls-cellid-calc id (1- (length data)) 0))(setq Rtn (vlxls-cell-put-value xl id (list data)))(if flag(vlxls-range-autofit??? rtn??? ))Rtn);;;Examples:;;;(vlxls-put-row-value *xlapp* “C12”“abc”) return:#;;;(vlxls-put-row-value *xlapp* ‘(12 3) “abc”) return:#;;;(vlxls-put-row-value *xlapp* “C12”‘("zz" "xxx")) return:#;;;(vlxls-put-row-value *xlapp* ‘(12 3) ‘("zz" "xxx")) return:#(Defun vlxls-get-column-value (xl id len / vllist-explode Rtn);;取出單欄信息(Defun vllist-explode3?????? (lst)??? (cond ((not lst) nil)((atom lst) (list lst))((append (vllist-explode3 (car lst))?? (vllist-explode3 (cdr lst))?? )?? ))??? )(setq id (car (vlxls-cellid id)))(if (> len 0)??? (setq id (vlxls-cellid-calc id 0 (1- len)))??? (setq id (vlxls-cellid-calc id 0 (1+ len)))??? )(setq Rtn (vllist-explode3 (vlxls-cell-get-value xl id)))Rtn);;;Examples:;;;(vlxls-get-column-value *xlapp* “C12” 2) return: ("zz" "sdfsdf");;;(vlxls-get-column-value *xlapp* “C12” -20) return: ("" "" "xxx" "xxx" "xxx" "xxx" "xxx" "xxx" "xxx" "xxx" "xxx" "zz")(Defun vlxls-put-column-value (xl id data flg / item Rtn);;;單欄輸入信息并且flg 為t則自動調整尺寸(if (= (type data) 'str)??? (setq data (list data))??? )(setq?? id (car (vlxls-cellid id))id (vlxls-cellid-calc id 0 (1- (length data))))(foreach item??? data?? (setq Rtn (cons (list item) Rtn)))(setq Rtn (vlxls-cell-put-value xl id (reverse Rtn)))(if flg?? (vlxls-range-autofit??? rtn?? ))Rtn);;;Examples:;;;(vlxls-put-column-value *xlapp* “C12”“abc”) return: #;;;(vlxls-put-column-value *xlapp* ‘(12 3) “abc”) return: #;;;(vlxls-put-column-value *xlapp* “C12”‘("zz" "xxx")) return: # ;;;(vlxls-put-column-value *xlapp* ‘(12 3) ‘("zz" "xxx")) return: #(Defun vlxls-cell-get-aci (xl id)(vlxls-color-eci->aci??? (vlax-variant-value????? (msxl-get-colorindex(msxl-get-interior (msxl-get-range xl id)))????? )??? ));;;Examples:;;;(vlxls-cell-get-aci *xlapp* “C12”) return:256;;;(vlxls-cell-get-aci *xlapp* ‘(12 3)) return:15(Defun vlxls-cell-put-aci (xl id aci / Rtn)(if (null aci)??? (msxl-put-colorindex????? (msxl-get-interior (setq Rtn (msxl-get-range xl id))) ????? (vlax-make-variant -4142)????? )??? (msxl-put-colorindex????? (msxl-get-interior (setq Rtn (msxl-get-range xl id))) ????? (vlxls-color-aci->eci aci)????? )??? )Rtn);;;Examples:;;;(vlxls-cell-put-aci *xlapp* “C12” 6) return: #;;;(vlxls-cell-put-aci *xlapp* “C12” nil) return: #(Defun vlxls-text-get-aci (xl id)(vlxls-color-eci->aci??? (vlax-variant-value????? (msxl-get-colorindex(msxl-get-font (msxl-get-range xl id)))????? )??? ));;;Examples:;;;(vlxls-text-get-aci *xlapp* “C12”) return: 256;;;(vlxls-text-get-aci *xlapp* ‘(12 3)) return: 15(Defun vlxls-text-put-aci (xl id aci / Rtn)?? (if (null aci)???? (msxl-put-colorindex?????? (msxl-get-font (setq Rtn (msxl-get-range xl id)))?????? (vlax-make-variant -4105)?????? )???? (msxl-put-colorindex?????? (msxl-get-font (setq Rtn (msxl-get-range xl id)))?????? (vlxls-color-aci->eci aci)?????? )???? )Rtn);;;Examples:;;;(vlxls-text-put-aci *xlapp* “C12” 6) return: #;;;(vlxls-text-put-aci *xlapp* “C12” nil) return: #(Defun vlxls-text-get-prop(xl id / Cell Font DXF1 DXF7 DXF40 DXF72 DXF62 DXF420 Rtn) ;;;;取得單元格文字相關信息(setq?? id???? (car (vlxls-cellid id))cell?? (msxl-get-range xl id)font?? (msxl-get-font cell)DXF7?? (vlax-variant-value (msxl-get-name Font))DXF40 (vlax-variant-value (msxl-get-size Font))DXF72 (vlax-variant-value (msxl-get-HorizontalAlignment Cell)?? )DXF72 (cond ((= DXF72 -4152) 11)?????? ((= DXF72 -4108) 10)?????? (t 9)?????? )DXF62 (vlxls-color-eci->aci?? (vlax-variant-value (msxl-get-colorIndex Font))?? )DXF420 (vlxls-color-eci->truecolor?? (vlax-variant-value (msxl-get-colorIndex Font)))Rtn??? (list (cons 0 (strcase id))?????? (cons 7 DXF7)(cons 40 DXF40)(cons 62 DXF62)?????? (cons 72 DXF72)(cons 420 DXF420))));;;Examples:;;;(vlxls-text-get-prop *xlapp* “C12”) return:((0 . "C12") (7 . "Arial") (40 .12.0) (62 . 256) (72 . 9) (420 . 16711935));;;(vlxls-text-get-prop *xlapp* ‘(2 10)) return:((0 . "B10") (7 . "Arial") (40 .12.0) (62 . 256) (72 . 11) (420 . 16711935))(Defun vlxls-cell-get-prop(xl id / range left top width height dxf10 Rtn) ;;;;取得單元格信息(if (vlxls-cell-merge-p xl id)???? (setq id (vlxls-cell-get-mergeid xl id))??? )(setq?? range (msxl-get-range xl id)left?? (vlax-variant-value (msxl-get-left Range))top??? (vlax-variant-value (msxl-get-top Range))width (vlax-variant-value (msxl-get-width Range))height (vlax-variant-value (msxl-get-height Range))dxf10 (list left top)Rtn??? (list (cons 0 (strcase id))?????? (cons 1 (vlxls-cell-get-value xl id))?????? (cons 10 dxf10)?????? (cons 41 width)?????? (cons 42 height)?????? (cons -1 (vlxls-text-get-prop xl id))?????? ))Rtn);;;Examples:;;;(vlxls-cell-get-prop *xlapp* “C12:F14”) return:((0 . "C12:F14") (1 ("zz" "xxx" "xxx" "xxx") ("sdfsdf" "sdfsdf" "sdfsdf" "sdfsdf");;;????????? ("sdfsdf" "sdfsdf" "sdfsdf" "sdfsdf")) (10 108.0 156.75) (41 . 156.0) (42 . 42.75) (-1 (0 . "C12") (7 . "Arial");;;????????? (40 . 12.0) (62 . 256) (72 . 9) (420 . 16711935)));;;(vlxls-cell-get-prop *xlapp* “B8”) return: ((0 . "B8") (1 . "sdg") (10 54.0 99.75) (41 . 54.0) (42 . 14.25) (-1 (0 . "B8");;;??? (7 . "Arial") (40 . 12.0) (62 . 256) (72 . 10) (420 . 16711935)))(Defun vlxls-cell-border (xl id flg / bdr);;;外框線(if flg??? (msxl-put-value????? (msxl-get-borders(msxl-get-range xl id)????? 1????? )??? (msxl-put-value????? (msxl-get-borders(msxl-get-range xl id))????? 'linestylemsxl-xlnone????? )??? ));;;Examples:;;;(vlxls-cell-border *xlapp* “C12:F14” T) return:NIL ;;;(vlxls-cell-border *xlapp* “B8” NIL) return:NIL(Defun vlxls-cell-merge????? (xl id / vllist-explode Val Rtn) ;;;;;;;;;合并單元格(Defun vllist-explode2?????? (lst)??? (cond ((not lst) nil)((atom lst) (list lst))((append (vllist-explode2 (car lst))?? (vllist-explode2 (cdr lst))?? )?? ))??? )(setq val (vllist-explode2 (vlxls-cell-get-value xl id))) (while (vl-position "" val)??? (setq val (vl-remove "" val))??? )(setq?? val (car val)Rtn (msxl-get-range xl id))(msxl-clear Rtn)(msxl-merge Rtn nil)(msxl-put-value2 Rtn Val)(msxl-put-HorizontalAlignment Rtn -4108)Rtn);;;Examples:;;;(vlxls-cell-merge *xlapp* “C12:F14”) return: #(Defun vlxls-cell-unmerge (xl id / Rtn);;;取消合并單元格(if (vlxls-cell-merge-p xl id)??? (progn????? (vlax-invoke-method (msxl-get-range xl id) 'unmerge) ????? (setq Rtn (msxl-get-range xl id))????? )??? )Rtn);;;Examples:;;;(vlxls-cell-unmerge *xlapp* “C12:F14”) return:#;;;(vlxls-cell-unmerge *xlapp* “E14”) return:#(Defun vlxls-cell-merge-p (xl id);;;判斷單元格是否合并(equal (vlax-variant-value?? (msxl-get-mergecells (msxl-get-range xl id))?? ):vlax-true));;;Examples:;;;(vlxls-cell-merge-p *xlapp* “C12:F14”) return:T;;;(vlxls-cell-merge-p *xlapp* “E14”) return:NIL(Defun vlxls-cell-get-mergeid (XL ID / Rtn);;;取得單元格合并的范圍(if (vlxls-cell-merge-p xl id)??? (progn????? (msxl-select (msxl-get-range xl id))????? (setq Rtn (vlxls-range-getid (msxl-get-selection xl))) ????? )??? )Rtn);;;Examples:;;;(vlxls-cell-get-mergeid *xlapp* “C12:F14”) return: "B9:G19”;;;(vlxls-cell-get-mergeid *xlapp* “E14”) return: "A11:G19(Defun vlxls-range-getID (range / col row dx dy);;;取得單元格地址(setq?? dx (vlxls-get-property range "MergeArea.Rows.Count")dy (vlxls-get-property range "MergeArea.Columns.Count")row (vlxls-get-property range "MergeArea.Row")col (vlxls-get-property range "MergeArea.Column"))(strcat (vlxls-rangeid (list col row))":"(vlxls-rangeid (list (1- (+ col dy)) (1- (+ row dx))))));;;Examples:;;;(vlxls-range-getid RangeObject) return: ”C12:G19”;;;(vlxls-range-getid RangeObject) return: ”B16:B16”(Defun vlxls-range-size????? (range / xl row col rrr ccc xxx yyy);;;;取得單元范圍尺寸(setq?? xl (msxl-get-parent range)Row (msxl-get-count (msxl-get-rows Range))Col (msxl-get-count (msxl-get-columns Range))RRR (1- (msxl-get-row Range))CCC (msxl-get-column Range))(repeat Row??? (setq yyy (cons?? (vlax-variant-value(msxl-get-height(msxl-get-range??? xl??? (vlxls-rangeid (list CCC (setq RRR (1+ RRR))))??? )))????? yyy????? ))??? )(setq?? RRR (msxl-get-row Range)CCC (1- (msxl-get-column Range)))(repeat Col??? (setq xxx (cons?? (vlax-variant-value(msxl-get-width(msxl-get-range??? xl??? (vlxls-rangeid (list (setq CCC (1+ CCC)) RRR))??? )))????? xxx????? ))??? )(list (reverse xxx) (reverse yyy)));;;Examples:5 14.25 57.0 14.25))(Defun vlxls-Rangevalue->SafeArray (Data / XSub_GetXY XSub_GetMinMaxID xsub-MergeID->List??? MinID MaxID ID ID1 ID2 IDN X minid xy Y Rtn Item) ;;;;;;;;;;;;;安全數組(Defun xsub-MergeID->List1 (ID / KK ID1 ID2 IDX IDY Rtn)??? (Setq ID (strcase ID))??? (if??? (setq KK (vl-string-search ":" ID))????? (setq ID1?? (substr ID 1 KK)??? ID2 (substr ID (+ 2 KK))??? )????? (setq ID1?? ID??? ID2 ID)????? )??? (setq ID1 (vlxls-rangeid ID1)ID2 (vlxls-rangeid ID2)IDX (vlxls-rangeid(list (min (nth 0 ID1) (nth 0 ID2))????? (min (nth 1 ID1) (nth 1 ID2))????? ))IDY?? (vlxls-rangeid???? (list (max (nth 0 ID1) (nth 0 ID2))?? (max (nth 1 ID1) (nth 1 ID2))?? )???? )Rtn (list IDX IDY))??? Rtn??? )(Defun XSub_GetXY1 (ID SID / S10 S11 DX DY Rtn)??? (setq S10 (nth 0 MinID)S11 (nth 1 MinID)ID (vlxls-rangeid ID)DX (- (nth 0 ID) S10)DY (- (nth 1 ID) S11)Rtn (list DX DY))??? Rtn??? )。
VLISP函数大全
![VLISP函数大全](https://img.taocdn.com/s3/m/fc2c6e94970590c69ec3d5bbfd0a79563c1ed47a.png)
VLISP函数大全Vlisp函数功能说明vla-activate激活指定图形vla-add建立一个对象并把它加入相应的集合中vla-add3dface以给定的四个顶点建立一个3Dface对象vla-add3dmesh以给定的M和N方向的点数及M和N的点坐标值建立的自由形状的3D网格面vla-add3Dpoly以给定的坐标值阵列建立一个3D多段线vla-addarc以给定的弧的中心点、半径、起始角度以及结束弧度建立一个弧vla-addattribute以指定的性质在给定的位置建立属性定义vla-addbox建立边缘和wcs轴平行的3d长方体vla-addcircle以给定的中心点和半径建立一个圆vla-addcone建立一个底面在wcs上的xy平面上的圆锥体vla-addcustomobject建立custom对象vla-addcylinder建立一个在wcs的xy平面上的3d实体圆柱体vla-adddim3pointangular使用三点建立角度标注vla-adddimaligned建立一个对齐标注对象vla-adddimangular建立弧、两条线或圆周的角度标注vla-adddimdiametric以给定的直径上的亮点以及引线的长度建立圆周或弧的直径标注vla-adddimordinate以给定的定义点及引线端点建立坐标标注vla-adddimradial在给定的位置建立选取的对象半径标注vla-adddimrotated建立旋转的线性标注vla-addellipse以给定的中心点、主轴上的一点以及半径比在wcs的xy平面上建立一个椭圆vla-addellipticalcone以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆锥体vla-addellipticalcylinder以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆柱体vla-addextrudedsolid以给定的profile、height以及taperangle建立拉伸实体vla-addextrudedsolidalongpath以给定的轮廓以及拉伸路径建立拉伸实体vla-addfitpoint以给定的索引将拟合点加到样条曲线vla-addhatch建立一个ahrch对象vla-additems以给定的索引将拟合点加到样条曲线vla-addleader以给定的点坐标值建立引线vla-addlightweightpolyline根据顶点的列表建立一条轻多段线vla-addline建立过两点的直线vla-addmenuitem加入菜单选项到弹出菜单中vla-addminsertblock插入图块的阵列vla-addmline建立过一个点阵列的多线vla-addmtext在插入点与边界框宽度所定义的矩形中建立一个多行文字输入图元vla-addobject加入对象到具名的字典vla-addpoint在给定的位置上建立一个point对象vla-addpolyfacemesh标出顶点,建立一个多面网格vla-addpolyline从顶点的表建立一条多段线vla-addpviewport以给定的中心点、高度及宽度加入图纸空间视口vla-addraster根据已有的图像文件建立新的点阵式图像vla-addray建立通过两个唯一点的射线vla-addregion从一组图元建立面域。
VISA常用函数.doc
![VISA常用函数.doc](https://img.taocdn.com/s3/m/c6a4039955270722182ef735.png)
函数viOpenDefaultRM原型ViStatus viOpenDefaultRM (ViSession sesn );描述这个函数用来初始化一个VISA资源管理器,此函数必须要在其他任何VISA函数之前调用。
函数通过sesn参数返回一个独立的VISA资源管理器ID。
参数返回值返回值为函数运行结果,如果成功sesn返回VISA资源管理器标识符,否则返回0。
viOpen原型ViStatus viOpen (ViSession sesn, ViRsrc rsrcName, ViAccessMode accessMode, ViUInt32timeout, ViSession vi);描述连接一个指定的设备,返回一个可用于调用其他功能的连接标识符。
参数返回值返回值为函数运行结果,如果成功vi返回设备连接标识符,否则返回0。
viCl ose原型ViStatus viClose(ViSession vi ); ViStatus viClose(ViEvent vi ); ViStatus viClose(ViFindList vi );描述 关闭一个资源管理器或者设备连接,并释放内存。
参数返回值 返回值为函数运行结果。
viFindRsrc原型ViStatus viFindRsrc(ViSession sesn , ViString expr , ViPFindList findList ,ViPUInt32 retcnt , ViRsrc instrDesc );描述该函数用于查找VISA系统里与指定接口相连的资源设备。
该函数查找的与expr参数相匹配的有效资源设备。
该函数成功完成将返回与exor相匹配的资源组中的第一个资源(instrDesc),还返回一个资源组中的个数(retnt)。
另外还返回一个找到的队列句柄,可以同过调用viFindNext传入这个句柄来获得其他找到的资源。
当这个句柄不需要时必须调用viClose关闭。
lisp-excel函数
![lisp-excel函数](https://img.taocdn.com/s3/m/937031c74028915f804dc255.png)
(vlxls-app-Init) 该程序实现了初始化EXCEL应用程序(vlxls-app-New UnHide) 该程序实现功能:新建一个excel格,UnHide 为T时,显示窗体(vlxls-app-open XLSFile UnHide) 打开xlsfile文件(vlxls-app-save xlapp) 保存文件(vlxls-app-saveas xlapp Filename) 另存为文件(vlxls-app-quit xlapp SaveYN) 退出应用程序SaveYN : T/nil(vlxls-app-kill SaveYN) 强行清除所有EXCEL应用程序(vlxls-app-autofit xlapp) 存储格自动调整大小(vlxls-sheet-get-all xlapp) 取得所有应用的页(vlxls-Sheet-Get-Active xlapp) 返回当前应用的页(vlxls-sheet-delete xlapp Name) 删除页(vlxls-sheet-rename New Old Xlapp) 给页重新命名(vlxls-sheet-add xlapp Name) 增加页(vlxls-sheet-put-active xlapp Name) 设置当前使用页(vlxls-sheet-get-UsedRange xlapp Name) 取得使用页的使用范围(vlxls-cellid id) cell & id 转换(vlxls-rangeid id) range & id 转换(vlxls-range-autofit range) 自动调整范围内存储格(vlxls-cell-put-active xlapp id) 范围内激活(vlxls-cell-get-value xlapp id) 取得范围内值并列表(vlxls-cell-put-value xlapp id Data) 将信息输入区域内(vlxls-cellid-calc id x y) 计算范围(vlxls-get-row-value xlapp id len) 取出单列的内容(取的横行)(vlxls-put-row-value xlapp id data flg) 单列输入信息并且flg为t则自动调整尺寸(vlxls-get-column-value xlapp id len) 取出单栏信息(取的纵列)(vlxls-put-column-value xlapp id data flg) 单栏输入信息并且flg为t则自动调整尺寸(vlxls-cell-get-aci xlapp id) 获取单元格填充颜色(vlxls-cell-put-aci xlapp id aci) 设置单元格填充颜色aci(vlxls-text-get-aci xlapp id) 获取单元格字体颜色(vlxls-text-put-aci xlapp id aci) 设置单元格字体颜色(vlxls-text-get-prop xlapp id) 取得单元格文字相关信息(vlxls-cell-get-prop xlapp id) 取得单元格信息(vlxls-cell-border xlapp id flg) 外框线flg边框样式,0为无边框(vlxls-cell-merge xlapp id) 合并单元格(vlxls-cell-unmerge xlapp id) 取消合并单元格(vlxls-cell-merge-p xlapp id) 判断单元格是否合并,合并返回T否则nil(vlxls-cell-get-mergeid xlapp id) 取得单元格合并的范围(vlxls-range-getID range) 取得单元格地址(合并的返回合并)(vlxls-range-size range) 取得单元范围尺寸(宽度,高度,单位:磅)(vlxls-Rangevalue->SafeArray data) 构造安全数组用于exceleg: (vlxls-variant->list (vlxls-rangevalue->safearray '(("A1" . "aaa")("B4" . "ccc")))) (vlxls-ScreenUpdating-Off xlapp) 不按步骤刷新显示宏执行过程(vlxls-ScreenUpdating-On xlapp) 按步骤刷新显示宏执行过程(vlxls-ColumnWidth xlapp col width) 调整纵列宽度(vlxls-RowHeight xlapp row height) 调整横行高度(vlxls-get-cell sheet row col) 返回单元格(vlxls-put-pagesetup xlapp top bot lef rig hea fot flh flv psize horv) 设置版面flh,flv为0时激活Horv 纵向1 横向2Psize letter 1Tabloid 3Legal 5A3 8A4 9 A5 11 B4 12 B5 13 Japanese postcard 43(vlxls-Excel-cellfontname xlapp row col name) 更改单元格字体(vlxls-Excel-cellcolor xlapp row col color) 更改单元格颜色(1黑2白3红4绿5蓝6黄7品红8青) 以下表:颜色号,EXCEL颜色号,真彩色1 18 02 7 16772153 1 167116804 3 652805 5 2556 2 167769607 6 167119358 4 655359 16 832307210 96 3251211 176 12712 56 835558413 216 832319914 136 32639 159****646316 8 835571117 161 947609518 237 944956819 7 1677167 20 254 1264844721 218 629155222 11 1674431923 152 2476824 254 1361740725 176 12726 6 1671193527 2 1677696028 4 6553529 216 832319930 16 832307231 136 3263932 5 25533 140 5145534 254 1264844735 254 1363143936 51 1677710437 151 948863938 221 1675079939 191 1360511940 31 1676302441 150 310502342 132 313158443 62 948838444 40 1676288045 30 1675033646 30 1673804847 165 631796848 252 947598449 148 1238450 105 318473651 98 1203252 48 315801653 24 944947254 237 944931155 177 315816056 250 3092527(vlxls-Excel-textcolor xlapp row col color) 更改单元格字体颜色(vlxls-Excel-textsize xlapp row col size) 更改单元格字体大小(vlxls-Excel- textunderline xlapp row col underline) 更改单元格字体下划线1-无2-单线3-双线4-会计用单线5-会计用双线(vlxls-Excel-textAlignment xlapp row col hal val) 更改单元格文字对齐方式水平方式1-- 一般-4131-- 左缩排或2-4108-- 置中或3-4152-- 靠右或45 -- 填满-4130-- 水平或67-- 跨栏置中-4117-- 分散对齐或8方式-4160--靠上或1-4108--置中或2-4107--靠下或3-4130--垂直或4-4117 --分散或5。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Vlisp函数大全Vlisp函数功能说明vla-activate激活指定图形vla-add建立一个对象并把它加入相应的集合中vla-add3dface以给定的四个顶点建立一个3Dface对象vla-add3dmesh以给定的M和N方向的点数及M和N的点坐标值建立的自由形状的3D网格面vla-add3Dpoly以给定的坐标值阵列建立一个3D多段线vla-addarc以给定的弧的中心点、半径、起始角度以及结束弧度建立一个弧vla-addattribute以指定的性质在给定的位置建立属性定义vla-addbox建立边缘和wcs轴平行的3d长方体vla-addcircle以给定的中心点和半径建立一个圆vla-addcone建立一个底面在wcs上的xy平面上的圆锥体vla-addcustomobject建立custom对象vla-addcylinder建立一个在wcs的xy平面上的3d实体圆柱体vla-adddim3pointangular使用三点建立角度标注vla-adddimaligned建立一个对齐标注对象vla-adddimangular建立弧、两条线或圆周的角度标注vla-adddimdiametric以给定的直径上的亮点以及引线的长度建立圆周或弧的直径标注vla-adddimordinate以给定的定义点及引线端点建立坐标标注vla-adddimradial在给定的位置建立选取的对象半径标注vla-adddimrotated建立旋转的线性标注vla-addellipse以给定的中心点、主轴上的一点以及半径比在wcs的xy平面上建立一个椭圆vla-addellipticalcone以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆锥体vla-addellipticalcylinder以给定的center、majorradius、minorradius、以及height在wcs的xy平面上建立一个3d实体椭圆圆柱体vla-addextrudedsolid以给定的profile、height以及taperangle建立拉伸实体vla-addextrudedsolidalongpath以给定的轮廓以及拉伸路径建立拉伸实体vla-addfitpoint以给定的索引将拟合点加到样条曲线vla-addhatch建立一个ahrch对象vla-additems以给定的索引将拟合点加到样条曲线vla-addleader以给定的点坐标值建立引线vla-addlightweightpolyline根据顶点的列表建立一条轻多段线vla-addline建立过两点的直线vla-addmenuitem加入菜单选项到弹出菜单中vla-addminsertblock插入图块的阵列vla-addmline建立过一个点阵列的多线vla-addmtext在插入点与边界框宽度所定义的矩形中建立一个多行文字输入图元vla-addobject加入对象到具名的字典vla-addpoint在给定的位置上建立一个point对象vla-addpolyfacemesh标出顶点,建立一个多面网格vla-addpolyline从顶点的表建立一条多段线vla-addpviewport以给定的中心点、高度及宽度加入图纸空间视口vla-addraster根据已有的图像文件建立新的点阵式图像vla-addray建立通过两个唯一点的射线vla-addregion从一组图元建立面域。
所给的图元必须可以形成封闭的同平面面域vla-addrevolvedsolid以给定的绕轴面域建立旋转实体vla-addseparator加入分割线到已有的菜单表或工具条vla-addshape以所给的插入点、比例系数以及旋转角度,依据一个以名称识别的模板建立一个形(shape)对象vla-addsolid建立一个2D实体多边形vla-addsphere以给定的中心点和半径建立一个圆球vla-addspline建立二次或三次NURBS(不均匀有理B-spline)曲线vla-addsubmenu加入子菜单到已有的菜单中vla-addtext建立单行文字vla-addtolerance建立公差实体vla-addtoolbarbutton将工具条选项加入工具条指点位置vla-addtorus在给定的位置建立一个圆环vla-addtrace从点表建立一个宽线对象vla-addvertex加入一个顶点到轻ddxvla-addwedge以给定长度,宽度以及高度建立边缘和轴平行楔形vla-addxline建立一个通过两个指定点的xline(构造线)vla-addxrecord在任何字典中建立一个xrecord对象vla-anglefromxaxis去的某条线与X轴间的夹角角度vla-angletoreal以字符串表示的角度转换成实数(双精度)值vla-angletostring将角度从实数(双精度)转换成字符串vla-appendinnerloop附加一个内环到填充图案vla-appenditems附加一个或多个图元到指定组群vla-appendouterloop附加一个外环到图案填充范围vla-appendvertex附加一个顶点到3Dpoly,polyline或polygonmesh对象末端vla-arraypolar以给定的numberofobjects、angletofill以及centerpoint建立对象的环形阵列vla-arrayrectangular建立对象的2D或3D矩形阵列vla-attachexternalreference贴附外部参照到图形vla-attachtoolbartoflyout将工具条贴附到定义为弹出式图标的工具条按钮上vla-auditinfo计算图面的整合性vla-bind将外部参照并入到图形vla-boolean执行对象与其他3Dsolid或region对象之间的布尔运算(并集、交集、差集)vla-checkinterference检查两个实体之间的干涉,如果指定的话,则从干涉处建立一个实体vla-clear清楚所有项目中的指定选集vla-clipboundary对点阵式图像指定截取边界vla-close关闭指定的图形或所有打开的图形vla-copy复制给定的对象到相同的位置vla-copyfrom复制标注型式或打印配置的设定值vla-copyobjects复制多个对象vla-copyprofile复制指定的配置vla-createtypedarray建立含有有型参数的数组变体vla-delete删除指定的对象vla-deleteconfiguration删除一个视口配置vla-deletefitpoint以给定的索引删除样条曲线的拟合点vla-deleteprofile删除指定的布局vla-detach从图形拆离外部参照vla-display将PViewport对象的显示控制切换为打开或者关闭vla-displayplotpreview显示(打印预览)对话框,其中含有局部或完整的视图预览vla-distancetoreal将表示距离的字符串转换成实数值vla-dock将工具条固定在窗口指定的位置vla-elevateorder将样条曲线的阶数提高为指定的阶数vla-endundomark标记图块操作的结束vla-erase删除选集中的所有对象vla-eval计算vlisp中的表达式vla-evaluate计算给定的填充图案或引线vla-explode将符合对象分解成子图元vla-export将AUTCAD图形输出为WMF、SAT、EPS、DXF或BMP格式vla-exportprofile输出当前的布局使其能与其他用户共享vla-float将工具条设置成浮动vla-getacadstate取得acadstate对象来从外部处理应用程序监视CAD状态vla-getallprofilenames取得系统所有可用的配置vla-getangle取得指定角度vla-getattributes取得图块参考中的属性vla-getbitmaps取得当做工具条选项所使用图标的大位图与小位图vla-getboundingbox取得为主指定对象的长方体的两个点vla-getbulge取得多段线上给定索引的凸度vla-getcanonicalmedianames取得指定的打印设备的可用标准介质名称vla-getconstantattributes取得图块或外部参照中的固定属性vla-getcontrolpoint取得给定索引位置的控制点的坐标值vla-getcorner取得矩形的角点vla-getcustomscale取得配置或打印机配置的自定义比例vla-getdistance取得从提示线或屏幕上选取的一组点算起的距离vla-getentity以互动方式取得对象vla-getextensiondictionary取得与对象关联的字典vla-getfitpoint以给定索引取得样条曲线的拟合点vla-getfont取得textstyle的字体定义信息vla-getgridspacing取得视口的栅格间距vla-getinput将用户输入的字符串转换成关键字索引vla-getinteger从用户处取得一个整数vla-getinterfaceobject接受一个程序识别码(ID)并试图将它加载到AUTOCAD中当做内部处理服务器vla-getinvisibleedge以给定的索引取得3Dface对象边缘的可见性设定值vla-getkeyword从用户处取得关键字字符串vla-getlocalemedianame取得标准介质名称的本地化版本vla-getloopat以给定的索引取得环形图案填充vla-getname取得字典中对象名称vla-getobject以给定的对象名称取得字典中的对象vla-getorientation取得指定的角度。
vla-getpapermargins取得配置或打印机配置的边界vla-getpapersize取得打印机配置的宽度与高度vla-getplotdevicenames取得全部可用打印机配置的名称vla-getplotstyletablenames取得全部可用打印形式表名称vla-getpoint取得在CAD中选取的点vla-getprojectfilepath取得AUTOCAD寻找外部参考文件的目录vla-getreal从用户处取得实数值vla-getremotefile下载URL所指定的文件vla-getsnapspacing取得视口的捕捉间距vla-getstring从用户处取得字符串vla-getsubentity以交互方式取得对象或子实体vla-getucsmatrix取得组成UCS坐标系统资料的转换矩阵vla-getvariable取得AUTOCAD系统变量的当前设定值vla-getweight取得给定索引的控制点权值vla-getwindowtoplot取得定义要打印的配置的位置的坐标vla-getxdata取得与对象相关的外部数据vla-getxrecorddata取得与字典相关的外部记录数据vla-handletoobject取得与给定处理码的对应对象vla-highlight设定给定对象或给定选集中的所有对象的显示状态vla-import输入sat,eps,dxf或wmf格式的图形文件vla-importprofile输入其他用户建立的配置vla-initializeuserinput起始设定getkeyword方法vla-insertblock在当前图形中插入一个图形文件或已经定义的命名图块vla-insertinmenubar将弹出菜单插入到AOTUCAD菜单表的指定位置中vla-insertloopat在图案填充的给定索引插入一个环vla-insertmenuinmenubar将菜单插入到AUTOCAD菜单表中vla-intersectwith取得图形中某个对象和其他对像相交的点vla-isremotefile返回下载远程文件的URLvla-isurl验证给定的URLvla-launchbrowserdialog启动【web浏览器】对话框,以让用户能存取任何URL并选取某个URLvla-listarx取得目前已载入的AUTOCAD-ARX应用程序vla-load从菜单文件载入菜单文件组或从数据库【lin】文件载入线型定义vla-loadarx载入指定的AUTOCAD-ARX应用程序vla-loaddvb载入指定的AUTOCAD-vba项目文件vla-loadshapefile载入指定的AUTOCAD-arx应用cxvla-mirror绕一轴创建一个平面对象的镜像拷贝vla-mirror3D建立给定对象相对于平面上的镜像图像vla-move沿着矢量方向移动一个对象vla-new以SDI模式建立一个新文件vla-objectIDtoobject取得与给定的对象识别码【ID】对应的对象vla-offset在从已有的对象位置开始计算的偏移距离处建立一个新对象vla-open打开一个既有的图形并设成作用中文件vla-plottodevice将绘图送到设备vla-plottofile将绘图配置到指定的文件vla-polarpoint指定角度以及从给定点起算的距离来取得点vla-prompt将提示粘贴到命令行vla-purgeall从文件中删除未使用的命名参照,如未使用的图块或图层vla-purgefitdata删除样条曲线的拟合数据vla-putremotefile将文件上传到URL指定的远端位置vla-quit关闭文件同时结束AUTOCAD应用程序vla-realtostring将实数型转换为字符串vla-refreshplotdeviceinfo更新绘图、标准介质、绘图格式表信息来反应目前的系统状态vla-regen重生成整个图形以及重新计算所有对象德尔屏幕坐标值及视图精度vla-reload重新载入外部参照vla-remove从词典中删除命名对象vla-removefrommenubar从AUTOCAD菜单删除弹出式菜单vla-removeitems从组或选择集删除指定的项目vla-rename重命名词典中的项目名称vla-renameprofile重命名指定配置的名称vla-replace以给定的项目替换词典中的项目vla-resetprofile重置指定布局中的值至默认值vla-restore重置指定布局中的值至默认值vla-reverse反转样条曲线放向vla-rotate沿着基准点旋转对象vla-rotate3D沿着3D轴旋转对象。