当前位置:文档之家› 宏#,##的用法

宏#,##的用法

宏#,##的用法
宏#,##的用法

C/C++ 宏中“#"和"##”的用法

●一般用法

通常情况我们一般把宏#参数变为一个字符串,形如:123--->”123”,当然这种转换方法很多譬如:itoa,sprintf等函数都可以完成,但是如果频繁的调用这些系统调用的话,会造成较大的系统开销,使用宏#不失为一种高效便捷的手段,

用##把两个宏参数贴合在一起.

简单的方法。

#include

#define STR(s) #s

#define CONS(x,y) (int)(x##e##y)

int main()

{

printf("%s\n",STR(123));

Printf(“%d\n”,CONS(3,3));

return 0;

}

--------下面是执行结果

./a.out

123

3000

●'#'和'##'的一些应用特例

1.合并匿名变量名

#define ___ANONYMOUS1(type, var, line) type var##line

#define __ANONYMOUS0(type, line) ___ANONYMOUS1(type, _anonymous, line)

#define ANONYMOUS(type) __ANONYMOUS0(type, __LINE__)

例:

ANONYMOUS(static int); 即: static int _anonymous70; 70表示该行行号;

第一层:ANONYMOUS(static int); --> __ANONYMOUS0(static int, __LINE__);

第二层:--> ___ANONYMOUS1(static int, _anonymous, 70); 第三层:--> static int _anonymous70;

即每次只能解开当前层的宏,所以__LINE__在第二层才能被解开;

2.填充结构

#define FILL(a) {a, #a}

enum IDD{OPEN, CLOSE};

typedef struct MSG{

IDD id;

const char * msg;

}MSG;

MSG _msg[] = {FILL(OPEN), FILL(CLOSE)};

相当于:

MSG _msg[] = {{OPEN, "OPEN"},

{CLOSE, "CLOSE"}};

3.记录文件名

#define _GET_FILE_NAME(f) #f

#define GET_FILE_NAME(f) _GET_FILE_NAME(f)

static char FILE_NAME[] = GET_FILE_NAME(__FILE__);

4.得到一个数值类型所对应的字符串缓冲大小

#define _TYPE_BUF_SIZE(type) sizeof #type

#define TYPE_BUF_SIZE(type) _TYPE_BUF_SIZE(type)

char buf[TYPE_BUF_SIZE(INT_MAX)];

--> char buf[_TYPE_BUF_SIZE(0x7fffffff)];

--> char buf[sizeof "0x7fffffff"];

这里相当于:

char buf[11];

宏的使用方法

在这里总结宏的使用方法欢迎补充 1 条件include 如下 CODE #ifndef MAIN_H_ #define MAIN_H_ 其它内容 #endif 上面在看到头文件时会看到作用就是阻止这个头文件被多次include 多次include就会出现重复的定义情况所以需要在每个头文件中都使用这个定义 如果还不是很了解要怎样使用可以看看c的标准头文件如fcntl.h 2 条件编译 如下 CODE #ifdef _DEBUG printf("this debug info\n"); #endif 如果没有定义_DEBUG宏的话那么上面那一行是不会编译进去的 但是定义了_DEBUG后上面那行就会编译进去可以写个简单的程序测试 CODE #include int main() { #ifdef _DEBUG printf("hello world\n"); #else printf("no debug"); #endif return 0; } 第一次使用gcc -D_DEBUG main.c 第二次使用gcc main.c 运行两次的结果看 3 定义为某个值以便后面修改这个值时不用修改其它地方代码只要修改这个宏的定义就可以了

如一个软件的多语言版本等 如下 CODE #include #define PRINT_STR "你好DD" main(){ printf(PRINT_STR); return 0; } 编译时会把PRINT_STR代替成"你好DD" 以后想修改时就方便了 另外也可以定义为函数 #include #ifdef _DEBUG #define A(x) a(x) #else #define A(x) b(x) #endif int a(int x) { return x+1; } int b(int x){ return x+100; } int main(){ printf ("A(10) value is %d",A(10)); return 0; } [/code] 其实也可以定义成 #define A a 的 但是定义成A(x)后只有A后面带一个(x)类型的编译器才会执行替换比较安全可以保证只替换函数而不替换变量 第四个 可变参数宏

Excel宏功能简单应用介绍

OFFice几个出色招数 Word独门绝招: 一、输入三个“=”,回车,得到一条双直线; 二、输入三个“~”,回车,得到一条波浪线; 三、输入三个“*”或“-”或“#”,回车,惊喜多多; Powerpoint出色过招: Q:如果已经word写好一份报告,并且要根据报告的内容做幻灯片,怎么直接把 word文档的标题发送到powerPoint? A:打开word文档,从“文件”菜单单击“发送”命令,再选择发送到ppt。ppt 会自动启动,并且根据每个word文档的一级标题建立一张相同标题的幻灯片,其下的二级标题也会被自动添加到幻灯片。 Excel宏功能简单应用介绍 所谓宏,就是一组指令集,通过执行类似批处理的一组命令,来完成某种功能。Microsoft Office的组件都可以支持宏(Macro)的操作,而Office的宏是指使用VB Script指令集(VB编程语言的子集,可以使用VB的常用语句)编写的针对Office组件的小程序。利用宏,我们可以完成很多程序原本并不支持的特殊应用,比如完成某种特殊的数据计算,或者文档的特殊格式排版等等。下面,就让我们举个简单的例子,看看宏在Excel中如何应用。 有这样一个Excel表格,工作表Sheet1中的第2行的B列开始至D列的连续单元格中是一组共3个数据,第A列的第3行开始至第6行的连续单元格中是一组共4个日期,要编写一段宏来完成这样的工作:将Sheet1第2行的数据由左至右依次纵向复制到Sheet2的B列(从B2开始)中,然后将这组复制完的3个数据所在行的A列都填入Sheet1的A3单元格里面的日期,完成后重复之前的操作,将Sheet1第2行的数据再次复制到Sheet2的B列,这次是从上次复制的B列数据下面的空白单元格,也就是B5开始,然后再在这次复制的3个数据的左侧A列填入Sheet1的A4单元格的日期,这样反复循环,直到Sheet1的A列的所有日期都出现在了Sheet2的A列里面,也就是Sheet1的第2行数据在Sheet2的B列里面被复制了4次为止。 编写宏只要有一点点简单的VB编程知识就可以了,并不一定需要很高深的编程技巧,很多时候我们需要的只是一些重复的操作,我们可以通过宏的录制功

新代数控车床宏程序说明

一.用户宏程序的基本概念 用一组指令构成某功能,并且象子程序一样存储在存储器中,再把这些存储的功能由一个指令来代表,执行时只需写出这个代表指令,就可以执行其相应的功能。 在这里,所存储的一组指令叫做宏程序体(或用户宏程序),简称为用户宏。其代表指令称为用户宏命令,也称作宏程序调用指令。 用户宏有以下四个主要特征: 1)在用户用户宏程序中可以使用变量,即宏程序体中能含有复杂的表达式; 2)能够进行变量之间的各种运算; 3)可以用用户宏指令对变量进行赋值,就象许多高级语言中的带参函数或过程,实参能赋值给形参; 4)容易实现程序流程的控制。 使用用户宏时的主要方便之处在于由于可以用变量代替具体数值,因而在加工同一类的工件时.只得将实际的值赋予变量既可,而不需要对每个不同的零件都编一个程序。 二.基本书写格式 数控程序文档中,一般以“%”字符作为第一行的起头,该行将被视为标题行。当标题行含有关键字“@MACRO”时整个文档就会以系统所定义的MACRO语法处理。如果该行无“@MACRO”关键词此档案就会被视为一般ISO程序文档格式处理,此时将不能编写用户宏和使用其MACRO语法。而当书写ISO程序文档时标题行一般可以省略,直接书写数控程序。“@MACRO”关键词必须是大写字母。 对于程序的注释可以采用“//……”的形式,这和高级语言C++一样。 例一:MACRO格式文档 % @MACRO //用户宏程序文档,必须包含“@MACRO”关键词 IF @1 = 1 THEN G00 X100.; ELSE G00 Z100.; END_IF; M99; 例二:ISO格式文档 % 这是标题行,可当作档案用途说明,此行可有可无 G00 X100.; G00 Z100.; G00 X0; G00 Z0; M99;

EXCEL使用VBA宏生成SQL语句

有时候需要将Excel文件中的数据导入到数据库中,常用的做法是使用程序读取Excel,然后存入数据库;这里换一个方法,用Excel生成SQL语句,然后用这些SQL语句来更新数据库。 本文主要说明Excel如何使用VB宏构造需要的SQL语句,并生成文件。 2、如何添加按钮: 依次打开:视图–工具栏–控件工具箱,选择“命令按钮”,自己画一个就行了; 依次打开:右键–属性,可以修改名称、样式等。 具体操作可以上网找找。 3、如何使用VB宏: 依次打开:工具–宏–安全性,看看你的Excel是否允许使用“宏”。 然后打开:工具–宏–Visual Basic编辑器,双击左侧的“Sheet1”,然后在右侧的代码区域粘贴如下代码: '最大行数 Const MAX_NUM_ROW=5000 '导出文件路径所在单元格 Const PATH_OUTPUT_ROW=3 Const PATH_OUTPUT_COL=3 '定义列常量 Const NAME_COL=1 Const GENDER_COL=2 Const PHONE_COL=3 Const EMAIL_COL=4 '读取数据开始行数 Const START_ROW=5 '定义数据实体类 Private Type Tmplt NAME As String GENDER As String PHONE As String EMAIL As String End Type '行数变量 Dim noOfTmplts As Integer '数据实体类数组 Dim TmpltArray(MAX_NUM_ROW)As Tmplt '点击按钮触发事件 Private Sub CommandButton1_Click() generateSQL End Sub '生成SQL Private Sub generateSQL() makedir initData writeToFile

Excel宏和控件无法使用的解决方法

关于Excel宏和控件无法使用的解决方法. 有的时候,我们在打开含有宏或ActiveX控件的Excel文件时,无法正常使用宏和控件,总是出现如下的一些提示: 找不到指定的模块;内存溢出;宏被禁用;等等。或者,控件根本无法点击响应。 可以试试如下方法: 一、开启宏,降低宏安全等级,但对系统有潜在威胁。见“一、开启宏方法”。 二、如果还不行,则可能是Fm20.dll注册损坏引起的,可以重新注册。见“手动 注册Fm20.dll”。 一、开启宏方法: 1、Excel2003版本中操作步骤: (1)在Excel的菜单栏上依次单击“工具”——“宏”——“安全性”,打开下图所示的“安全性”对话框。 (2)在“安全级”选项卡中将宏的安全级别设置为“中”或“低”。其中推荐使用“中”级,这样的设置并不会降低您的安全性,您仍然对任意一个宏文件都拥有主动选择是否运行的权力。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,会出现下图所示信息框,此时点击“启用宏”按钮即可使本程序正常运行:

2、Excel2007版本中操作步骤: (1)依次单击Excel的Office按钮(2010版本为“文件”按钮)——“Excel选项”,打开下图所示的“Excel选项”选项卡,在左侧列表中选择“信任中心”,在右侧出现的窗口中点击“信任中心设置”按钮。 (2)打开“信任中心”选项卡,在左侧选择“宏设置”,在右侧出现的窗口中选择“禁用所有宏,并发出通知”选项,单击确定完成。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,在信息栏会出现下图所示的警告信息,此时点击其中的“选项”按钮打开Office安全选项对话框,在其中选择“启用此内容”选项并确定即可使本程序正常运行。

使用Minitab宏(Marcro)的方法

注册登录加为收藏 设为首页 6SQ邮局 6SQ首页|文章资讯|品质论坛|质量家园|质量百科|品质人才|会员相册|工具条|培训咨询|软件销售 分栏模式淘宝网店论坛搜索6SQ统计插件签到台(送金币)帮助窄屏风格宽屏风格六西格玛品质论坛?品质软件?请教如何MINITAB中运行宏文件?6SQ制造业绿带认证班培训品质管理工具应用专业培训精益生产培训3~10天六西格玛/精益项目咨询培训 6SQ常见问题解答[必读]6SQ统计插件2.0下载hot!广告合作业务联系用支付宝快速充6SQ币 上海专业制作工装夹具治具检具6SQ官方QQ群信息一次交费,终身使用,vip会员Minitab应用培训3~5天 返回列表回复发帖 发新话题发布投票发布悬赏发布辩论发布活动发布视频发布商品victor2008 发短消息 加为好友 victor2008 (变革在我) 质量疯子 UID169830 帖子7397 精华1 积分6079 6SQ币60594 热心656 阅读权限100 来自广东注册时间2007-5-12 最后登录2010-4-14 昵称: 变革在我 黑带高级 6SQ币60594 热心656 发短消息 加为好友 个人空间 1# 打印字体大小: tT 发表于2007-10-26 16:25 | 只看该作者 请教如何MINITAB中运行宏文件? 本文来自:6sigma品质网https://www.doczj.com/doc/519839413.html, 作者:victor2008 点击1771次原文:https://www.doczj.com/doc/519839413.html,/viewthread.php?tid=159669 各位大师: 如何在MINITAB中运行宏文件啊,具体的操作步骤是怎样的啊,请指教啊! 收藏分享评分天行健,君子当自强不息! 加入铁杆会员,一次交费,终身使用,无阅读下载限制,详情查看 回复引用订阅TOP wit 发短消息 加为好友 wit UID24546 帖子1287 精华0 积分1268 6SQ币12675 热心43 阅读权限100 注册时间2004-7-12 最后登录2010-3-19 黑带初级 6SQ币12675 热心43 发短消息 加为好友 个人空间 2# 发表于2007-10-26 16:36 | 只看该作者从来没有用过。我也希望学习一下。 有人提供帮助吗? 6SQ统计插件for Excel 2.0下载 回复引用TOP

excel的宏教程免费下载

Microsoft excel是一款功能非常强大的电子表格软件。它可以轻松地完成数据的各类数学运算,并用各种二维或三维图形形象地表示出来,从而大大简化了数据的处理工作。但若仅利用excel的常用功能来处理较复杂的数据,可能仍需进行大量的人工操作。但excel的强大远远超过人们的想象--宏的引入使其具有了无限的扩展性,因而可以很好地解决复杂数据的处理问题。 随着支持Windows的应用程序的不断增多和功能的不断增强,越来越多的程序增加了宏处理来方便用户的自由扩展。但初期各应用程序所采用的宏语言并不统一,这样用户每使用一种应用程序时都得重新学习一种宏语言。为了统一各种应用程序下的宏,Microsoft推出了VBA(Visual Basic for Applications)语言。 VBA是从流行的Visual Basic编程语言中派生出来的一种面向应用程序的语言,它适用于各种Windows应用程序,可以解决各应用程序的宏语言不统一的问题。除此之外,使用 VBA语言还有如下优点:1、VBA是一种通用程序语言,通过它不仅可以共享Microsoft相关的各种软件(如excel、 word、access)……,而且随着其它的一些软件(如大名鼎鼎的AutoCAD2000)等对VBA的支持,这些软件也已进入到了VBA的控制范围;2、可以将用VBA编写的程序复制到Visual Basic中调试并运行,从而实现用Visual Basic来控制有关的应用程序;3、VBA 提供的大量内部函数大大简化了用户的操作。 对于而今的宏,不仅语言统一规范,而且其功能也已非常强大。但在大多数介绍excel的"傻瓜书"、"指南"、"入门与提高"等参考书中往往略过不提,或浅浅带

数控宏程序的使用方法

数控宏程序的使用方法 Document serial number【KK89K-LLS98YT-SS8CB-SSUT-SST108】

数控宏程序的使用方法一、A类宏程序 1)变量的定义和替换 #i=#j 编程格式 G65 H01 P#i Q#j 例 G65 H01 P#101 Q1005; (#101=1005) G65 H01 P#101 Q-#112;(#101=-#112) 2)加法 #i=#j+#k 编程格式 G65 H02 P#i Q#j R#k 例 G65 H02 P#101 Q#102 R#103;(#101=#102+#103) 3)减法 #i=#j-#k 编程格式 G65 H03 P#i Q#j R#k 例 G65 H03 P#101 Q#102 R#103;(#101=#102-#103) 4)乘法#i=#j×#k 编程格式 G65 H04 P#i Q#j R#k 例 G65 H04 P#101 Q#102 R#103;(#101=#102×#103) 5)除法 #i=#j / #k 编程格式 G65 H05 P#i Q#j R#k 例 G65 H05 P#101 Q#102 R#103;(#101=#102/#103) 6)平方根 #i= 编程格式 G65 H21 P#i Q#j 例 G65 H21 P#101 Q#102;(#101= ) 7)#i=│#j│ 编程格式 G65 H22 P#i Q#j 例 G65 H22 P#101 Q#102;(#101=│#102│) 8)复合平方根1 #i= 编程格式 G65 H27 P#i Q#j R#k 例 G65 H27 P#101 Q#102 R#103;( #101= 9)复合平方根2 #i= 编程格式 G65 H28 P#i Q#j R#k 例 G65 H28 P#101 Q#102 R#103 1)逻辑或 #i=#j OR #k 编程格式 G65 H11 P#i Q#j R#k 例 G65 H11 P#101 Q#102 R#103;(#101=#102 OR #103) 2)逻辑与 #i=#j AND #k

宏业软件地使用方法

宏业软件的使用方法 软件常见问题解答 1、清单定额地区人工费如何调整? 答:①在[综合单价计算模板]界面模板内定义好地区人工费调整费率;②切换到[清单/计价表],选择定义模板计算并应用于计价表所有定额数据对象。注意:地区人工费调整不能直接在[清单/计价表]中对定额进行整体系数换算处理,这样将对调整系数作为措施项目及规费取费基础。 2、做定额预结算时,工程造价让利如何处理? 答:①单位工程[费用汇总表]中,在“工程造价”行后添加工程造价优惠行,计算公式则为原“工程造价”行“费用编号*费率”,再在“费率”列录入让利费率值自动计算出结果;②将添加的工程造价优惠行标记为工程造价行(利用标记当前行为工程造价行功能)。 3、定额预结算方式按实费用如何计算? 答:在[费用汇总表]中已有的按实计算费用行下添加其费用子目,再编辑其费用名称、计算公式;若需打印出计算式,则需要再在最后“[打印]计算公式”列输入详细计算表达式。 4、派生费用计算有几种方式,分部派生费在定额计价方式与清单计价方式各如何应用? 答:派生费用对不同数据对象计算分定措(在定额上计算派生费用)、项措(在清单项目上计算派生费用)及措1…(在段落结构上计算派生费用);定额计价方式下计算的派生费用直接汇总表“费用汇总表”相应数据中,清单计价方式下:定措、项措均直接汇入相应项目费用中,措1…一般是调用到措施项目清单中。 5、在[清单/计价表]中进行定额人工费换算处理与在[综合单价计算模板]设置费率处理的区别 答:前者直接进入到定额人工费中,适用于定额上规定的系数换算处理;后者不汇入定额人工费中,适用于地区人工费调整,并不作为措施项目及规费的取费基础。 6、定额计价方式做预结算时,怎样整体调整分部工程量?

EXCEL如何使用宏

在介绍学习VBA之前,应该花几分钟录制一个宏。 新术语:“宏”,指一系列EXCEL能够执行的VBA语句。 以下将要录制的宏非常简单,只是改变单元格颜色。请完成如下步骤: 1)打开新工作簿,确认其他工作簿已经关闭。 2)选择A1单元格。调出“常用”工具栏。 3)选择“工具”—“宏”—“录制新宏”。 4)输入“改变颜色”作为宏名替换默认宏名,单击确定,注意,此时状态栏中显示“录制”,特别是“停止录制”工具栏也显示出来。替换默认宏名主要是便于分别这些宏。 ★宏名最多可为255个字符,并且必须以字母开始。其中可用的字符包括:字母、数字和下划线。宏名中不允许出现空格。通常用下划线代表空格。 5)选择“格式”的“单元格”,选择“图案”选项中的红色,单击“确定”。 6)单击“停止录制”工具栏按钮,结束宏录制过程。 ※如果“停止录制”工具栏开始并未出现,请选择“工具”—“宏”—“停止录制”。 录制完一个宏后就可以执行它了。 1.4 执行宏 当执行一个宏时,EXCEL按照宏语句执行的情况就像VBA代码在对EXCEL进行“遥控”。但VBA的“遥控”不仅能使操作变得简便,还能使你获得一些使用EXCEL标准命令所无法实现的功能。而且,一旦熟悉了EXCEL的“遥控”,你都会奇怪自己在没有这些“遥控”的情况下,到底是怎么熬过来的。要执行刚才录制的宏,可以按以下步骤进行: 1)选择任何一个单元格,比如A3。 2)选择“工具”—“宏”—“宏”,显示“宏”对话框。 3)选择“改变颜色”,选择“执行”,则A3单元格的颜色变为红色。试着选择其它单元格和几个单元格组成的区域,然后再执行宏,以便加深印象。 1.5 查看录制的代码 到底是什么在控制EXCEL的运行呢?你可能有些疑惑.好,让我们看看VBA的语句吧. 1)选择“工具”—“宏”—“宏”,显示“宏”对话框。 2)单击列表中的“改变颜色”,选择“编辑”按钮。 此时,会打开VBA的编辑器窗口(VBE)。关于该编辑器,以后再详细说明,先将注意力集中到显示的代码上。代码如下:(日期和姓名会有不同) Sub 改变颜色() ' ' 改变颜色Macro ' xw 记录的宏2000-6-10 ' ' With Selection.Interior

word中使用宏命令速排版的方法

word中使用宏命令速排版的方法 一、首先录制宏命令 1、打开一个WORD文档,文档中如果有文字,可使下面的过程看到效果。 2、执行录制宏命令:选择菜单\工具\宏\录制宏命令,在打开的对话框中,填上:宏名框中填上表示该宏命令的作用,例如:去掉多余的空格,去掉多余的空行,去掉多余的手工换行符,去掉多余的段落标记符,排版字体为宋体字号为四号颜色为黑色等等。点对话框中的确定按钮。 3、全选所有文字:按CTRL+A, 或者按下鼠标左键不松手,从文件首行拖到最后一行,或者选择:菜单\编辑\全选。 4、执行排版: 去掉全部多余的空格:选择菜单\编辑\替换\在查找框中按一个空格,在替换框中不加任何符号,点全部替换按钮两次。 去掉多余的手工换行符:选择菜单\编辑\替换\在查找框中填上手工换行符,方法是按CTRL+6,再字母L,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点手动换行符.在替换框中填上段落标记,方法是按CTRL+6,再按字母P,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点段落标记.再按确定按钮两次. 去掉多余的段落标记:选择菜单\编辑\替换\在查找框中填上两个段落标记,方法是按CTRL+6,再字母P,连续两次,出现^P^P,,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点段落标记两次.在替换框中填上段落标记,方法是按 CTRL+6,再按字母P,或者点按钮高级选项,展开后,点特殊字符按钮,在其中点段落标记.再按确定按钮两次. 更换字体:在快捷菜单栏中,点字体对话框,例如:宋体. 更换字号:在快捷菜单栏中,点字号对话框,例如;四号字. 更换字的颜色:在快捷菜单栏中,点字体颜色,在打开的颜色选择对话框中,点选合适的颜色,也可用菜单\格式\字体,在对话框中,把所有的这些项,全部一次更换好. 更换段落间距等:打开菜单\格式\段落\在对话框中,将常规、缩进、间距设置好,再按确定,一般情况如下图设置。

excel常用宏

1.拆分单元格赋值 Sub 拆分填充() Dim x As Range For Each x In https://www.doczj.com/doc/519839413.html,edRange.Cells If x.MergeCells Then x.Select x.UnMerge Selection.Value = x.Value End If Next x End Sub 2.E xcel 宏按列拆分多个excel Sub Macro1() Dim wb As Workbook, arr, rng As Range, d As Object, k, t, sh As Worksheet, i& Set rng = Range("A1:f1") Application.ScreenUpdating = False Application.DisplayAlerts = False arr = Range("a1:a" & Range("b" & Cells.Rows.Count).End(xlUp).Row) Set d = CreateObject("scripting.dictionary") For i = 2 To UBound(arr) If Not d.Exists(arr(i, 1)) Then Set d(arr(i, 1)) = Cells(i, 1).Resize(1, 13) Else Set d(arr(i, 1)) = Union(d(arr(i, 1)), Cells(i, 1).Resize(1, 13)) End If Next k = d.Keys t = d.Items For i = 0 To d.Count - 1 Set wb = Workbooks.Add(xlWBATWorksheet) With wb.Sheets(1) rng.Copy .[A1] t(i).Copy .[A2] End With wb.SaveAs Filename:=ThisWorkbook.Path & "\" & k(i) & ".xlsx" wb.Close Next

EXCEL重要宏应用,序号的使用方法

EXCEL重要宏应用,序号的使用方法 EXCEL重要宏应用,序号的使用方法 (1) 1 序号 (2) 1.1 . 希望在B列输入内容,A列就自动进行编号 (2) 1.2 . 隐藏行连续 (2) 2 安全 (2) 2.1 . 保护工作表 (2) 3 宏 (2) 3.1 . 批量将工作表转换为独立工作簿 (2) 3.2 . 一键汇总各分表数据到总表 (3) 3.3 . 一键将总表数据拆分为多个分表 (4) 3.4 . 汇总多个工作簿的数据到总表 (6) 3.5 . 按一列中的部门拆分成工作簿 (8) 3.6 . 按一列中的部门拆分成工作簿 (10) 3.7 . 将同一工作簿中的所有工作表合并到一个工作表中 (12) 3.7.1 代码1 (12) 3.7.2 代码2 (13) 3.8 . 把一个工作簿中的所有表单合并成一个表单,怎么去掉重复的表头、标题行?方法如下: (13) 3.8.1 代码1 (13) 3.8.2 代码2 (13) 3.9 . 将需要合并的工作簿文件放置在一个文件夹中,并新建一个工作簿 (14)

1 序号 1.1 . 希望在B列输入内容,A列就自动进行编号 在A2单元格中输入公式:=IF(B2="","",COUNTA($B$2:B2)) 1.2 . 隐藏行连续 在A2单元格输入公式:=IF(B2="","",SUBTOTAL(103,$B$2:B2)) 2 安全 2.1 . 保护工作表 按 Ctrl+G,打开定位条件对话框,选择定位到“公式”; 2、按Ctrl+1,打开单元格设置对话框,在“保护”选项下,勾选“隐藏”和“锁定”; 3、在“审阅”选项下的“保护工作表”中设置撤销保护的密码,确定,即可达到隐藏公式的效果。 3 宏 3.1 . 批量将工作表转换为独立工作簿 Sub Newbooks() 'EH技术论坛。VBA编程学习与实践。看见星光 Dim sht As Worksheet, strPath$ With Application.FileDialog(msoFileDialogFolderPicker) '选择保存工作薄的文件路径 If .Show Then strPath = .SelectedItems(1) '读取选择的文件路径 Else Exit Sub

浅谈数控编程中的宏程序

浅谈数控编程中的宏程序 江苏经贸技师学院王军歌 [摘要] 随着现代制造技术的发展和数控机床的日益普及,数控加工在我国得到广泛的应用,数控加工中很重要的一部分就是编程,从CAD/CAM软件出现以后,人们过分依赖CAD/CAM软件,使得无论程序大小,加工难易编程人员习惯使用各种CAD/CAM软件,而把手工编程遗忘了,尤其是博大精深的宏程序。宏程序在数控编程中不应该被遗忘,而是应该很好的使用,它有着自动编程软件不可取代的优势。 [关键词] 数控编程宏程序CAD/CAM 数控加工 一.引言 在CAD/CAM软件普遍存在的今天,手工编程的应用空间日趋减小,数控世界有一种说法很流行“宏程序已经没有什么用”,其实任何数控系统都有很多指令在一般情况下用不着,那他们是否也没有用呢?这显然不对,对宏程序也是如此,原因只是大家对宏程序不熟悉,往往误以为宏程序深不可测而已,在实际工作中,宏程序确实也有广泛的应用空间,并且能够方便手工编程,锻炼操作者的编程能力,帮助操作者更加深入的了解自动编程的本质。 二.认识宏程序 在一般的程序编制中程序字为常量,一个程序只能描述一个几何形状,当工件形状没有发生改变但是尺寸发生改变时,就没有办法了,只能重新进行编程,缺乏灵活性和适用性。当我们所要加工的零件如果形状没有发生变化只是尺寸发生了一定的变化的情况时,我们只需要在程序中给要发生变化的尺寸加上几个变量再加上必要的计算公式就可以了,当尺寸发生变化时只要改变这几个变量的赋值参数就可以了。 它是利用对变量的赋值和表达式来进行对程序的编辑的,这种有变量的程序叫宏程序。 三.宏程序与自动编程的比较 自动编程有自动编程的好处,但是自动编程也有其不利于加工方面的问题,在加工不规律的曲面时利用自动编程确实是很好,但是在加工有规律的曲面时就不见得了,加工有规律的工件的时候用宏程序加工要比用自动编程软件要强的

浅谈Word中宏的使用方法

龙源期刊网 https://www.doczj.com/doc/519839413.html, 浅谈Word中宏的使用方法 作者:张春玲 来源:《科技创新导报》2011年第35期 摘要:Word是Office办公套件中的主要组件之一,Word中的宏是被命名并被保存起来的一系列操作,执行宏就是顺序执行它所包含的全部操作。在用Word进行文档编辑时,可以运行事 先编好的宏,来避免重复操作,以达到简化操作,提高工作效率的目的。本文通过实例简单介绍了Word中宏的使用方法。 关键词:Office办公套件 Word 宏 中图分类号:TP31 文献标识码:A 文章编号:1674-098X(2011)12(b)-0020-01 Word是Office办公套件中的主要组件之一,具有Windows的图形操作界面,让用户能方便 地处理文字、图形和数据。能满足各种文档编排、打印需求,因其“所见即所得”的排版功能而深受用户的喜爱。 当我们在用Word编辑文档时,不可避免地要重复一些操作,比如经常设置同样的页面、字 体字号、段落格式等,这时我们可以用Word中的宏功能来简化操作,提高工作效率。宏是被命 名并被保存起来的一系列操作,执行宏就是顺序执行它所包含的全部操作。在工作时,可以直接利用事先编好的宏自动运行,去完成经常需要重复的任务,目的是让用户文档中的一些任务自动化。 Word提供了两种创建宏的方法:宏录制器和Visual Basic编辑器。其中使用宏录制器可以 快速地创建、编辑和运行宏,而使用Visual Basic编辑器可以打开已经创建的宏,查看和修改其中的代码,也可以直接使用VB语言根据需要编写自己的宏。为了方便使用,还可以把宏指定到快捷键、工具栏或菜单中。 1 创建宏 我们可以通过以下方法创建宏: (1)单击工具菜单中的宏命令,选择级联菜单录制新宏,会打开录制宏对话框; (2)在“宏名”中输入新创建的宏的名称,默认的宏名为“Macro1”;

EXCEL宏运用

EXCEL宏运用 在日常工作中,我们常会遇到这种情况:一些相同的内容在不同的表格中反复录入,如常用的函数,统一的格式设置等。如果内容很多,不仅造成工作重复,而且还浪费了大量时间。此时,若用Excel中的宏编辑命令,则完全可将一系列繁琐的操作简化为一个快捷命令或工具栏命令。 所谓“宏”,就是将一系列的命令和指令组合在一起,形成一个命令,以实现任务执行的自动化。它可以替代人工进行一系列费时而重复的操作,是一个极为灵活的自定义命令。 在Excel中运用宏可有两种途径,一种是录制宏,另一种是采用Excel自带的Visual Basic编辑器来编辑宏命令。前一种使用较多,操作简练,也易于理解。以下举例说明宏与常用函数结合使用的方法:假设在Excel中有这样一组财务数据:资产原值(Cost),资产残值(Salvage),折旧期限(Life),期间(Per),且分别处于A1、B1、C1、D1的单元格中,现需计算该项资产按年限总和折旧法计算的本期折旧值,且把它放在单元格D2中。 操作步骤: (一)新建一空白表格,选中D2单元格,单击“工具”/“宏”/“录制新宏”,在出现的对话框中给该宏起名为“折旧函数”,在“保存在”下拉框中,选中“个人宏工作簿”(这是为了让该宏随Excel的使用而激活),单击“确定”。即可开始宏的录制(图1)。请注意,必须将宏记录为单元格相对引用,所以在“停止录制”工具栏中要选中“相对引用”按钮(图2)。

(二)在表格的D2单元格中输入“=SYD(A1,B1,C1,D1)”,C2单元格中输入“本期折旧值”,然后单击“工具”/“宏”/“停止录制”,结束宏的录制。此时会在“工具”/“宏”/“宏”中发现有“PERSONAL.XLS!折旧函数”的一个新宏。 (三)为了使用方便,可将其嵌入工具栏中。单击“工具”/“自定义”,选中“命令”对话框中“类别”下拉框中的“宏”,在右边可出现“自定义按钮”,选中它并将其拖至想要放的工具栏上(图3)。此时在工具栏上会发现多出一“J”形状的按钮,单击“自定义”对话框中的“更改所选内容”按钮,会出现一下拉菜单,在命名框中将其改为“折旧函数”;你还可更改按钮图标,选中你喜欢的图标;为便于理解,可选中“图标与文字”选项,工具栏中的该按钮便改为“图标+说明”的形式(图4)。

数控宏程序的使用方法

数控宏程序的使用方法 一、A类宏程序 1)变量的定义和替换#i=#j 编程格式G65 H01 P#i Q#j 例G65 H01 P#101 Q1005;(#101=1005) G65 H01 P#101 Q-#112;(#101=-#112) 2)加法#i=#j+#k 编程格式G65 H02 P#i Q#j R#k 例G65 H02 P#101 Q#102 R#103;(#101=#102+#103) 3)减法#i=#j-#k 编程格式G65 H03 P#i Q#j R#k 例G65 H03 P#101 Q#102 R#103;(#101=#102-#103) 4)乘法#i=#j×#k 编程格式G65 H04 P#i Q#j R#k 例G65 H04 P#101 Q#102 R#103;(#101=#102×#103) 5)除法#i=#j / #k 编程格式G65 H05 P#i Q#j R#k 例G65 H05 P#101 Q#102 R#103;(#101=#102/#103) 6)平方根#i= 编程格式G65 H21 P#i Q#j 例G65 H21 P#101 Q#102;(#101= ) 7)绝对值#i=│#j│ 编程格式G65 H22 P#i Q#j 例G65 H22 P#101 Q#102;(#101=│#102│) 8)复合平方根1 #i= 编程格式G65 H27 P#i Q#j R#k 例G65 H27 P#101 Q#102 R#103;( #101= 9)复合平方根2 #i= 编程格式G65 H28 P#i Q#j R#k 例G65 H28 P#101 Q#102 R#103 1)逻辑或#i=#j OR #k 编程格式G65 H11 P#i Q#j R#k 例G65 H11 P#101 Q#102 R#103;(#101=#102 OR #103) 2)逻辑与#i=#j AND #k 编程格式G65 H12 P#i Q#j R#k 例G65 H12 P#101 Q#102 R#103;#101=#102 AND #103 (3)三角函数指令 1)正弦函数#i=#j×SIN(#k) 编程格式G65 H31 P#i Q#j R#k (单位:度) . 例G65 H31 P#101 Q#102 R#103;(#101=#102×SIN(#103)) 2)余弦函数#i=#j×COS(#k) 编程格式G65 H32 P#i Q#j R#k (单位:度) 例G65 H32 P#101 Q#102 R#103;(#101=#102×COS(#103)) 3)正切函数#i=#j×TAN#k 编程格式G65 H33 P#i Q#j R#k (单位:度) 例G65 H33 P#101 Q#102 R#103;(#101=#102×TAN(#103)) 4)反正切#i=A TAN(#j/#k) 编程格式G65 H34 P#i Q#j R#k (单位:度,0o≤ #j ≤360o) 例G65 H34 P#101 Q#102 R#103;(#101=A TAN(#102/#103) (4)控制类指令 编程格式G65 H80 Pn (n为程序段号) 例G65 H80 P120;(转移到N120) 2)条件转移1 #j EQ #k(=) 编程格式G65 H81 Pn Q#j R#k (n为程序段号) 例G65 H81 P1000 Q#101 R#102 当#101=#102,转移到N1000程序段;若#101≠ #102,执行下一程序段。 3)条件转移2 #j NE #k(≠) 编程格式G65 H82 Pn Q#j R#k (n为程序段号) 例G65 H82 P1000 Q#101 R#102 当#101≠ #102,转移到N1000程序段;若#101=#102,执行下一程序段。 4)条件转移3 #j GT #k (> ) 编程格式G65 H83 Pn Q#j R#k (n为程序段号) 例G65 H83 P1000 Q#101 R#102 当#101 > #102,转移到N1000程序段;若#101 ≤#102,执行下一程序段。 5)条件转移4 #j LT #k(<) 编程格式G65 H84 Pn Q#j R#k (n为程序段号) 例G65 H84 P1000 Q#101 R#102 当#101 < #102,转移到N1000;若#101 ≥ #102,执行下一程序段。 6)条件转移5 #j GE #k(≥) 编程格式G65 H85 Pn Q#j R#k (n为程序段号) 例G65 H85 P1000 Q#101 R#102 当#101≥ #102,转移到N1000;若#101<#102,执行下一程序段。 7)条件转移6 #j LE #k(≤) 编程格式G65 H86 Pn Q#j Q#k (n为程序段号) 例G65 H86 P1000 Q#101 R#102 当#101≤#102,转移到N1000;若#101>#102,执行下一程序段。 二、B类宏程序 1.定义 #I=#j 2.算术运算 #I=#j+#k (加) #I=#j-#k (减) #I=#j×#k (乘) #I=#j/#k (除) 3.1 逻辑函数之布尔函数 =EQ等于 ≠NE不等于 >GT大于 ]GOTO n 条件式:例:#j=#k用#j EQ #k 表示,即IF[#j EQ #k] GOTO n 3〉.条件转移2格式:IF[<条件式>]THEN #I 例:IF[#j EQ #k] THEN #a=#b 4〉.循环格式:WHILE [<条件式>] DOm ,(m=1、2、3) N10~~~~~~~~~ N20~~~~~~~~~~~~ ENDm (上下两个m只能为1、2、3且必须相 同,这样才能够成一段程序的循环) 1.说明1) 角度单位为度例:90度30分为90.5度 2) A TAN函数后的两个边长要用“1”隔开例:#1=A TAN[1]/[-1]时,#1为了35.0 3) ROUND用于语句中的地址,按各地址的最小设定单位进行四舍五入 例:设#1=1.2345,#2=2.3456,设定单位1μm G91X-#1;X-1.235 X-#2F300;X-2.346 X[#1+#2];X3.580 未返回原处,应改为X[ROUND[#1]+ROUND[#2]]; 4) 取整后的绝对值比原值大为上取整,反之为下取整例:设#1=1.2,#2=-1.2时若#3=FUP[#1]时,则#3=2.0 若#3=FIX[#1]时,则#3=1.0 若#3=FUP[#2]时,则#3=-2.0 若#3=FIX[#2]时,则#3=-1.0 5) 简写函数时,可只写开头2个字母例:ROUND→RO FIX→FI GOT O→GO 6) 优先级函数→乘除(*,1,AND)→加减(+,-,OR,XOR)例:#1=#2+#3*SIN[#4]; 7) 括号为中括号,最多5重,园括号用于注释语句例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重) 转移与循环指令

办公高手EXCEL常用宏命令

办公高手.EXCEL常用宏命令 1 设置打开时弹出对话框的命令举例: Sub AUTO_OPEN() "输入打开工作表时要运行的代码或宏" End Bub 2 设置关闭时弹出对话框的命令举例: Sub AUTO_CLOSE() "输入关闭工作表时要运行的代码或宏" End Bub 3 设置提示框举例: MsgBox prompt:="温馨提示:您要打开的工作表有保护!", Buttons:=vbOKOnly, Title:="谷子提示" i = MsgBox("系统提供不同服务,是否浏览资费信息?", vbYesNoCancel, "谷子提示:") If i = vbYes Then MsgBox "资费信息:********", , "谷子提示" Else "输入要运行的代码" End If 4、提示框内容过长,换行vbNewLine: MsgBox "您本次访问系统的时间是:" & Date & " " & Time & vbNewLine & "系统离到期日还剩余:" _ & DateDiff("d", Now, "2010-12-31") & " 天!" & vbNewLine & "是否查阅到期日说明?", vbYesNoCancel, "时间和到期日提示:" 5 提示提示系统的日期和时间:

MsgBox "系统当前日期和时间:" & Date & " " & Time, , "时间提示" DateDiff("d", Now, "2010-10-31") & " 天!" ‘提示离指定日期的剩余天数 6 系统时间判断命令: Sub 判断时间测试() If Date > "2010-05-20" Then MsgBox "对不起,测试期间已经结束", , "谷子提示" Else Sheets("首页").Select '或其他命令 End If End Sub 7 禁止保存或另存的命令: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) MsgBox ("禁止保存") Cancel = True '或thisworkbook.saved=true End Sub 8 保护工作表与撤销保护 Sheet2.Protect Password:="123456", DrawingObjects:=True, Contents:=True, Scenarios:=True '保护工作表SHEET2 Sheet2.Unprotect ("123456") '解除保护 9 保护工作簿与撤销保护 ActiveWorkbook.Protect Structure:=True, Windows:=False, Password:="123" ActiveWorkbook.Unprotect Password:="123" 10 保护全部工作表

相关主题
文本预览
相关文档 最新文档