专栏名称: Excel之家ExcelHome
excel技巧原创教程每日推送,excel表格职场模板干货仓库,图文/视频/动画等多种教学方式分享excel操作技巧教程/excel函数公式教程/excel数据透视表教程/excel图表教程/Word教程,助您轻松提高办公效率!
51好读  ›  专栏  ›  Excel之家ExcelHome

利用MsgBox函数显示多行表格化数据

Excel之家ExcelHome  · 公众号  · Excel  · 2017-12-06 07:45

正文

请到「今天看啥」查看全文


本文为《Excel 2016应用大全》扩展内容

在代码中, MsgBox 函数通常应用于如下几种情况:

输出代码最终运行结果。

显示一个对话框用于提醒用户。

在对话框中显示提示信息,等待用户单击按 钮,然后根据用户的选择执行相应的代码。

在代码运行过程中显示某个变量的值,用于调试代码。

MsgBox 函数的语法格式如下:

MsgBox(prompt[, buttons] [, title] [, helpfile, context])

45- 1 中列出了 MsgBox 函数的参数及其含义。

参数

描述

可选/必需

prompt

显示于对话框中的文本信息 最大长度大约为 1024 个字符,由所用字符的宽度决

必需

title

对话框标题栏中显示的字符串表达

可选

helpfile conte x t

设置帮助文件和帮助主题

可选

45- 1 MsgBox 函数参数列表


MsgBox 函数 p rompt 参数用于设置对话框的提示文本信息,最大长度约为 1024 个字符(由所用字符的宽度决定),这么多字符显然无法显示在同一行。

如果代码中没有使用强制换行,系统将进行自动换行处理,多数情况下这并不符合用户的使用习惯。

因此,如果 prompt 参数的内容超过一行,则应该在每一行之间用回车符( Chr 13 ))、换行符( Chr 10 ))或是回车与换行符的组合( Chr 13 & Chr 10 ))将各行分隔开来。

代码中也可以使用常量 vbCrLf 或者 vbNewLine 进行强制换行。

如果希望将工作表中的数据以列表的形式显示在对话框中,除了强制换行外,还要用到 vbTab 常量插入制表符,使得每列数据以左对齐的方式显示。

利用 MsgBox 函数显示多行表格化数据


在示例工作簿中的数据如 45- 2 所示。

45- 2 工作表中的数据

1


新建一个空白工作簿文件,按 组合键切换到 VBE 窗口。


2


在【工程资源管理器】中插入“模块”,并修改其名称为“ MsgBoxDemo2 ”。


3


在【工程资源管理器】中双击模块 MsgBoxDemo2 ,在代码窗口中写入如下代码。

#001  Sub MultiLineTableDemo()

#002      Dim iRow As Single, iCol As Single, MsgStr As String

#003      For iRow = 1 To 6

#004          For iCol = 1 To 4

#005              MsgStr = MsgStr & Cells(iRow, iCol) & vbTab

#006          Next

#007          MsgStr = MsgStr & vbCrLf

#008      Next

#009      MsgBox MsgStr, , "城市列表"

#010  End Sub

4


返回 Excel 界面,运行 MultiLineTableDemo 过程,将显示如 45- 3 所示的对话框。

45- 3 显示多行表格化数据

代码解析
  • 3 行到第 8 行代码为双层循环结构遍历工作表中的数据。

  • 5 行代码用于创建对话框中显示的信息,相邻两列数据之间使用制表符作为分割符,即代码中的 vbTab 常量。

  • 9 行代码用于显示对话框。


长按 下面二维码图片,点” 识别图中二维码 “然后再点 关注 ,每天都会收到最新excel教程。


ExcelHome,微软技术社区联盟成员







请到「今天看啥」查看全文