重新排列单列的数据

时间:2015-11-09 10:28:00

标签: excel vba excel-vba

我在编写Excel VBA代码时需要帮助。我有以下格式的数据:

12.12312
ser-asd alskdja123 alskd bv
laskd alskdj alsdj
12.423
12.656
asd sdfgsd sdfsd sdfsdf
sdfsd sd fsd fsd fsdf

当前数据存储在一个Excel列中。我希望采用以下格式:

12.12312      ser-asd alskdja123 alskd bv      laskd alskdj alsdj
12.423
12.656        ser-asd alskdja123 alskd bv      sdfsd sd fsd fsd fsdf

我不是高级程序员,我是网络工程师。

2 个答案:

答案 0 :(得分:1)

从A列收集字符串后,您将删除行;始终从底部开始,并在删除行时工作到顶部。将字符串收集到分隔列表中(在以下情况下使用零长度空格作为分隔符),您可以使用SplitUBound function将字符串直接.Resize到目标单元格中目的地。

NumberFormat numberFormat = NumberFormat.getNumberInstance(Locale.GERMAN);
numberFormat.setMaximumFractionDigits(2);
numberFormat.setMinimumFractionDigits(2);
numberFormat.setGroupingUsed(false);
System.out.println(numberFormat.format(new BigDecimal(589555.23)));

此例程确实取决于您列出的值在A列中。

答案 1 :(得分:0)

我猜测这些输入实际需要的是:

SO33607094 example

没有阴影行。如果没有VBA,这是可以实现的,只要数字终止列表,例如:

=IFERROR(IF(AND(ISNUMBER($A1),NOT(ISNUMBER(OFFSET($A1,COLUMN()-1,)))),IF(A1<>"",OFFSET($A1,COLUMN()-1,),""),OFFSET($A1,COLUMN(),-1,)),"")  
B1中的

向下复制以适应所有公式,直到列始终为空白。

可以通过修复&#39;删除阴影行。公式结果(复制所有单元格和选择性粘贴...,顶部的值)并过滤以删除ColumnB中空白的行。

假设12.12312之类的内容确实是一个数字,而不是文本。