繁体   English   中英

Excel-VBA:如何改进该代码(范围内的行中文本功能)

[英]Excel-VBA: how to improve that code (text in rows feature for a range)

我目前有一个要解决的问题。 它涉及到在excel文件中转换格式,这使我发疯。

将原始数据从Excel导入另一个Excel

现在,我找到了一种可以乐观地解决问题的方法。 为了“修复”它,我正在使用“文本行中”功能->作为VBA记录为

   Selection.TextToColumns Destination:=range("A1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
    :=Array(1, 1), TrailingMinusNumbers:=True

我了解到,可以使用此代码修复一行,但一次不能修复很多行。 现在,我想知道如何改进此代码,一次修复一个范围(“ A7”,“ DR621”)。

如果有人可以帮助我并指出正确的方向,我将非常高兴。

在此先感谢亚瑟

编辑:排序错误作为屏幕截图

http://www.xup.in/dl,78038715/date_wrong_sorting.jpg/

如何在Excel中使用“文本到列”命令解析数据

您转换的范围可能包含许多行,但是一次只能转换一列数据

您可以像这样循环列(示例偏移量是同一工作表上的5列):

For Each c In Selection.Columns
   c.TextToColumns Destination:=Cells(c.Row, c.Column + 5), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
    :=Array(1, 1), TrailingMinusNumbers:=True
Next

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM