暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

VBA调用内置对话框

VBA语言専攻 2022-05-10
0
【分享成果,随喜正能量】礼赞菩萨,积福胜似存钱,钱财皆是命中福报延伸而来,若想求得财富,就应该努力培植福报,多多行善。。
《VBA代码解决方案》这套教程是我最早推出的教程,目前已经是第二版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一下把自己喜欢的代码摆好。
这套教程共三册,一百四十七讲,内容覆盖较广,也是初级和中级间的过度教程,改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码。今后一段时间会给大家陆续推出。今日的内容是第43讲:VBA调用内置对话框

第四十三讲  VBA中调用内置对话框,完成人机对话

大家好,我们今日继续讲解VBA代码解决方案,今日讲解第43讲:利用内置对话框来调用打开对话框。在前面的章节中,我们先后讲了msgbox对话框和inputbox对话框,今日讲解的是一种内置对话框的方法,内置对话框不同于前面的两种对话框,它利用的是Dialogs函数。

1  Dialogs函数讲解

语法如下:Application.Dialogs(xlDialogConst).Show
这里Dialogs集合代表所有的内置对话框,其中每个Dialog对象代表一个内置对话框,不能新建内置对话框或向该集合中添加内置对话框。
参数xlDialogConst是内置对话框的内置常量,每个常量都以“xlDialog”开头,其后是对话框的名称,如“打开”对话框的常量为“xlDialogOpen”。下面为常用内置对话框的内置常量:
1) xlDialogActiveCellFont       476       单元格格式(字体)
2) xlDialogBorder               45       单元格格式(边框)
3) xlDialogCellProtection       46       单元格格式(保护)
4) xlDialogDeleteFormat           111       单元格格式(数字)
5) xlDialogFormatNumber       42       单元格格式(数字)
6) xlDialogPatterns           84       单元格格式(图案)
7) xlDialogClear               52       清除
8) xlDialogColumnWidth        47       列宽
9) xlDialogRowHeight           127       行高
10) xlDialogConditionalFormatting       583       条件格式
11) xlDialogDefineName            61       定义名称
12) xlDialogDefineStyle         229       样式
13) xlDialogDisplay             27       显示选项
14) xlDialogFont                26       字体
15) xlDialogSetBackgroundPicture        509       工作表背景
16) xlDialogInsert                 55       插入
17) xlDialogInsertHyperlink        596       插入超链接
18) xlDialogInsertPicture        342       插入图片
19) xlDialogNew                    119       新建工作簿
20) xlDialogOpen                 1        打开
21) xlDialogSaveAs                 5       另存为
22) xlDialogWorkbookCopy         283       移动或复制工作表(建立副本)
23) xlDialogWorkbookInsert       354       插入工作表
24) xlDialogWorkbookMove         282       移动或复制工作表
25) xlDialogWorkbookName         386       重命名工作表
26) xlDialogWorkbookNew            302       新建工作表
27) xlDialogWorkbookProtect         417       保护工作簿
28) xlDialogPageSetup            7       页面设置
29) xlDialogPrint                8       打印内容
30) xlDialogPrinterSetup          9       打印机设置
31) xlDialogPrintPreview          222       打印预览
32) xlDialogSetPrintTitles       23       设置打印标题
33) xlDialogRun                   17       宏
34) xlDialogTable                 41       模拟运算表
36) xlDialogSendMail                189       发送邮件

显示内置对话框使用Show方法,应用于Dialog对象的Show方法语法如下:
expression.Show(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7, Arg8, Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, Arg15, Arg16, Arg17, Arg18, Arg19, Arg20, Arg21, Arg22, Arg23, Arg24, Arg25, Arg26, Arg27, Arg28, Arg29, Arg30)
参数expression是必需的,返回Dialog对象之一。
参数arg1到参数arg30是可选的,仅应用于内置对话框,是命令的初始参数。若要查找要设置的参数,请在内置对话框参数列表中查找对应的对话框常量。
2  Dialogs内置对话框的利用
1)如果需要使用“打开”、“打印”等Excel内置对话框已经具有的功能,可以使用代码直接调用这些内置的对话框,如下面的代码所示。
Sub mynz_43()
    Application.Dialogs(xlDialogOpen).Show
End Sub

代码窗口:

代码解析:Mynz过程显示内置的“打开”对话框并选定示例所在的文件夹。

运行窗口:
如果将代码修正为:

那么运行窗口则变成:

上面就是利用内置对话框的方案,当然,在实际的应用中会非常的灵活,希望大家在应用中逐渐的学习,并加以掌握。

今日内容回向:
1  Application.Dialogs(xlDialogConst).Show 的意义是什么?
2  xlDialogConst 的值有哪些?有什么意义?

本讲内容参考程序文件:VBA代码解决方案修订(1-48).xlsm


我20多年的VBA实践经验,全部浓缩在下面的各个教程中:
【分享成果,随喜正能量】时间是最好的良药,随着时光远去,很多误解不必要再去解释,很多伤痛也都云淡风轻,很多故事也都不见踪迹。早安。。
文章转载自VBA语言専攻,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论