Excel-VBA 快速上手(十、提示框、可输入的弹出框)
文章目录
- 一、对话框
- 1.1. 弹出对话框
- 1.2. 获取用户对对话框的选择
- 二、可输入的对话框
- 2.1. InputBox函数
- 2.2. Application.InputBox 方法
一、对话框
1.1. 弹出对话框
对话框是最常见的功能,先看一下相对完整的对话框结构:
由图可见,对话框一般由三部分组成( 窗口标题、提示内容、按钮和图标类别和默认选中),VBA 中调用对话框的
语法也是如此,MsgBox 提示内容,按钮和图标类别和按钮默认选中,窗口标题
窗口标题和提示内容很好理解,重点说一下 <按钮和图标类别和按钮默认选中> 这个参数要怎么传,这个参数其
实由三个值组成,实际使用时以 按钮类别 + 图标类别 + 按钮默认选中
这种格式传参,下面列出常用的类别
按钮类别
名称 | 值 | 描述 |
---|---|---|
vbOKOnly | 0 | 对话框内显示确定按钮 |
vbOKCancel | 1 | 对话框内显示确定和取消两个按钮 |
vbAbortRetryIgnore | 2 | 对话框内显示中止、重试、忽略三个按钮 |
vbYesNoCancel | 3 | 对话框内显示是、否、取消三个按钮 |
vbYesNo | 4 | 对话框内显示是和否两个按钮 |
vbRetryCancel | 5 | 对话框内显示重试和取消两个按钮 |
图标类别
名称 | 值 | 描述 |
---|---|---|
vbCritical | 16 | 对话框内显示危险图标 |
vbQuestion | 32 | 对话框内显示询问图标 |
vbExclamation | 48 | 对话框内显示警告图标 |
vbInformation | 64 | 对话框内显示信息图标 |
按钮默认选中
名称 | 值 | 描述 |
---|---|---|
vbDefaultButton1 | 0 | 对话框内默认选中第一个按钮 |
vbDefaultButton2 | 256 | 对话框内默认选中第二个按钮 |
vbDefaultButton3 | 512 | 对话框内默认选中第三个按钮 |
vbDefaultButton4 | 768 | 对话框内默认选中第四个按钮 |
完整的对话框传参示例,<按钮和图标类别和按钮默认选中> 可以传名称,也可以传值
Public Sub main()'两种方式都可以MsgBox "提示内容", vbYesNoCancel + vbExclamation + vbDefaultButton2, "窗口标题"MsgBox "提示内容", 3 + 48 + 256, "窗口标题"
End Sub
1.2. 获取用户对对话框的选择
当我们弹出对话框后,肯定希望获取用户的选择,vba 中,当对话框的按钮被点击后,就会返回按钮的值,我们只
需要判断这个值就可以,vba 中对话框的按钮相对较少,每个按钮都有它固定的值
按钮值名称 | 按钮的值 | 描述 |
---|---|---|
vbOk | 1 | 确定按钮 |
vbCancel | 2 | 取消按钮 |
vbAbort | 3 | 中止按钮 |
vbRetry | 4 | 重试按钮 |
vbIgnore | 5 | 忽略按钮 |
vbYes | 6 | 是按钮 |
vbNo | 7 | 否按钮 |
示例,使用按钮值名称和使用按钮值都可以进行判断,注意:当想获取对话框的返回值时,不要忘记给 MsgBox
的参数
列表加上 ()
Public Sub main()Dim value As Integervalue = MsgBox("提示内容", vbYesNoCancel + vbExclamation + vbDefaultButton2, "窗口标题")'使用按钮值进行判断If value = 6 ThenDebug.Print "用户选择了'是'"End If'使用按钮值名称进行判断If value = vbYes ThenDebug.Print "用户选择了'是'"End If
End Sub
二、可输入的对话框
这种对话框,可以让用户输入,vba 中有两种常见的使用方式,InputBox
函数和 Applicatoin.InputBox
方法
2.1. InputBox函数
InputBox函数语法:InputBox(可输入的对话框的提示文字, 窗口标题, 输入框的默认值)
对话框的返回值有下面几种情况:
- 用户输入内容后点击确定按钮,对话框的返回值为用户输入的内容
- 用户没输入内容,但是输入框中有默认值的时候,点击确定按钮,对话框的返回值为输入框中的默认值
- 用户没输入内容,输入框也没有默认值时,点击确定按钮,对话框的返回值为空字符串
- 用户点击取消按钮时,对话框的返回值为空字符串
示例
Public Sub main()Dim valuevalue = InputBox("可输入的对话框的提示文字", "窗口标题", "这是输入框的默认值")Debug.Print value
End Sub
效果
2.2. Application.InputBox 方法
这种方式跟前一种相比,主要多了限定输入框内容类型的功能,这种对话框点击取消按钮后返回 False
语法为:
Application.InputBox(对话框的提示文字,窗口标题,输入框默认值,输入框 x 坐标,输入框 y 坐标,帮助文档,文档ID,输入框内容类型)
参数看上去非常多,但其实很好理解,对话框的提示文字、窗口标题、输入框默认值这三个参数看描述就知道怎么
传了,输入框 x 坐标、输入框 y 坐标、帮助文档、文档ID这四个参数一般不用传,所以这里也不介绍了,重点就是最后
一个参数 ( 输入框内容类型 ),这个参数有多种类型可供选择,如下:
值 | 描述 |
---|---|
0 | 公式类型 |
1 | 数字类型 |
2 | 文本类型、既字符串类型 |
4 | 布尔值类型 |
8 | 单元格引用类型 |
16 | 错误值类型 |
这些类型动手试一试就能了解,主要记录一下单元格引用类型
单元格引用类型
当选择一个单元格时,对话框返回的是 Range 对象,多个单元格时对话框返回的是二维数组
示例
代码:
Public Sub main()Dim valuevalue = Application.InputBox("对话框显示内容", "输入框标题", "文本框内默认值", , , , , 8)If VBA.IsArray(value) ThenDebug.Print "二维数组:" & value(1, 1)ElseDebug.Print "Range对象:" & valueEnd If
End Sub
效果:
Excel-VBA 快速上手(十、提示框、可输入的弹出框)相关推荐
- html表单弹窗提示框,【前端】弹出框提交表单
[前端]弹出框提交表单 发布时间:2018-11-03 22:30, 浏览次数:826 目录 * 功能描述 * 效果截图 * 代码 * html代码 * 触发弹出窗口的按钮 * js代码 * 弹出框的 ...
- bootstrap获取弹框数据_Bootstrap模态弹出框的实例教程
前面的话 在 Bootstrap 框架中把模态弹出框统一称为 Modal.这种弹出框效果在大多数 Web 网站的交互中都可见.比如点击一个按钮弹出一个框,弹出的框可能是一段文件描述,也可能带有按钮操作 ...
- php jquery 弹窗提示框,jQuery实现消息弹出框效果
本文实例为大家分享了jQuery消息弹出框的具体代码,供大家参考,具体内容如下 效果图 实现代码 .showMessage { padding: 5px 10px; border-radius: 5p ...
- android自定义模态框,安卓开发自定义弹出框的简单方式(纯代码布局)
弹出框在安卓开发中是经常会用到的,如果单纯的只是用安卓自带的对话框模式肯定是十分单调的. 再来我看来安卓一定有一个功能让我们像Layout添加Layout一样把Layout添加到提示框里面. 所以忘了 ...
- wpf 点击按钮弹出选择框_WPF-PopupWindow wpf右下角弹出框,通过按钮调用,类似QQ CSharp C#编程 238万源代码下载- www.pudn.com...
文件名称: WPF-PopupWindow下载 收藏√ [ 5 4 3 2 1 ] 开发工具: C# 文件大小: 90 KB 上传时间: 2013-07-24 下载次数: 19 详细说明:w ...
- Bootstrap 提示工具(Tooltip)弹出框
第一步: 加载3个框架 <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js">< ...
- android制作弹出框样式,Android Dialog 弹出框 自定义 样式
可以去除系统的Dialog的黑边,而且Dialog的样式和布局完全一样 可以是不规则图形 这个功能不是太难 ,不多说直接上代码 先是根据系统的Theme创建一个自己的Theme 在R.styles.x ...
- 页面拖动功能jquery +js+html5 移动 弹出框 拖动 弹出框 拖动 div 拖动 弹出框
实现逻辑分析: 1.当鼠标触发按下事件 2.记录当前屏幕坐标 3.和要控制的div坐标向减的到二者之间关系 4.通过鼠标移动事件 5.激活div移动事件 6.div的新位置就鼠标位置和原始坐标的关系值 ...
- 第二百四十六节,Bootstrap弹出框和警告框插件
Bootstrap弹出框和警告框插件 学习要点: 1.弹出框 2.警告框 本节课我们主要学习一下 Bootstrap 中的弹出框和警告框插件. 一.弹出框 弹出框即点击一个元素弹出一个包含标题和内容的 ...
最新文章
- R语言为散点图添加凸包(convex hull):数据预处理(创建一个包含每组数据凸包边界的数据集)、ggplot2使用geom_polygon函数为可视化图像添加凸包(convex hull)
- 第一篇T语言实例开发(版本5.3),带错误检测的加减乘除运算器
- 几个常见的Python面试题,帮助大家更加从容面试!
- ECS 按量付费VPC实例停机不收费FAQ
- 无聊闲做,从使用PHP数组实现约瑟夫环问题谈性能
- 国内最火的 HTML、CSS、JavaScript 开源项目 Top 榜,你知多少?
- Python(23)_while循环
- linux中批量创文件夹的方法
- 好工具,不私藏!介绍一个提高效率的利器
- The NMEA 0183 Protocol
- [油猴脚本开发指南]第一个脚本-HelloWorld
- Screen Snapshot for Mac(屏幕截图工具)
- 有关域名备案和网站备案的知识介绍
- java 生成临时目录_如何在Java中创建临时目录/文件夹?
- 输入一个四位数将其加密后输出c语言,输入一个四位数,将其加密后输出.方法是将该数每一位的数字加9,然后除以10取余作为该位上的新数字,最后将千位上的数字和十...
- android手机只有三星采用实体键,三星新配件:你终于可以体面地使用实体全键盘了...
- excel按某个字符将一个单元格拆分成多个单元格
- 华为OD机试题:黑板上的数涂颜色
- php正则匹配斜线_PHP正则匹配反斜杠和美元$的方法
- nginx多域名配置
热门文章
- 托业考试资料-英语下载
- 极路由b70路由器虚拟服务器,极路由B70开启SSH刷Breed之后折腾第三方固件
- jsp+servlet实现注册,登录等的案例
- 059 提权与反弹shell
- 苹果笔记本好吗_在大学里,笔记本真的比台式电脑好吗?
- 智慧树知到期末答案python_2020智慧树知到Python程序设计基础(山东联盟)期末答案...
- 深度波尔茨曼机(DBM)
- 6:直角坐标系象限判断
- 阿里云属于paas、iaas还是saas?
- Google Android开发入门与实战(china-pub首发免运费)