news 2026/7/1 12:04:52

VBA代码解决方案第三十八讲 如何对MsgBox对话框的内容进行排版,达到美观的效果

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
VBA代码解决方案第三十八讲 如何对MsgBox对话框的内容进行排版,达到美观的效果

《VBA代码解决方案》(版权10028096)这套教程是我最早推出的教程,目前已经是第三版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一样把自己喜欢的代码摆好。

这套教程共三册,一百四十七讲,内容覆盖较广,也是初级和中级间的过渡教程,改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码。今后一段时间会给大家陆续推出。今日的内容是VBA代码解决方案第三十八讲 如何对MsgBox对话框的内容进行排版,达到美观的效果

【分享成果,随喜正能量】比起春天里的百花争艳,荷花是专属夏天的浪漫。在热烈的盛夏时节,灵湖里的荷花一开,便自带“万人迷”属性,收获所有人的喜爱!

第三十八讲 如何对MsgBox对话框的内容进行排版,达到美观的效果

朋友们好,今日我们讲解VBA代码解决方案的第38讲,如何对MsgBox对话框进行排版,从而达到美观的效果。语法 【此处可以点击语法,来查看MsgBox的语法结构】

1 排版字符的利用

如果在消息框中显示的字符串很长,比如是一段多行的文字内容,为了达到美观的效果,需要首字缩进,并将各行分隔开来,我们先看下面的几个符号,分别表示了不同的意义是非常有实用意义的。如:vbCrLf,Chr(13) + Chr(10) 表示回车符与换行符结合;vbCr,Chr(13) 表示回车符;vbLf,Chr(10)表示 换行符

另外,在用消息框显示多行多列的数据时,如果只用换行符(Chr(10))等进行换行,而数据列没有对齐,会使显示的信息显得杂乱无章,缺乏可读性,为了达到消息框中显示信息各列对齐的效果,在使用换行符(Chr(10))等进行换行的基础上,还需要使用制表符(Chr(9))或常数vbTab,对数据列进行分隔,使之排列整齐。

2 实现MsgBox对话框内容排版的代码及代码解读

如下面代码所示。

Sub mynz_38() '38 如何对MsgBox对话框的内容进行排版,达到美观的效果

Sheets("38").Select

Dim myMsg As String

Dim iRow As Integer

Dim iCom As Integer

For iRow = 1 To 11

For iCom = 1 To 5

myMsg = myMsg & Cells(iRow, iCom) & Chr(9)

Next

myMsg = myMsg & Chr(10)

Next

MsgBox myMsg

End Sub

代码截图:

代码解析:mynz_38过程使用两层循环读取当前工作表中A1到E11单元格的内容,并用消息框显示出来。

1)第8行代码,iCom循环中在把逐列读取的单元格内容赋给变量mysMsg时插入一个制表符(Chr(9)),对列进行分隔。

2)第10行代码,iRow循环中在读取下一行单元格内容赋给变量myMsg时插入一个换行符(Chr(10)),对行进行换行。

3) 运行mynz_38过程将用消息框显示当前工作表中A1至E11单元格区域中的内容,并排列整齐.

再看看运行后的窗口:

这样在运行后弹出的窗口就非常的漂亮了。

今日内容回向:

1 Chr(13) 是什么意义?

2 Chr(10) 是什么意义?

3 Chr(9) 是什么意义?

本讲内容参考程序文件:VBA代码解决方案(35-38).xlsm

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 12:04:34

ChatGPT自媒体冷启动实战指南,手把手带跑通抖音/小红书/B站三平台起号模型(附可直接导入的训练数据集)

更多请点击: https://intelliparadigm.com 第一章:ChatGPT自媒体冷启动的核心逻辑与认知重构 传统自媒体增长模型依赖“内容→流量→转化”线性路径,而ChatGPT驱动的冷启动本质是“能力可见化→信任锚点构建→场景化复用”的逆向飞轮。用户并…

作者头像 李华
网站建设 2026/7/1 12:04:24

ICM-42688-P与STM32F410RB在运动控制中的应用解析

1. ICM-42688-P与STM32F410RB的黄金组合解析 在机器人控制和工业监测领域,传感器与处理器的协同设计往往决定着整个系统的性能上限。ICM-42688-P作为TDK InvenSense推出的6轴MEMS运动传感器,与STMicroelectronics的STM32F410RB Cortex-M4微控制器形成的硬…

作者头像 李华
网站建设 2026/7/1 11:59:51

Si4732与STM32L4A6RG在数字音频接收中的优化实践

1. 为什么选择Si4732与STM32L4A6RG这对黄金组合在数字音频接收领域,Si4732这颗AM/FM收音机接收芯片堪称性价比之王。它支持64-108MHz的FM频段和520-1710kHz的AM频段,信噪比可达60dB以上。而STM32L4A6RG作为STMicroelectronics的低功耗微控制器&#xff0…

作者头像 李华
网站建设 2026/7/1 11:58:51

直流有刷电机高效控制方案:TC78H653FTG与TM4C129XKCZAD实战

1. 直流有刷电机控制的技术痛点与解决方案在工业自动化、机器人、电动工具等领域,直流有刷电机因其结构简单、成本低廉、控制方便等优势,仍然是许多应用场景的首选。然而,传统的驱动方案往往面临几个关键挑战:驱动效率低下&#x…

作者头像 李华
网站建设 2026/7/1 11:57:16

PIC18与A5000实现安全云连接的实战指南

1. 项目背景与核心挑战 在工业物联网和消费级IoT设备爆发式增长的今天,嵌入式设备的安全云连接已成为刚需。Microchip的PIC18LF46K42微控制器搭配A5000安全芯片的方案,恰好解决了低功耗MCU在TLS加密、身份认证等安全层面的短板。这个组合特别适合需要连接…

作者头像 李华
网站建设 2026/7/1 11:57:10

5步掌握智能窗口管理:让Mac多任务处理效率翻倍的终极方案

5步掌握智能窗口管理:让Mac多任务处理效率翻倍的终极方案 【免费下载链接】Topit Pin any window to the top of your screen / 在Mac上将你的任何窗口强制置顶 项目地址: https://gitcode.com/gh_mirrors/to/Topit 你是否曾在编程时被API文档遮挡编辑器&…

作者头像 李华