2017-10-11 18 views
-1

我试图做一个文本列从一张表到另一个和下面的代码是不是从活动工作表复制数据到目的地...我使用的代码生成宏不同的文本列

Private Function ConvertText(rngSource As Range) 

    rngSource.TextToColumns Destination:=Sheets("Consolidated_Data").Range("V3"), DataType:=xlDelimited, _ 
     TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _ 
     Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _ 
     :=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True 

End Function 
+1

我很困惑,什么表是输入和什么是输出。你试过什么了?如果你从ws 1到ws 2,我建议你修改每个值(不是VBA版本,而是工作表函数),那么你可以在应该留下的单个空间上执行SPLIT()。然后你可以写你的目标表。请尝试使用此信息创建解决方案,如果遇到编码错误,您可以在此处发布它们。问候, – nbayly

+2

*这必须在VBA中完成* - 没有显示你的尝试,你会得到一点帮助。 [如何问](http://stackoverflow.com/help/how-to-ask) –

+0

工作表1是我的输入,工作表2是我的输出 – Maldred

回答

2

它出现的文本到列的方法不能用于从一个表到另一个,也就是说目标必须位于源数据表上。虽然在文档中我找不到这个。

因此,您需要添加一些代码,将您的sourceRange值放入要将数据拆分为列(即“V3”)的范围左上方的目标工作表中。

Sheets("Consolidated_Data").Range("V3") = sourceRange 'resize the Range V3 to size of sourceRange 
Sheets("Consolidated_Data").Range("V3").TextToColumns 
相关问题