我正在使用Access VBA使用数据库中的信息填充Excel电子表格。以逗号分隔字符串,而不是连字符
我有一个名为“Dependent Project(s)”的专栏,填充项目编号。这是一个固定宽度的列,并且启用了换行文本。
眼下,输出是在
01-04,01-05,01-
06,01-07
的格式,我想输出为这种格式
01-04,01-05,
01-06,01-07
我的想法是我的VBA代码进行检查,看如果列的内容要包装到第二行,并且如果是这样,则在最后一个“,”它可以找到的地方断开该行。
我接近这个错误吗?如果是这样,我的其他选择是什么?
我无非是一个简单的WrapText = True
命令,因为我不知道从哪里开始。我不像我希望的那样在VBA方面有经验。
感谢您提供任何帮助。
当前代码:
'format Dependent Project(s) column as text, and wrap column
Columns("D").Select
Selection.NumberFormat = "@"
Selection.WrapText = True
编辑:
最后我用下面布拉德的解决方案;他的解决方案被标记为最佳答案。
但是,我确实需要修改一下代码,以使其适用于我的特定情况。调暗变量作为范围给我一个错误,所以这是我最终使用的代码。
Dim ProjList As String
ProjList = QF_CustomFormatFunct(ProjectKey) 'A function that given raw data
'to builds a string in format
'"01-01, 01-02, etc"
ProjList = Replace(ProjList, "-", ChrW(8209))
后ProjList有新的非中断连字符,它填充到列d,已被格式化为上述文本换行了。
您可以包括这样每个逗号后的空间使用? '01-04,01-05,01-06,01-07'如果这是可以接受的,那么Excel是否会按照您的意愿包装单元格值? – HansUp
我能够添加一个逗号,但现在我收到了一些我需要调试的错误。我会更新你,并让我知道这个解决方案是否能够尽快工作。 – jtchase08
不幸的是,它仍然没有按照我想要的方式包装列。现在只需要将一个字符排成一行。 – jtchase08