Excel按钮调用宏

8/26/2008来源:Excel教程人气:39498

今天我们用动画的形式介绍在Excel中用按钮调用“宏”的方法和技巧。

如果宏对所有工作簿文档有效,建议大家在工具栏上添加一个命令按钮,用来调用宏。

操作方法如下:

1、执行“工具→自定义”命令,打开“自定义”对话框。
2、切换到“命令”标签下,在“类别”下面选中“宏”,然后将右边“命令”区域中的“自定义按钮”选项拖到工具栏合适位置上。
3、单击“更改所选内容”按钮,在随后弹出的快捷菜单中,将“命名”右侧方框中的字符修改为按钮对应的字符(如“删除”),并选中“总是用文字”选项。
4、右击上述添加的按钮,在随后弹出的快捷菜单中,选择“指定宏”选项,打开“指定宏”对话框,选中需要调用的宏,确定返回。
5、关闭“自定义”对话框,按一上工具栏上的按钮测试一下

宏按钮设置

表头的设定

一、表头三行打印到每页这样操作:点“文件/页面设置/工作表”,在出现界面,点打印标题之顶端标题行框内右边小红箭头,将顶端三行选中,确定即可。

表尾的设置

默认最后一行为表尾,最后一行后不能有任何内容,点击上边的自定义的按钮调用宏,给没有页面添加一个页尾.

按钮只能点击一次,否则出现打印页面仅有页尾的情况

以下仅试用正规纸张的打印,不正规的稍加修改就可以实现批量打印的功能

代码:

Dim long_all As Integer, width_all As Integer '纸张的大小    Dim zleftMargin As Integer, zrightMargin As Integer, zTopMargin As Integer   '页边距    Dim zBottomMargin As Integer, zHeaderMargin As Integer, zFooterMargin As Integer '页眉页脚    Dim z_sum As Integer, head_long As Integer, all_row As Integer '内容的长度表头的长度总行数    Dim foot_long As Integer    Dim pagesize As Integer, Orientation As Integer '纸张类型打印横向还是纵向    Dim title As String, start_head As Integer, end_head As Integer '表头开始行表头结束行    ‘这里添加自动调整行高的代码(下边有代码)    title = ActiveSheet.PageSetup.PRintTitleRows    end_head = Mid(title, 5) '表头结束位置从1开始的        all_row = ActiveSheet.UsedRange.Rows.Count '总的可用排数        Orientation = ActiveSheet.PageSetup.Orientation    pagesize = ActiveSheet.PageSetup.PaperSize........................如果出来的页边距过大,请调整好 页眉(越小越好,不可以负数) 页脚(越小越好,不可以负数) 上边距 下边距自行调整

 

反复测试时请删除掉页脚数据,然后单击删除分页符号,excel将回复到原来的默认的打印样式,再次可以测试分页情况

注:纵向有单元格合并的不适用,稍加些改就可以了