【发布时间】:2020-02-15 08:30:14
【问题描述】:
我有八个不同的变量,它们可以有值也可以没有值。它们看起来像这样:
A= "h"
B= "(z)"
C= "a"
D= ""
E= "[st]"
F= ""
G= "xx"
H= "(t)"
我需要它们按字母顺序排列在一起(必须包括括号):
Aim= "a,h,[st],(t),xx,(z)"
我知道如何将它们放在一个字符串中,以及如何将“,”放在正确的位置。
如何在忽略括号的情况下按字母顺序排列它们?
排除空值并添加我为每个值使用的逗号:
If IsEmpty(HH) = False Then HHH = HH.Value & ","
为了将它们放在一起,我使用“&”函数
StrHoribez = BBB & CCC & DDD & EEE & FFF & GGG & HHH & III
要删除我使用的最后一个逗号:
If Right$(StrHoribez, 1) = "," Then StrHoribez = Left$(StrHoribez, Len(StrHoribez) - 1)
字母排序可以发生在这些步骤之间。
我该如何解决这个问题?也许有数组的东西,但我没有使用这些的经验。
【问题讨论】:
-
使用
Replace()删除非文本字符 -
结果是否必须包含非文本字符?
-
您将此标记为 Excel 问题。您可以将这些值放入 Excel 工作表中,进行排序,然后再次检索它们。
-
@D_Bester 感谢您的评论。当您在 Excel 中对其进行排序时,它会将所有带括号的变量放在一起,而不是忽略它。这也必须在将来自动工作。我放弃了 Excel-Tag。抱歉,如果这令人困惑。
标签: vba