首页 > 其他分享 >如何学习VBA_3.2.10:人机对话的实现

如何学习VBA_3.2.10:人机对话的实现

时间:2024-09-13 18:51:27浏览次数:12  
标签:10 VBA 可选 对话框 title 教程 参数 3.2

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的劳动效率,而且可以提高数据处理的准确度。我推出的VBA系列教程共九套和一部VBA汉英手册,现在已经全部完成,希望大家利用、学习。

如果您只是一般的职场VBA需求,可以打包选择7.1.3.9教程+汉英手册,第7套教程是入门,第1套教程是入门后的提高,第3套教程字典是必备的VBA之精华,第9套教程是实用的典型案例讲解。这四套教程内容掌握后足以处理一般工作中的问题,实际写代码的时候再辅助代码汉英手册,足矣!如果您想进一步提高,就需要选择高级阶段的教程了

VBA是面向对象编程的语言,博大精深。很多朋友咨询VBA的学习方法,我会陆续给大家讲解一些我的经验,大家可以慢慢体会。今日的内容是:如何学习VBA_3.2.10:人机对话的实现

如何学习VBA_3.2.10:人机对话的实现_VBA



【分享成果,随喜正能量】烦恼生起时,越是苦恼逃脱,苦恼就越来愈多。认真面对,坦诚接纳,以烦恼滋养自己,就是成长。。

3.2.10 人机对话的实现

在VBA中,我们利用代码来解决实际问题,有些实际问题需要我们根据程序的进度来决定下一步的运行。那么如何判断程序运行的进度呢?就是可以在某个节点提示给用户设定好的提示信息或者某个变量的值。这其中最为重要的就是MagBox函数了。其实在《VBA代码解决方案》中关于MagBox的讲解是非常详尽的。大家可以根据教程来认真的学习。利用这个对话框我们可以实现的作用有:

1 提示给用户信息。这种提示只是简单的提示,提示的内容有程序中设定的信息或者某个变量的值。

2 需要用户判断过程,这个时候往往会要求用户进行判断,如下面的截图:

如何学习VBA_3.2.10:人机对话的实现_VBA_02



这个时候,当用户选择“是”,程序是一种运行结果,当选择其他按钮的时候程序会执行其他的运行结果。这种用户的选择就是需要返回给程序的结果。

当然,对于第一种情况,虽然也返回给程序结果,但这种结果没有实际的意义,只是程序运行过程的节奏而已。

在程序的实际运行过程中,还有需要用户录入信息的,这就是InputBox函数,这是在程序交互过程中,用户和后台程序交流的一种方案。类似的方案就是窗体了,窗体是可以实现比较复杂的人机交互,而InputBox对话框只能实现一种简单的录入模式。一般的录入模式如下:

如何学习VBA_3.2.10:人机对话的实现_消息框_03



我们在利用VBA进行实际问题操作的时候,务必要灵活地运用两个人机对话框。


最后我们再看看两个对话框的比较:


Msgbox函数的语法:

语法如下:MsgBox(prompt[, buttons] [, title] [, helpfile, context])

参数:

a) prompt是必需的,代表在消息框中作为信息显示的字符或字符串,最多只能接受约1024个字符,取决于所使用字符的宽度。

b) buttons是可选的,用于指定消息框中显示按钮的数目及类型、使用的图标样式、缺省按钮以及消息框的强制回应等。如果省略,则buttons参数的缺省值为0,消息框只显示“确定”按钮。

这个参数是实现Msgbox函数自定义风格的一个重要参数,详细的内容我将在下一节中再涉及到、

c) title是可选的,代表在消息框标题栏中作为标题的字符或字符串。如果省略,则在标题栏中显示“Microsoft Excel”。

d) helpfile和参数context是可选的,用来为消息框提供上下文相关帮助的帮助文件和帮助主题。如果提供了其中一个参数,则必须提供另一个参数,两者缺一不可。

InputBox函数的语法:InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])

参数

a) prompt是必需的,作为对话框消息出现的字符串表达式。

b) title是可选的,作为显示在对话框标题栏中的字符串表达式,如果省略title参数,则在标题栏中显示“Microsoft Excel”。

c) default是可选的,显示在文本框中的字符串表达式,在没有其它输入时作为缺省值,如果省略default参数,则文本框为空。

d) xpos是可选的,指定对话框的左边与屏幕左边的水平距离。如果省略xpos参数,则对话框会在水平方向居中。

e) ypos是可选的,指定对话框的上边与屏幕上边的距离。如果省略ypos参数,则对话框被放置在屏幕垂直方向距下边大约三分之一的位置。

f) helpfile和参数context是可选的,为对话框提供上下文相关的帮助和编号,如果提供了其中一个参数,则必须提供另一个参数,两者缺一不可。

我们看到,上述参数很多是类似的。



如何学习VBA_3.2.10:人机对话的实现_消息框_04


我20多年的VBA实践经验,全部浓缩在下面的各个教程中:





如何学习VBA_3.2.10:人机对话的实现_消息框_05









标签:10,VBA,可选,对话框,title,教程,参数,3.2
From: https://blog.51cto.com/u_16912668/12007418

相关文章

  • ubuntu-22.04.4编译升级安装 OpenSSH_9.8p1+OpenSSL 3.3.2+zlib1.3.1
     实验镜像ubuntu-22.04.4-live-server-amd64.iso#安装必备和常用软件包#安装相关的依赖项,如有遗漏再次安装aptinstall-y libz-devvimgccwgettarlrzsznanomakenet-tools #安装zlib./configure--prefix=/usr/local/zlibmake&&makeinstall #安装......
  • msvcr100.dll丢失导致快吧迷你页异常?深度解析快吧迷你页msvcr100.dll文件丢失原因与修
    在使用快吧迷你页等软件时,有时会遇到“msvcr100.dll丢失”的错误提示,导致软件无法正常运行。这一问题主要由msvcr100.dll文件丢失或损坏引起,该文件是MicrosoftVisualC++2010RedistributablePackage中的一个重要组件,负责提供程序运行所需的运行时库支持。以下是对该问题的......
  • 《Civilization: Beyond Earth》启动失败?《文明太空》msvcr110.dll问题解决方案大放送
    当您在尝试启动《文明:太空》(Civilization:BeyondEarth)时遇到“找不到msvcr110.dll”或“msvcr110.dll缺失”的错误提示,这意味着您的计算机上缺少或损坏了MicrosoftVisualC++2012运行时库中的一个关键组件。msvcr110.dll是许多基于C++开发的游戏和应用程序正常运行所必需的......
  • 《星球大战:亡命之徒》游戏启动时崩溃弹窗“找不到mfc100.dll”该怎么办?星球大战亡命之
    当《星球大战:亡命之徒》游戏启动时崩溃弹窗提示“找不到mfc100.dll”,可以这样做:首先,从可靠的网站下载mfc100.dll文件,要注意与系统位数匹配。然后将其复制到系统的System32文件夹中。也可以尝试重新安装游戏相关组件或者修复系统,看是否能解决问题。本篇将为大家带来《星球大战:亡......
  • 10、Linux文本编辑器
    文本编辑器常见文本编辑器WindowsNotepad(记事本)SublimeUltraEditLinuxVI/VIMnanoEmacsSedgeditKateVI和VIM的区别VI全称:VisualInterface创建时间:1976年创建者:BillJoyVIM全称:VIIMproved,即VI的升级版创建时间:1991年创建者:BramMoolenaar特点......
  • P10466 邻值查找
    #include<bits/stdc++.h>usingnamespacestd;#definexfirst#defineysecondtypedefpair<int,int>PII;typedeflonglongll;typedefunsignedlonglongull;typedefunsignedintuint;typedefvector<string>VS;typedefvector<int>......
  • 文心一言 VS 讯飞星火 VS chatgpt (346)-- 算法导论23.2 5题
    五、假定图中边的权重取值全部为整数,且在范围内。Prim算法最快能多快?如果边的权重取值范围在1到某个常数之间呢?如果要写代码,请用go语言。文心一言:Prim算法是一种用于寻找加权无向图的最小生成树的贪心算法。其时间复杂度主要取决于实现方式。在标准实现中,Prim算法通常使用优先队列(......
  • P11037 【MX-X3-T4】「RiOI-4」上课
    P11037【MX-X3-T4】「RiOI-4」上课本文主要解释不断\(+1\)的过程如何快速实现的具体流程。题意给定正整数\(n,q\)和\(n\)个区间\([l_i,r_i]\)。有\(q\)组询问,每次询问给定一个整数\(x\)。在每个区间内选择一个整数\(a_i\)(\(l_i\leqa_i\leqr_i\)),使得所选整数的总......
  • 转载:国产操作系统麒麟v10、UOS在线打开excel文件并动态赋值
    在实际的开发过程中,经常会遇到数据库中的数据填充到excel生成一份正式文件的功能,PageOffice客户端控件支持在线预览Excel文件时,通过Workbook对象来实现对Excel文件的数据填充功能,如果只是简单的填充一下数据,那么通过调用Sheet对象的openCell方法获取到Cell对象并赋值即可Java......
  • 金典120GB固态硬盘SM2258XT量产修复成功记录,附SM2258XT B16A开卡软件,VM29F01TEME1(2CA
    偶得一块二手的120G金典SSD,闲来无事搞一下量产,先上外观图片给大家看看:玩量产的一般都知道,找量产工具,肯定是要根据主控型号和闪存颗粒制程,来找相匹配的软件才行。因此我们拆开外壳,下图看到里面主控SM2258XT,颗粒丝印VM29F01TEME1-B16A,这块固态比较方便的地方是,单从丝印上就能看出是B1......