VBA中Split函数排序异常:数组元素顺序与输入字符串不符
关于Word 2013 VBA中Split函数的异常现象疑问
我在Word 2013中编写了用于创建/显示日历的VBA程序,其中定义了存储星期的数组arrDays,相关代码如下:
Public arrDays As Variant arrDays = Split("Mon,Tue,Wed,Thu,Fri,Sat,Sun,Mon,Tue,Wed,Thur,Fri,Sat,Sun", ",") With .Rows(2) .Cells.VerticalAlignment = wdAlignVerticalCenter .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter .Range.Font.Name = "Calibri" .Range.Font.Italic = True .Range.Font.Size = 28 .Height = 24 For J = 1 To 7 .Cells(J).Range.Text = arrDays(J + lngFirstDay - 2) Next J End With
运行时指定单元格显示内容以"Sun"开头,监视窗口显示arrDays(0)为"Sun"、arrDays(1)为"Mon"等;无论调整Split输入的星期顺序,结果始终一致。日历程序功能正常,但Split函数的这一现象存在疑问。
附相关截图:
- 日历选择起始界面
- arrDays监视列表
- 工作日第一天(周日)
- 工作日第二天
- 完整日历
内容的提问来源于stack exchange,提问作者OldFlyer
相关产品推荐
相关产品推荐

