我在编写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
我不是高级程序员,我是网络工程师。
答案 0 :(得分:1)
从A列收集字符串后,您将删除行;始终从底部开始,并在删除行时工作到顶部。将字符串收集到分隔列表中(在以下情况下使用零长度空格作为分隔符),您可以使用Split到UBound 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)
我猜测这些输入实际需要的是:
没有阴影行。如果没有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
之类的内容确实是一个数字,而不是文本。