前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VBA实用小程序57: 左对齐或右对齐字符串

VBA实用小程序57: 左对齐或右对齐字符串

作者头像
fanjy
发布2019-08-23 16:43:24
1.9K0
发布2019-08-23 16:43:24
举报
文章被收录于专栏:完美Excel

学习Excel技术,关注微信公众号:

excelperfect

使用下面的程序,可以将字符串使用指定字符填充到指定的长度,从而实现字符串的左对齐或者右对齐。程序代码如下:

'在文本左侧填充指定的字符

'使字符串达到指定的长度

'参数strText: 要执行填充操作的字符串

'参数iWidth: 字符串要达到的长度

'参数strFill: 可选,指定填充字符,默认为空格

'如果参数strText的文本字符串长度其本身就

'大于iWidth,那么直接返回strText

'如果参数strFill指定了多个字符,

'则使用第1个字符填充

Function FillInLeft(strText As String, _

iWidth As Integer, _

Optional strFill As String = " ") As String

If Len(strText) > iWidth Then

FillInLeft = strText

Else

FillInLeft = Right$(String(iWidth, strFill) & _

strText, iWidth)

End If

End Function

'在文本右侧填充指定的字符

'使字符串达到指定的长度

'参数strText: 要执行填充操作的字符串

'参数iWidth: 字符串要达到的长度

'参数strFill: 可选,指定填充字符,默认为空格

'如果参数strText的文本字符串长度其本身就

'大于iWidth,那么直接返回strText

'如果参数strFill指定了多个字符,

'则使用第1个字符填充

Function FillInRight(strText As String, _

iWidth As Integer, _

Optional strFill As String = " ") As String

If Len(strText) > iWidth Then

FillInRight = strText

Else

FillInRight = Left$(strText & _

String(iWidth, strFill), iWidth)

End If

End Function

上述代码的关键在于下面两句代码:

FillInLeft = Right$(String(iWidth,strFill) & _

strText, iWidth)

FillInRight = Left$(strText & _

String(iWidth, strFill), iWidth)

将原字符串与指定个数的填充字符形成的字符串连接成一个字符串,然后右截取或左截取指定长度的字符串,从而实现填充对齐效果。

测试FillInLeft函数:

Sub test()

Debug.Print FillInLeft("Excel", 15)

Debug.Print FillInLeft("excelperfect", 15)

Debug.Print "---------------"

Debug.Print FillInLeft("12", 8, "*")

Debug.Print FillInLeft("1234", 8, "*")

End Sub

运行后的效果如下图1所示。

图1

测试FillInRight函数:

Sub test()

Debug.Print FillInRight("excelperfect", 15, "$")

Debug.Print FillInRight("Excel", 15, "$")

Debug.Print "---------------"

Debug.Print FillInRight("12", 8, "*")

Debug.Print FillInRight("1234", 8, "*")

End Sub

运行后的效果如下图2所示。

图2

程序代码的图片版如下:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档