使用文本到列

时间:2015-08-12 13:55:43

标签: excel vba excel-vba

使用Text-To-Columns时,有没有办法在您使用命令的单元格中保留文本的字体样式?例如,我的文本格式为: 12345 12345 12345 ,12345。< / p>

使用Text-To-Columns,我希望最终结果为4列,文本保留其当前字体样式,但该功能将文本恢复为第4个12345&#39;的样式。我尝试使用Destination:= [code] .Font.ColorIndex,但这似乎没有用。

有什么想法吗?

                        ActiveSheet.Range("M" & k).Select
                        Selection.Font.ColorIndex = ActiveSheet.Range(MyValueAIMS & k).Font.ColorIndex

                        If InStr(ActiveSheet.Range(MyValueAIMS & k).Value, ",") > 0 Then
                            Range(MyValueAIMS & k).Select
                            ActiveSheet.Range(MyValueAIMS & k).Replace _
                                What:=Chr(10), Replacement:="" 'maybe change this so it puts in an actual delimiter?
                                    '.Font.ColorIndex = ActiveSheet.Range(MyValueAIMS & k).Font.ColorIndex
                            Selection.TextToColumns Destination:=Range("M" & k), DataType:=xlDelimited, _
                                TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
                                Semicolon:=True, Comma:=True, Space:=True, Other:=True, OtherChar _
                                :="-", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), _
                                Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1)), TrailingMinusNumbers:=True

1 个答案:

答案 0 :(得分:0)

您需要编写代码来扫描源单元格中的每个字符,并将字符及其格式化移动到目标单元格,以便在&#34;中断时更改目标单元格。到达角色。

使用text-to-columns没有任何好处。我知道没有更简单的方法可以做到这一点。

不用说它有相当多的工作。

This页面可能会让您深入了解可能编写的代码类型以及可能使用的属性和方法。

请注意,如果您在源代码单元格中的格式设置很简单,则代码会更简单)。如果源单元总是&#34;非粗体粗体非粗体&#34;你可以用不同的分隔符进行分隔。

哈维