Excel 领先的零赢得´;合并VBA列时不粘贴

Excel 领先的零赢得´;合并VBA列时不粘贴,excel,vba,merge,leading-zero,Excel,Vba,Merge,Leading Zero,我需要使用两列的信息来构建数字,如下所示: -424296-4.24296 -4 20320 -4.20320 -4 16356 -4.16356 -4 12410 -4.12410 -4 08500 -4.08500 -4 04619 -4.04619 -400739-4.00739 这是我用来合并值的例程: Range("R3").Select Do While ActiveCell <> "" ActiveCell.Offset(0, 1

我需要使用两列的信息来构建数字,如下所示:

-424296-4.24296
-4  20320   -4.20320
-4  16356   -4.16356
-4  12410   -4.12410
-4  08500   -4.08500
-4  04619   -4.04619
-400739-4.00739

这是我用来合并值的例程:

Range("R3").Select

Do While ActiveCell <> ""
    ActiveCell.Offset(0, 1).FormulaR1C1 = _
        ActiveCell.Offset(0, -1) & "." & ActiveCell.Offset(0, 0)
    ActiveCell.Offset(1, 0).Select
Loop
这是我的程序给我的输出:

-424296-4.24296
-4  20320   -4.20320
-4  16356   -4.16356
-4  12410   -4.12410
-4  08500   -4.85000
-4  04619   -4.46190
-400739-4.73900

(最后三行是错误的)

谁能帮我解决这个问题


谢谢,

而不是
ActiveCell.Offset(0,-1)&“&ActiveCell.Offset(0,0)
请使用此选项:

ActiveCell.Offset(0, -1) - ActiveCell.Offset(0, 0)/100000

将数字生成为数字,而不是文本。显示与值不同。通过更改格式以显示前导零,您对“R”列中的值本身没有做任何更改。我在这里看到的唯一风险是,R列中的值可能超过5个位置。这是不正确的。最好在R中找到max列的长度,取最大长度的10^。但是,如果所有已知值都小于99999,这是非常干净的。@tigeravatar,这解决了前导零的问题,但导致了另一个问题:我在Q列中有正数和负数。必须想出一个if例程,在Q列中为正数时求和,在Q列中为负数时求差。
ActiveCell.Offset(0,-1)+Sgn(ActiveCell.Offset(0,-1))*ActiveCell.Offset(0,0)/100000
来解决符号问题。@tigeravatar,也非常感谢您!
ActiveCell.Offset(0, -1) - ActiveCell.Offset(0, 0)/100000