1.VBA输入输出

  常用输入/输出语句结构化程序设计中使用的基本控制结构有3种:顺序结构、选择结构和循环结构。顺序结构就是按照语句的书写顺序从上到下、逐条语句地执行。执行时,编写在前面的代码先执行,编写在后面的代码后执行。这是最普遍的结构形式,也是后面两种结构的基础。
顺序结构不需要使用结构控制语句,本节介绍常用的输入输出语句的技巧。
例017  九九乘法表(Print方法的应用)1.案例说明在早期的Basic版本中,程序运行结果主要依靠Print语句输出到终端。在VB中,Print作为窗体的一个方法,用来在窗体中显示信息。但是在VBA中,用户窗体已经不支持Print方法了。
在VBA中,Print方法只能向“立即窗口”中输出程序的运行中间结果,供开发人员调试程序时使用。
本例使用Print方法在立即窗口中输入九九乘法表。
2.关键技术在VBA中,Print方法只能应用于Debug对象,其语法格式如下:
Debug.Print [outputlist]
参数outputlist是要打印的表达式或表达式的列表。如果省略,则打印一个空白行。
—    Print首先计算表达式的值,然后输出计算的结果。在outputlist参数中还可以使用分隔符,以格式化输出的数据。格式化分隔符有以下几种:
—    Spc(n):插入n个空格到输出数据之间;
—    Tab(n):移动光标到适当位置,n为移动的列数;
—    分号:表示前后两个数据项连在一起输出;
—    逗号:以14个字符为一个输出区,每个数据输出到对应的输出区。
3.编写代码(1)在VBE中,单击菜单“插入/模块”命令插入一个模块。
(2)在模块中输入以下代码:
Sub multi()
    For i = 1 To 9
        For j = 1 To i
            Debug.Print i; "x"; j; "="; i * j; "  ";
        Next
        Debug.Print                                       '换行
    Next
End Sub
(3)按功能键“F5”运行子过程,在“立即窗口”输出九九乘法表
例018  输入个人信息(Inputbox函数的应用)1.案例说明本例演示Inputbox函数的使用方法。执行程序,将弹出“输入个人信息”对话框,要求用户输入“姓名、年龄、地址”信息,然后在“立即窗口”中将这些信息打印输出。
2.关键技术为了实现数据输入,VBA提供了InputBox函数。该函数将打开一个对话框作为输入数据的界面,等待用户输入数据,并返回所输入的内容。其语法格式如下:
InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context]) 
各参数的含义如下:
—    Prompt:为对话框消息出现的字符串表达式。其最大长度为1024个字符。如果需要在对话框中显示多行数据,则可在各行之间用回车符换行符来分隔,一般使用VBA的常数vbCrLf代表回车换行符。
—    Title:为对话框标题栏中的字符串。如果省略该参数,则把应用程序名放入标题栏中。
—    Default:为显示在文本框中的字符串。如果省略该参数,则文本框为空。
—    Xpos:应和Ypos成对出现,指定对话框的左边与屏幕左边的水平距离。如果省略该参数,则对话框会在水平方向居中。
—    Ypos:应和Xpos成对出现,指定对话框的上边与屏幕上边的距离。如果省略该参数,则对话框被放置在屏幕垂直方向距下边大约三分之一的位置。
—    Helpfile:设置对话框的帮助文件,可省略。

—    Context:设置对话框的帮助主题编号,可省略。 

3.demo:

    使用以下的代码可接收用户输入的数据。

  Sub 使用InputBos函数()
    Dim strPrompt As String
      Dim strTitle As String
    Dim strDefault As String
                Dim strReturn As String
                strPrompt = "请输入用户姓名:"
    strTitle = "输入对话框"
    strReturn = "伍云辉"
    strReturn = InputBox(strPrompt,strTitle,strDefault)
    Debug.Print strReturn
  End Sub
  执行上述代码,显示如图6-2所示的对话框。
  
 
  在文本框中输入新的姓名,单击“确定”按钮,程序将把用户输入的内容输出到“立即窗口”中。使用InputBox函数时,应注意以下几点:
  1)在默认情况下,InputBox函数的返回值是一个字符串类型,而不是变体类型。如果需要使用该函数输入数值,则需要使用Val函数(或其他的转换函数)将返回值转换为相应类型的数值。
  2)在图6-2所示的对话框中,如果用户单击“取消”按钮(或ESC键),则表示不使用当前输入的值,函数将返回一个空字符串。根据这一特性,可以判断用户是否输入数据到对话框中了。
  3)执行一次InputBox函数,只能返回一个值,如果需要输入多个值,则必须多次调用该函数。
  6.3.2 数据输出——Print方法
  在早期版本的Basic中,数据的输出主要通过Print语句来实现。在VB中,Print作为窗体的一个方法,也可用来输出信息。但是在VBA中,用户窗体已经不支持Print方法了,因为在VBA中,Print方法主要用来向“立即窗口”中输出程序的调试信息。
  例如,在上例中使用如下语句向“立即窗口”中输出用户输入的信息:
        Debug.Print strReturn
  Print方法的语法格式如下:
  object.Print [outputlist]
  在VBA中,object只能为Debug对象,表示向“立即窗口”输出内容。
  参数outputlist是要打印的表达式或表达式的列表。如果省略,则打印一个空白行。
  Print首先计算表达式的值,然后输出计算的结果。在outputlist参数中还可以使用分隔符以格式化输出的数据。格式化分隔符有以下4种。
  A)Spc(n):插入n个空格到输出数据之间;
  B)Tab(n):移动光标到适当位置,n为移动的列数;
  C)分号:表示前后两个数据项连在一起输出;
  D)逗号:以14个字符为一个输出区,每个数据输出到对应的输出区。
  例如:在“立即窗口”中输入图6-3所示的语句,可在语句的下方得到输出的结果。
  
  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值