2.双击“ThisWorkBook”字样,光标进入了代码编辑区。

3.可直接贴入如下代码:

Private Sub Workbook_Open()
Dim iCount As Integer
Dim MyPrintArea As String


iCount = ActiveWindow.ActiveSheet.UsedRange.Rows.Count
MyPrintArea = "$A$1:$L$" & iCount
Range("$A$1:$L$" & iCount).Select
Selection.Columns.AutoFit
Range("A8").Select
ActiveSheet.PageSetup.PrintArea = MyPrintArea
End Sub

4.保存xls,关闭VBA即可。

若还有其它好办法,请各位赐教。

<br />说明:本设置是实现Excel在一打开的瞬间便实现自动设置打印区域功能。<br /> <br /> <br />假设本Excel的格式是:<br />1.标题是从第一行至第七行;列是从第A列至L列<br />2.从第八行开始,便是动态变化的行数据<br /> <br />那么,要设置本动态Excel的打印区域:<br />1.打开Excel,鼠标右键Sheet名,点选“查看代码”。<br />2.双击“ThisWorkBook”字样,光标进入了代码编辑区。<br />3.可直接贴入如下代码:<br 01047利用GetOpenFilename方法获取文件名 01048利用GetOpenFilename方法获取某类型文件名 01049改变GetOpenFilename方法的默认路径 01050改变GetOpenFilename方法的标题文字 01051 使用 GetOpenFilename方法时出现错误的处理 01052利用GetSaveAsFilename方法获取文件名 01053利用CentimetersToPoints方法将计量单位从cm转换为磅 01054利用InchesToPoints方法将计量单位从in转换为磅 01055显示 Excel 内置对话框 01056显示常用的 Excel 内置对话框 01057获取 Excel 菜单栏信息 01058获取 Excel 图表工具栏信息 01059获取 Excel 常用工具栏信息 01060获取 Excel 格式工具栏信息 01061获取 Excel 数据透视表工具栏信息 01062获取 Excel 的Web工具栏信息 01063获取 Excel 审阅工具栏信息 01064获取 Excel 窗体工具栏信息 01065获取 Excel 外部数据工具栏信息 01066获取 Excel 公式审核工具栏信息 01067获取 Excel 控件工具箱工具栏信息 01068获取 Excel 绘图工具栏信息 01069获取 Excel 命令按钮的外观图像和FaceID号(添加到自定义工具栏) 01070获取 Excel 命令按钮的外观图像和FaceID号(输出到工作表) 01071改变 Excel 命令按钮的外观图像 01072删除、恢复 Excel 菜单栏和工具栏 01073隐藏 Excel 菜单栏和工具栏 01074显示 Excel 默认的菜单栏和工具栏 01075执行菜单栏和工具栏的命令按钮 01076改变工作表单元格的快捷菜单 01077在工作表的任意位置快速显示快捷菜单 01078在单元格中输入公式 01079在单元格中输入数字 01080在单元格中输入文本 01081单元格 区域 引用 01082在单元格中输入数字和文本 01083为输入对话框 设置 默认值 01084在指定时间运行程序(之一) 01085在指定时间运行程序(之二) 01086计划在未来运行一定时间的宏 01087计划每隔一段时间运行宏 01088取消以前计划运行的宏 01089结束应用程序 02001通过索引指定工作簿 02002通过名称指定工作簿 02003引用当前的活动工作簿 02004引用最后打开的工作簿 02005引用当前宏代码运行的工作簿 02006引用新建的工作簿 02007引用包含特定工作表的工作簿 02008判断工作簿是否已经打开(之一) 02009判断工作簿是否已经打开(之二) 02010判断工作簿是否已经保存(之一) 02011判断工作簿是否已经保存(之二) 02012判断工作簿是否为以只读方式打开的 02013判断工作簿是否为加载宏工作簿 02014获取所有打开的工作簿名称 02015获取当前活动工作簿的名称 02016获取当前宏代码运行的工作簿名称 02017获取所有打开的工作簿路径 02018获取当前活动工作簿的路径 02019获取当前宏代码运行的工作簿路径 02020获取包括完整路径的工作簿名称 02021获取工作簿的基本名称 02022获取工作簿的文档属性 02023获取工作簿的保护状态 02024判断工作簿是否创建了自定义工具栏 02025将工作簿设定为已保存 02026将工作簿设定为加载宏工作簿或解除加载宏 02027设定工作簿的文档属性信息 02028通过指定文件名打开工作簿 02029通过指定索引打开工作簿 02030通过对话框打开工作簿(之一) 02031通过对话框打开工作簿(之二) 02032在不更新链接的情况下打开工作簿 02033新建工作簿,并以新名称保存 02034保护工作簿 02035撤销工作簿保护 02036保存工作簿 02037另存工作簿 02038设定保护密码并另存工作簿 02039设定写保护密码并另存工作簿 02040保存工作簿副本 02041通过对话框指定文件名和保存位置并保存工作簿(之一) 02042通过对话框指定文件名和保存位置并保存工作簿(之二) 02043关闭工作簿,不保存 02044关闭工作簿前进行保存 02045关闭所有打开的工作簿,不保存 02046关闭所有打开的工作簿,保存所有更改 02047删除工作簿中所有定义的名称 02048引用当前工作簿窗口 02049引用新建的工作簿窗口 02050引用特定工作簿的窗口 02051获取工作簿窗口的拆分状态 02052获取工作簿窗口的窗格信息 02053获取工作簿窗口的冻结窗格状态 02054获取工作簿窗口的各种显示状态 02055获取工作簿窗口的大小状态 02056改变工作簿窗口的大小 02057改变工作簿窗口的显示位置 02058拆分窗口并冻结窗格 02059取消工作簿窗口的拆分和冻结 02060设定工作簿窗口的各种显示状态 02061设定工作簿窗口的显示比例 02062隐藏、显示工作簿窗口 02063将指定的单元格显示在窗口的左上角 02064 设置 工作簿窗口的网格线颜色 02065新建窗口 02066重排窗口 02067关闭窗口 03001通过索引引用工作表 03002通过名称引用工作表 03003通过Sheets集合引用工作表 03004引用当前活动工作表 03005引用第一个工作表 03006引用最后一个工作表 03007引用所有的工作表 03008引用指定的多个工作表 03009引用新建的工作表 03010引用包含特定单元格的工作表 03011引用工作表名称中包含特定字符串的工作表 03012获取工作表名称 03013获取全部工作表名称 03014判断某个表是否为工作表 03015获取工作表的显示状态 03016获取工作表的保护状态 03017判断工作表是否处于筛选模式 03018判断工作表是否存在(之一) 03019判断工作表是否存在(之二) 03020判断工作表是否 自动 重新计算 03021判断工作表被保护时是否可以进行 自动 筛选的操作 03022判断工作表被保护时是否启用分级显示符号 03023判断工作表被保护时是否启用数据透视表控件和操作 03024判断工作表被保护时是否可以选定单元格 03025重命名工作表 03026重命名新建的工作表 03027改变工作表标签颜色 03028 设置 工作表的显示状态 03029 设置 工作表是否 自动 重新计算 03030设定工作表被保护时是否可以进行 自动 筛选的操作 03031设定工作表被保护时是否启用分级显示符号 03032设定工作表被保护时是否启用数据透视表控件和操作 03033设定工作表被保护时是否可以选定单元格 03034新建工作表并重命名 03035复制工作表 03036移动工作表 03037删除工作表 03038保护工作表 03039撤销保护工作表 03040按工作表名称重新排列工作表 03041选定工作表 03042激活工作表 03043显示选定工作表的快捷菜单 03044删除工作表级的定义名称 03045删除图表工作表 03046显示、隐藏行列标题 04001通过Range属性引用某个单元格 04002通过Range属性引用连续的单元格 区域 04003通过Range属性引用不连续的单元格 区域 04004通过字符串的方式引用某个单元格 04005通过字符串的方式引用连续的单元格 区域 04006通过Range属性引用单列 04007通过Columns属性引用单列 04008通过Range属性引用连续的多列 04009通过Range属性引用不连续的多列 04010通过Range属性引用单行 04011通过Range属性引用连续的多行 04012通过Range属性引用不连续的多行 04013通过定义名称引用单元格 区域 04014引用单元格的快捷方式 04015通过Cells属性引用某个单元格 04016通过Cells属性引用工作表的全部单元格 04017通过Cells属性引用连续的单元格 区域 (之一) 04018通过Cells属性引用连续的单元格 区域 (之二) 04019通过输入框(InputBox)引用所选择的单元格 04020引用活动单元格 04021引用已选定的单元格 04022引用已 使用 的单元格 区域 04023引用被空白行和列包围的单元格 区域 04024利用Offset属性 动态 引用某个单元格 04025利用Offset属性 动态 引用单元格 区域 04026利用Resize属性引用变更为指定大小的单元格 区域 04027引用不包括标题行的单元格 区域 04028引用不包括标题列的单元格 区域 04029引用任意单元格 区域 的右下角单元格(之一) 04030引用任意单元格 区域 的右下角单元格(之二) 04031引用输入了计算公式的所有单元格 04032引用输入了常量的全部单元格 04033引用输入了数字的全部单元格 04034引用输入了文本的全部单元格 04035引用输入了逻辑值的全部单元格 04036引用输入了批注的全部单元格 04037引用没有输入任何数据和公式的空单元格 04038引用所有可见单元格 04039引用输入了日期的单元格 04040引用含有相同计算公式的所有单元格 04041引用合并单元格 区域 04042引用定义名称所指定的单元格 区域 (之一) 04043引用定义名称所指定的单元格 区域 (之二) 04044引用输入了任何内容的最后一行单元格(单列情况之一) 04045引用输入了公式或值的最后一行单元格(单列情况之二) 04046引用输入了任何内容的最后一行单元格(多列情况之一) 04047引用输入了公式或值的最后一行单元格(多列情况之二) 04048引用输入了任何内容的最后一列单元格(单行情况之一) 04049引用输入了公式或值的最后一列单元格(单行情况之二) 04050引用输入了任何内容的最后一列单元格(多行情况之一) 04051引用输入了公式或值的最后一列单元格(多行情况之二) 04052引用多个非连续单元格 区域 的集合(Union方法) 04053引用多个非连续单元格 区域 的集合(循环处理) 04054引用多个单元格 区域 的交叉 区域 04055获取计算公式的所有引用单元格 04056获取计算公式中引用的其他工作表单元格 04057获取某个单元格的从属单元格 04058引用某个单元格所在的整个行 04059引用某个单元格所在的整个列 04060引用单元格 区域 所在的行范围 04061引用单元格 区域 所在的列范围 04062引用隐藏的行或列 04063引用单元格 区域 中未隐藏的单元格 04064引用锁定的单元格 04065引用不连续单元格 区域 集合内的各个连续的单元格 区域 04066引用工作簿窗口范围内所有的单元格 04067引用设定了允许滚动 区域 的单元格 区域 04068引用指定了左上角和右下角的单元格 区域 (之一) 04069引用指定了左上角和右下角的单元格 区域 (之二) 04070引用指定了左上角和右下角的单元格 区域 (之三) 04071引用以单一编号指定的单元格 04072引用工作表中任意对象左上角、右下角的单元格 04073引用输入了数组公式的所有单元格 区域 04074引用输入了某数组公式的单元格 区域 04075引用输入了某个函数的全部单元格 04076引用含有特定文本字符串的所有单元格 04077引用 设置 了数据有效性的所有单元格 04078获取单元格地址 04079获取单元格 区域 内的单元格数 04080获取单元格 区域 的行数 04081获取单元格 区域 的列数 04082获取单元格的行号 04083获取单元格的列号 04084获取单元格的列标字母 04085获取指定列号单元格的列标字母(之一) 04086获取指定列号单元格的列标字母(之二) 04087获取单元格 区域 的行号范围 04088获取单元格 区域 的列号范围 04089获取单元格 区域 的列标字母范围 04090获取数据 区域 的最后一行行号 04091获取数据 区域 的最前一行行号 04092获取数据 区域 的最后一列列号 04093获取数据 区域 的最前一列列号 04094获取单元格的任何显示值 04095获取单元格的显示字符串 04096获取单元格文本字符串的一部分(之一) 04097获取单元格文本字符串的一部分(之二) 04098获取单元格内输入的公式 04099判断单元格内是否输入了公式(之一) 04100判断单元格内是否输入了公式(之二) 04101判断工作表内是否有公式 04102判断某单元格 区域 是否为数组公式 区域 04103判断工作表内是否有数组公式 04104判断单元格的计算公式是否引用了其他工作表数据 04105判断单元格的计算公式是否引用了其他工作簿数据 04106判断某单元格是否为合并单元格 区域 的一部分 04107获取单元格 区域 内的值,并使其矩阵化 04108获取单元格内的前缀字符 04109判断单元格内的数字是否为文本字符 04110获取单元格的格式 04111获取单元格的字体(Font)对象 04112获取单元格的内部(Interior)对象 04113获取单元格的边框(Borders)对象 04114获取单元格边框线的状态 04115获取单元格的样式(Style)对象 04116获取单元格的条件格式 04117获取单元格的输入规则(有效性 设置 ) 04118获取单元格的超链接 04119获取单元格的批注 04120获取单元格的大小(行高和列宽) 04121获取单元格的坐标 04122向单元格输入数值 04123向单元格输入字符串 04124向单元格输入数字字符串 04125向单元格输入日期 04126向单元格输入时间 04127向单元格输入分数 04128向单元格输入邮政编码 04129向连续的单元格行 区域 一次性输入不同的数据 04130向连续的单元格列 区域 一次性输入不同的数据 04131向单元格 区域 一次性输入相同的数据 04132通过数组向单元格 区域 一次性输入数据 04133向单元格 区域 输入连续值 04134向单元格 区域 输入连续的日期 04135向单元格 区域 输入连续的字符 04136向单元格输入公式(A1格式) 04137向单元格输入公式(R1C1格式) 04138向单元格或单元格 区域 输入数组公式 04139替换单元格内的字符(Replace方法) 04140替换单元格内的字符(工作表函数) 04141 设置 单元格字符串中一部分字符的格式(上标、下标) 04142 设置 单元格字符串中一部分字符的格式(其他字体属性) 04143 设置 单元格的下画线 04144 设置 单元格的字体属性(字体、字号、加粗、斜体、颜色等) 04145 设置 单元格 区域 的外部边框 04146 设置 单元格 区域 的全部边框 04147 设置 单元格 区域 的除对角框线以外的全部边框 04148删除单元格 区域 的全部边框 04149 设置 单元格的颜色和背景 04150 设置 单元格的格式 04151 设置 单元格的对齐方式 04152缩小单元格内容以全部显示 04153设定、删除单元格的输入规则和信息提示(有效性 设置 ) 04154为单元格 设置 条件格式、删除条件格式 04155为单元格插入指向工作簿内部的超链接、删除超链接 04156为单元格插入指向工作簿外部的超链接、删除超链接 04157为单元格添加批注、删除批注 04158修改单元格的批注 04159为单元格 区域 定义名称、删除名称(Name属性) 04160为单元格 区域 定义名称、删除名称(Add方法) 04161 自动 调整单元格大小 04162 自动 调整工作表全部单元格的大小 04163 设置 单元格的大小(以磅为单位) 04164 设置 单元格的大小(以cm为单位) 04165 设置 单元格的大小(以in为单位) 04166锁定单元格、解除单元格锁定 04167隐藏单元格的公式 04168隐藏、显示某单元格所在的行或列 04169隐藏、显示单元格 区域 04170单元格 区域 自动 套用格式 04171选定单元格 04172选定单元格,并显示在窗口的左上角处 04173激活单元格 04174合并单元格 04175取消单元格的合并 04176清除单元格的全部信息 04177清除单元格的公式和值 04178清除单元格的批注 04179清除单元格的格式 04180清除单元格的批注和语音批注 04181清除单元格的超链接 04182插入单元格 04183插入整行或整列 04184删除单元格 04185删除某单元格所在的整行或整列 04186删除多行或多列 04187删除工作表的全部单元格 04188移动单元格 04189复制单元格(复制全部内容) 04190复制单元格的值(PasteSpecial方法) 04191复制单元格的值(Value属性) 04192复制单元格的数据和公式(去掉前缀字符) 04193复制单元格的数据和公式(保留前缀字符) 04194复制单元格的格式 04195复制单元格的批注 04196复制单元格的有效性 设置 04197复制单元格的列宽 04198复制单元格的公式和数字格式 04199复制单元格的值和数字格式 04200转置复制单元格 区域 04201复制单元格的边框 04202对单元格进行加减乘除运算 04203将单元格 区域 作为图像对象进行复制(无链接) 04204将单元格 区域 作为图像对象进行复制(有链接) 04205复制大小可变的单元格 区域 05001获取嵌入图表的名称 05002获取图表工作表的名称 05003获取图表的某个系列的数据源 05004获取图表的全部系列的数据源 05005获取图表的标题信息 05006获取图表的图例信息 05007获取图表的位置 05008获取图表的大小 05009获取图表的坐标轴信息 05010获取图表的趋势线信息 05011获取工作表中的全部嵌入图表名称和类型 05012制作图表 05013制作多个图表 05014对多个图表进行合理布置 05015制作能够选择任意图表类型的图表 05016制作能够随数据数量变化而变化的图表 05017改变图表的源数据 区域 05018更改图表的名称 05019更改图表的类型 05020更改图表的标题格式 05021更改图表的图例格式 05022改变图表的大小 05023 设置 绘图区的格式 05024 设置 图表区的格式 05025 设置 坐标轴的格式 05026为图表添加趋势线 05027将嵌入图表显示在图表视窗中 05028将图表保存为图像文件 05029将图表放置在批注中 05030将图表图像加载到工作表中 05031删除图表 06001获取Shape对象的类型 06002获取Shape对象的名称 06003获取Shape对象的文字 06004获取Shape对象的大小 06005获取Shape对象的位置 06006获取Shape对象的左上角、右下角单元格地址 06007获取工作表内全部Shape对象的基本信息 06008判断Shape对象是否指定了宏 06009插入Shape对象(一般方法) 06010插入Shape对象并指定名称 06011插入Shape对象并添加文字 06012插入Shape对象并指定宏 06013插入自选图形对象 06014更改Shape对象的文字 06015更改Shape对象的大小 06016更改Shape对象的位置 06017选择任意的Shape对象 06018对Shape对象进行群组化处理 06019移动、旋转Shape对象(制作动画) 06020将Shape对象固定在工作表的某一位置 06021删除Shape对象 06022 设置 Shape对象大小和位置是否随单元格而改变 06023使Shape对象充满整个单元格 区域 06024为Shape对象插入超链接 06025利用透明的Shape对象保护单元格 07001获取工作表中所有的 Excel 窗体控件清单 07002插入 Excel 窗体控件(之一) 07003插入 Excel 窗体控件(之二) 07004插入 Excel 窗体控件并指定名称 07005在 Excel 窗体控件上 设置 文字(标签、按钮、单选按钮和复选框) 07006 设置 Excel 窗体控件的颜色和线条 07007更改 Excel 窗体控件大小 07008更改 Excel 窗体控件的位置 07009选定或取消选定单选按钮和复选框 07010为列表框和组合框 设置 项目(指定单元格 区域 ) 07011为列表框和组合框 设置 项目( 使用 AddItem方法) 07012为列表框和组合框 设置 项目( 使用 List属性) 07013为列表框和组合框 设置 单元格链接 07014获取列表框和组合框的项目值 07015当选定列表框和组合框某个项目时立即得到项目值 07016一次性插入多个 Excel 窗体控件并指定不同的宏 07017每单击一次 Excel 窗体控件,就改变背景颜色或字体颜色 07018获取工作表中所有的ActiveX控件清单 07019在工作表中插入ActiveX控件对象 07020在工作表中插入ActiveX控件对象并重命名 07021引用ActiveX控件(利用Shape对象) 07022引用ActiveX控件(利用OLEObject对象) 07023 设置 ActiveX控件上的文字 07024 设置 ActiveX控件的前景和背景 07025 设置 ActiveX控件对象的位置 07026更改ActiveX控件对象的大小 07027 设置 、获取文本框的值 07028为列表框和组合框添加项目值(指定单元格 区域 ) 07029为列表框和组合框 设置 项目( 使用 AddItem方法) 07030为列表框和组合框 设置 项目( 使用 List属性) 07031获取列表框和组合框的项目值 07032在列表框和组合框中选定项目后立即得到所选项目值 07033 设置 单选按钮和复选框的值(是否选定) 07034取得单选按钮和复选框的值(选定状态) 07035 设置 切换按钮的值 07036取得切换按钮的值 07037 设置 微调按钮的值 07038获取微调按钮的值 07039 设置 滚动条的值 07040获取滚动条的值 07041 设置 、获取标签的标题文字 07042 设置 、获取框架的标题文字 07043在图像控件中显示、清除图片 07044以无模式状态显示用户窗体 07045将用户窗体显示在窗口的指定位置(之一) 07046将用户窗体显示在窗口的指定位置(之二) 07047改变用户窗体的大小 07048改变用户窗体的标题文字 07049将用户窗体显示在上次关闭时的位置上 07050在工作表中同时显示多个窗体 07051禁止以窗体右上角的按钮【×】关闭窗体 07052引用窗体中的控件 07053引用窗体中的某一类控件 07054引用窗体中所有的控件 07055引用其他窗体中的控件 07056初始化用户窗体中的所有控件 07057获取被选定的控件的有关信息 07058将控件 设置 为不可操作(显示为灰色) 07059将控件 设置 为不可操作(锁定) 07060使控件隐藏、显示(利用Visible属性) 07061使控件隐藏、显示(利用Top属性和Left属性) 07062当鼠标指针停留在控件上方时显示提示信息 07063当鼠标指针停留在控件上方时改变鼠标指针类型 07064当鼠标指针停留在控件上方时改变鼠标指针的图像 07065 设置 控件的焦点 07066 设置 控件的背景色和前景色 07067 设置 控件的字体格式 07068为控件添加图片 07069 设置 默认按钮 07070 设置 取消按钮 07071在按钮中显示程序运行状态 07072将文本框 设置 为必须输入状态 07073 设置 文本框内字符的对齐方式 07074 设置 文本框内字符的格式 07075限制文本框内的输入值 07076限制文本框内的字符长度 07077限制只能在文本框内输入阿拉伯数字和小数点 07078限制只能在文本框内输入阿拉伯数字、小数点和负号 07079限制只能在文本框内输入英文字母 07080转换文本框内数据类型 07081将文本框内的字符在任意字符后换行 07082将文本框设定为 自动 换行状态 07083为组合框 设置 项目(利用RowSource属性) 07084为组合框 设置 项目(利用AddItem方法) 07085为组合框 设置 项目(利用List属性) 07086为组合框 设置 项目(利用Column属性) 07087获取组合框的项目值(利用Value属性) 07088获取组合框的项目值(利用List属性) 07089获取组合框的项目值(利用Column属性) 07090获取组合框的项目值(利用数组) 07091删除组合框内所有的项目(利用Clear方法) 07092删除组合框内所有的项目(利用RowSource属性) 07093删除组合框内的某个项目(利用RemoveItem方法) 07094取消组合框项目的选定 07095将组合框 设置 为必须选定状态 07096将组合框 设置 为只能从项目列表中选定 07097选定组合框后 自动 弹出项目列表 07098 设置 组合框项目的选择外观 07099为列表框 设置 项目(利用RowSource属性) 07100为列表框 设置 项目(利用AddItem方法) 07101为列表框 设置 项目(利用List属性) 07102为列表框 设置 项目(利用Column属性) 07103获取列表框的项目值(利用Value属性) 07104获取列表框的项目值(利用List属性) 07105获取列表框的项目值(利用Column属性) 07106获取列表框的项目值(利用数组) 07107删除列表框内所有的项目(利用Clear方法) 07108删除列表框内所有的项目(利用RowSource属性) 07109删除列表框内的某个项目(利用RemoveItem方法) 07110取消列表框项目的选定 07111将列表框 设置 为必须选定状态 07112 设置 列表框的单选、多选状态 07113在列表框和文本框之间进行拖曳操作 07114利用标签显示程序运行进程 07115获取框架内所有的控件名称 07116利用框架实现单选按钮的多选 07117获取选定的单选按钮 07118获取选定的复选框 07119实现旋转按钮与文本框的联动 07120实现旋转按钮的反向 自动 变化 07121实现滚动条与工作表滚动条的同步联动 07122 动态 更改切换按钮的标题文字 07123实现多页控件各个页面的 自动 反向切换 07124利用图像控件浏览图像文件 07125向Spreadsheet控件输入数据 07126将 Excel 工作表中的数据输入到Spreadsheet控件中 07127将Spreadsheet控件中的数据输入到 Excel 工作表中 07128利用ChartSpace控件在窗体上绘制 动态 图表 07129利用DTPicker控件获取日期和时间 07130利用ProgressBar控件 设置 进度条 07131利用ListView控件在窗体中制作报表 07132利用TreeView控件在窗体中以树形结构显示数据 07133快速调整用户窗体大小 07134在运行时添加控件 07135删除运行时添加的控件 07136利用标签条(TabStrip控件) 动态 显示数据 07137隐藏、显示用户窗体的【×】按钮 07138将用户窗体的【×】按钮 设置 为有效、无效 07139在用户窗体上增加【最大化】和【最小化】按钮 07140在启动工作簿时仅显示用户窗体,而不显示 Excel 界面 08001当新建工作簿时执行程序(NewWorkbook事件) 08002当激活工作表时执行程序(SheetActivate事件) 08003当双击工作表时执行程序(SheetBeforeDoubleClick事件) 08004当右击工作表时执行程序(SheetBeforeRightClick事件) 08005当对工作表进行计算时执行程序(SheetCalculate事件) 08006当任何单元格的值变更时执行程序(SheetChange事件) 08007当工作表不是活动状态时执行程序(SheetDeactivate事件) 08008当超链接被执行时执行程序(SheetFollowHyperlink事件) 08009当单元格的选择范围变更时执行程序(SheetSelectionChange事件) 08010当任意工作簿窗口被激活时执行程序(WindowActivate事件) 08011当工作簿窗口不是活动窗口时执行程序(WindowDeactivate事件) 08012当活动工作簿窗口被变更时执行程序(WindowResize事件) 08013当工作簿成为活动工作簿时执行程序(WorkbookActivate事件) 08014当工作簿成为非活动工作簿时执行程序(WorkbookDeactivate事件) 08015当工作簿被打开时执行程序(WorkbookOpen事件) 08016当工作簿被关闭时执行程序(WorkbookBeforeClose事件) 08017当工作簿被保存时执行程序(WorkbookBeforeSave事件) 08018当工作簿被 打印 时执行程序(WorkbookBeforePrint事件) 08019当打开工作簿时执行程序(Open事件) 08020当关闭工作簿时执行程序(BeforeClose事件) 08021当激活工作簿时执行程序(Activate事件) 08022当工作簿不是活动状态时执行程序(Deactivate事件) 08023当保存工作簿时执行程序(BeforeSave事件) 08024当 打印 工作簿时执行程序(BeforePrint事件) 08025当新建工作表时执行程序(NewSheet事件) 08026当工作表被激活时执行程序(SheetActivate事件) 08027当工作表不是活动状态时执行程序(SheetDeactivate事件) 08028当工作表被计算时执行程序(SheetCalculate事件) 08029当双击工作表时执行程序(SheetBeforeDoubleClick事件) 08030当右击工作表时执行程序(SheetBeforeRightClick事件) 08031当工作表任何单元格数据发生变更时执行程序(SheetChange事件) 08032激活、非活动工作表时执行程序(Activate事件和Deactivate事件) 08033当对工作表进行计算时执行程序(Calculate事件) 08034当单元格数据发生变化时执行程序(Change事件) 08035当选定单元格 区域 发生变化时执行程序(SelectionChange事件) 08036超链接被执行时执行程序(FollowHyperlink事件) 08037当双击工作表时执行程序(BeforeDoubleClick事件) 08038当在工作表中右击时执行程序(BeforeRightClick事件) 08039当图表被激活和被更改时执行程序(Activate事件) 08040双击图表时执行程序(BeforeDoubleClick事件) 08041在图表上单击或右击时执行程序(MouseDown事件) 08042在选定了图表要素时执行程序(Select事件) 08043在选定了图表要素时执行程序(Select事件) 08044在图表上移动鼠标时执行程序(MouseMove事件) 08045 使用 图表工作表的事件来执行程序 08046装载显示用户窗体时执行程序(Initialize事件) 08047激活用户窗体时执行程序(Activate事件) 08048关闭用户窗体时执行程序(QueryClose事件) 08049单击用户窗体时执行程序(Click事件) 08050单击时执行程序(Click事件) 08051双击时执行程序(DblClick事件) 08052控件值被改变时执行程序(Change事件之一) 08053控件值被改变时执行程序(Change事件之二) 08054在鼠标指针移到控件上面时执行程序(MouseMove事件) 08055在获得焦点前执行程序(Enter事件) 08056在失去焦点且数据有变更时执行程序(BeforeUpdate事件) 08057在数据有变更时执行程序(AfterUpdate事件) 08058在按键时执行程序(KeyPress事件) 08059 Excel 工作表的ActiveX控件对象事件的 使用 示例 09001为现有的菜单控件添加、删除自定义菜单命令 09002在 Excel 菜单栏中创建、删除自定义菜单控件 09003创建、删除多级自定义菜单控件 09004创建、删除自定义主菜单栏 09005在 Excel 工具栏中添加、删除自定义命令按钮 09006在 Excel 工具栏中添加、删除自定义组合框按钮 09007在 Excel 工具栏中添加、删除自定义下拉命令按钮 09008创建、删除自定义工具栏,并指定显示位置 09009创建、删除由内置命令组成的自定义工具栏 09010为 Excel 系统默认的快捷菜单添加、删除新菜单命令 09011为快捷菜单添加、删除内置命令 09012创建一个全新的快捷菜单 09013获取 Excel 的全部快捷菜单信息 09014使 Excel 的快捷菜单无效 09015为用户窗体和控件添加自定义快捷菜单 10001查询数值及公式字符串(Find方法) 10002查询数值及公式结果(Find方法) 10003查询数值及公式结果(Match函数) 10004查询数值及公式结果(VLookup函数) 10005查询数值及公式结果(Find方法和Offset属性) 10006查询数值及公式结果(Collection对象) 10007查询数值及公式结果(DGet函数) 10008查询含有某字符的单元格数据(Like运算符) 10009查询含有某字符的单元格数(CountIf函数) 10010 使用 数据库函数DCountA实现复杂查询 10011从多个工作表或工作簿中查询数据 10012 自动 排序 10013 使用 自定义序列进行排序 10014 使用 多个关键字进行排序 10015先进行排序然后再恢复排序前的状态 10016按照单元格的颜色、字体颜色进行排序 10017按照字符的长度进行排序 10018字母与数字混合情况下的排序 10019对数组的元素值进行排序 10020执行 自动 筛选 10021撤销 自动 筛选 10022执行高级筛选(与条件) 10023执行高级筛选(或条件) 10024撤销高级筛选 10025复制筛选出的数据 10026删除没有出现在筛选结果中的所有行 10027筛选不重复的数据 10028获取两个工作表中相同数据的行数据 10029获取只存在于某个工作表中的行数据 10030删除数据 区域 内的所有空行 10031删除数据 区域 内的所有空列 11001从一个工作表中查询数据(ADO+SQL) 11002从多个工作表中查询数据(ADO+SQL) 11003查询其他工作簿数据(ADO+SQL) 11004利用DAOSQL查询工作簿数据 11005在不打开工作簿的情况下对多个工作簿进行汇总 12001利用DAO对象创建Access数据库和数据表 12002利用ADO对象创建Access数据库和数据表 12003检查数据表是否存在 12004获取数据库中所有的数据表名称 12005检查字段是否存在 12006获取数据库中某数据表的所有字段信息 12007字段类型常量与字段类型英文名称的转换函数 12008将Access数据库的数据全部导入到 Excel 工作表中 12009将Access数据库的某些字段导入到 Excel 工作表中 12010查询不重复的记录(Distinct) 12011查询最前面的若干条记录(Top) 12012利用Like运算符进行模糊查询 12013对查询结果进行排序(Order) 12014查询某一区间内的数据(Between) 12015进行复杂条件的查询(Where) 12016利用合计函数进行查询(查询最大值和最小值) 12017利用合计函数进行查询(查询合计数和平均值) 12018将第一个查询结果作为查询条件进行查询 12019对查询结果进行分组(Group) 12020将查询结果作为窗体控件的源数据 12021添加新记录 12022修改更新记录 12023删除特定的记录 12024删除全部记录 12025通过窗体编辑记录 12026将整个工作表数据都保存为Access数据库 12027将工作表的某些数据保存到Access数据库中 12028将工作表数据保存到已有的Access数据库中(循环方式) 12029为数据表增加字段 12030改变字段的类型 12031改变字段的长度 12032删除一个字段 12033删除一个数据表 13001将TXT格式文本文件打开为工作簿 13002将CSV格式文本文件打开为工作簿 13003利用QueryTables对象导入文本文件(之一) 13004利用QueryTables对象导入文本文件(之二) 13005利用ADO导入文本文件的全部内容 13006利用ADO导入文本文件的部分内容 13007获取文本文件的行数和列数 13008逐行获取文本文件的行数据,并拆分成列 13009将工作表中的全部数据保存为CSV格式文本文件 13010将工作表部分数据保存为CSV格式文本文件 13011创建新的文本文件并写入数据 13012向已有的文本文件写入数据 13013以行为单位读取文本文件数据 13014以字符为单位读取文本文件数据 13015读取文本文件的全部数据 13016读取文本文件的指定行数据 14001调用数学函数 14002调用财务函数 14003调用日期和时间函数 14004调用字符串函数 14005调用强制转换函数 14006调用检查函数 14007调用数组函数 14008 使用 判断函数(IIf函数) 14009 使用 格式函数(Format函数) 14010设计参数可选的自定义函数 14011设计参数个数不确定的自定义函数 14012设计返回数组的自定义函数 14013为自定义函数添加信息提示 14014对自定义函数进行归类 14015快速创建列标题和行标题 14016快速向单元格 区域 输入数据 14017快速获取单元格 区域 数据 14018 使用 数组提高计算效率 14019向单元格输入一般公式 14020向单元格 区域 输入数组公式 14021快速复制公式 14022列举工作簿内所有的公式 14023对指定的单元格 区域 进行计算 14024删除工作表中的所有数据,但保留所有公式 15001按指定次数进行循环(ForNext) 15002在循环过程中退出(ExitFor) 15003不确定次数进行循环(DoLoop) 15004在循环过程中退出(ExitDo) 15005对数组的所有元素进行循环 15006对没有规律性的元素进行循环 15007对集合中的所有对象进行循环 15008进行多重循环 15009判断是否为数值 15010判断是否为日期 15011判断是否为数组 15012判断是否为对象 15013判断变量中是否保存有对象 15014判断程序是否有错误 15015判断字母的大小写 15016判断字符的全角和半角 15017 使用 SelectCase进行多条件处理(数值区间) 15018 使用 SelectCase进行多条件处理(关键字Is) 15019 使用 SelectCase进行多条件处理(Like运算符) 16001 设置 、取消 打印 区域 (固定 区域 ) 16002 设置 、取消 打印 区域 (不固定 区域 ) 16003 设置 、取消 打印 区域 (全部工作表) 16004 设置 打印 列标题和行标题 16005 设置 页边距(以磅为单位) 16006 设置 页边距(以in为单位) 16007 设置 页边距(以cm为单位) 16008 设置 页眉 16009 设置 页脚 16010 设置 页面的水平、垂直居中位置 16011 设置 纵向或横向 打印 模式 16012 设置 打印 纸张大小 16013将工作表的全部数据都缩印在一页内 16014 设置 打印 行号、列标和网格线 16015显示 打印 预览 16016 打印 工作表 16017在任意位置 设置 换页 16018获取 打印 总页数 16019显示 打印 设置 对话框 16020显示 打印 内容对话框 16021显示页面 设置 对话框 16022显示分页预览 16023隔页 打印 工作表 16024 设置 是否 打印 工作表中的Shape对象 17001获取 VBA 工程信息资料 17002 设置 VBA 工程信息资料 17003获取工程中所有的对象名称和类型 17004更改模块和用户窗体的名称 17005导出模块和用户窗体 17006导入模块和用户窗体 17007清除立即窗口内容 17008获取对象中所有定义的变量 17009获取对象中所有过程的名称 17010获取引用的项目信息 17011增加引用项目 17012取消引用项目 17013利用 VBA 插入用户窗体和控件,并为控件编写事件程序代码 17014利用 VBA 插入标准模块并写入程序代码 17015利用 VBA 插入类模块 18001获取文件夹内的所有文件(FileSearch) 18002获取文件夹内的某一类型的所有文件(FileSearch) 18003获取文件夹内的所有文件(Dir函数) 18004判断文件是否存在 18005复制文件 18006移动文件 18007删除文件 18008重命名文件 18009获得文件的修改日期和时间 18010获得文件大小 18011获取文件的属性 18012 设置 文件的属性 18013获取当前驱动器的名称 18014变更当前驱动器的名称 18015判断文件夹是否存在 18016创建文件夹 18017获取当前的文件夹 18018移动文件夹 18019删除文件夹 18020更改文件夹名 18021获取文件夹的属性 18022判断文件是否存在(FileExists) 18023复制文件(CopyFile) 18024删除文件(DeleteFile) 18025移动文件(MoveFile) 18026获取文件的属性(Attributes) 18027获取文件的信息资料(GetFile) 18028获取文件的基础名称(GetBaseName) 18029获取文件的扩展名(GetExtensionName) 18030获取文件的全名(GetFileName) 18031获取文件所在的文件夹名(GetParentFolderName) 18032获取文件所在的驱动器名(GetDriveName) 18033获取文件夹内的所有文件清单 18034判断文件夹是否存在(FolderExists) 18035复制文件夹(CopyFolder) 18036删除文件夹(DeleteFolder) 18037移动文件夹(MoveFolder) 18038创建文件夹(CreateFolder) 18039获取文件夹的属性(Attributes) 18040获取文件夹的信息资料(GetFolder) 18041获取文件夹中的所有子文件夹名(SubFolders) 18042获取特定文件夹的路径(GetSpecialFolder) 18043判断驱动器是否存在(DriveExists) 18044获取所有可以 使用 的驱动器清单(Drives) 18045获取驱动器的信息资料(GetDrive) 19001创建新的Word文档(前绑定) 19002创建新的Word文档(后绑定) 19003打开已有的Word文档(前绑定) 19004打开已有的Word文档(后绑定) 19005将Word文档内容复制到工作表 19006将工作表数据复制到Word文档中 19007创建新的PowerPoint文档 19008打开已有的PowerPoint文档(前绑定) 19009打开已有的PowerPoint文档(后绑定) 19010以 Excel 工作表数据为基础制作PowerPoint幻灯片 19011将 Excel 工作表的图表复制到PowerPoint幻灯片中 19012按工作表中的地址发送邮件(前绑定) 19013将工作簿作为附件发送邮件(前绑定) 20001打开记事本(Shell函数) 20002打开计算器 20003以指定的文件夹打开Windows资源管理器 20004打开控制面板的某个项目窗口 20005创建文件的快捷方式 20006从 Excel 启动指定的网页 20007建立Web查询 20008定时刷新Web查询 20009利用OutlookExpress发送邮件 20010获取显示器分辨率 20011利用 VBA 播放声音
我们在工作中经常会 打印 东西,会手动 设置 一些参数,如横向或竖向 打印 等。了解下PageSetup属性,用简短的几行代码 设置 打印 参数,便可以 设置 一次,永久 使用 ,方便高效。 PageSetup对象代表页面 设置 说明。包含所有页面 设置 的属性(左边距、底部边距、纸张大小等)。 下例将 打印 方向 设置 为横向,然后 打印 工作表。 With Worksheets("Sheet1") .PageSetup...
Sub 重组跨页合并() '将跨页的合并单元格重新合并从而适应分页 打印 Dim p, MerageAddress As String , PageCell As Range, MergeValue Application.ScreenUpdating = False ActiveWindow.View = xlPageBreakPreview '进入分页预览,
VBA 应用程序由一系列的 VBA 代码组成,这些代码将按照一定的顺序执行。有时程序根据一定的条件只能执行某一部分代码,有时需要重复执行某一段代码。通过程序结构控制代码来完成这些功能,本章介绍这些程序控制流程方面的技巧。 3.1  常用输入/输出语句结构化程序设计中 使用 的基本控制结构有3种:顺序结构、选择结构和循环结构。顺序结构就是按照语句的书写顺序从上到下、逐条语句地执行。执行时,编写在前面的代
使用 说明 单据录入:1、在〈 打印 >手工录入单号;2、日期会 自动 生成当天日期;3、在客户名称填写栏直接选择客户;选定客户后、客户地址、电话、联系人、付款方式会 自动 依据《客户资料》生成;4、在商品编码那里选择编码,商品名称、规格、单位、单价会依据《产品信息》 自动 生成;5、手工录入商品数量、金额 自动 生成;工作表 设置 了工作表保护,要修改单元格格式请到工具_保护那里撤消保护. 单据保存:单据填完后,点击下方《保存到单据查询》,单据就会 自动 保存到《单据查询》表内; 单据查询: 打印 以后,要翻查以前 打印 过的单据,到《单据查询》那里可以要到相关信息; 单据 打印 :已 设置 打印 区域 ,单据录完后,直接点击上面的 打印 按钮进行 打印 ; 新增单据:填完一个单据,再填新单时;点击下方〈新增单据〉按钮; 删除单据:在〈单据查询〉表内,将相同单号的条目删除即可; 修改单据:在里,可在进行删除条目和进行数量金额修改; 客户对帐单:到〈单据查询〉表内,在〈收货单位〉那里选取相应客户,然后复制到新表,任意排版 打印 。 客户资料/产品信息:先把基本资料在客户资料和产品信息内填好;这样在那里的客户、货物名称才能直接选取;电话、地址、单价等信息才能直接生成;
问题如下:同事一个工作簿里面有很多个工作表,要将其全部 打印 ,并且每个工作表要 打印 5份,也就是平时说的一式五份。下面的代码可以实现 打印 一式五份,不需要在一份一份分好。 Sub 批量 打印 工作簿() Dim sht As Worksheet For Each sht In Sheets sht.PrintOut Copies:=5, Collate:=True End Sub
可以 使用 Excel VBA 操作Word进行 打印 。首先需要引用Word对象库,然后创建Word应用程序对象,打开需要 打印 的文档, 设置 打印 参数,最后执行 打印 操作即可。以下是示例代码: Sub PrintWordDoc() Dim wdApp As Object Dim wdDoc As Object '创建Word应用程序对象 Set wdApp = CreateObject("Word.Application") '打开需要 打印 的文档 Set wdDoc = wdApp.Documents.Open("C:\Test.docx") ' 设置 打印 参数 With wdDoc.PageSetup .Orientation = wdOrientLandscape '横向 打印 .TopMargin = wdApp.InchesToPoints(1) '上边距1英寸 .BottomMargin = wdApp.InchesToPoints(1) '下边距1英寸 .LeftMargin = wdApp.InchesToPoints(1) '左边距1英寸 .RightMargin = wdApp.InchesToPoints(1) '右边距1英寸 End With '执行 打印 操作 wdDoc.PrintOut '关闭文档和应用程序对象 wdDoc.Close wdApp.Quit End Sub