在每个Excel单元格前面插入文本

时间:2014-05-13 16:24:02

标签: excel text replace excel-2010

我有一个带有一列数字的Excel 2010工作表,例如

-1.5629E+00
-1.5745E+00
-1.4344E+00
-1.6456E+00

这些是log10值,我想要原始值:

0.027359
0.026638
0.036776
0.022614

当然我可以插入一个完成正确操作的列,但这会扰乱后续使用工作表。我宁愿找到一种方法来插入这个文本

= 10 ^

在原始列中每个单元格的开头。我尝试录制一个宏,但该功能只是记录在单元格中添加一个完整的新条目,而不是在开头插入文本。

3 个答案:

答案 0 :(得分:1)

选择log10值并运行:

Sub AntiLog()
    Dim c as Range
    For Each c in Selection.Cells
        If IsNumeric(c.value) then c.Value=10^c.Value
    Next c
End Sub

答案 1 :(得分:1)

我想你可能误解了@pnuts的评论。 VBA在这里似乎有些过分。我们假设您的值列为A。在专栏B中,使用公式

=10^A1

然后向下应用。最后,复制该列并将特殊值粘贴到列A上,然后删除列B

答案 2 :(得分:0)

这是我最终得到的:

Sub AntiLog()
Dim c As Range
For Each c In Selection.Cells
    If IsNumeric(c.Value) And Not IsEmpty(c.Value) Then c.Value = 10 ^ c.Value
Next c
End Sub

与任何所需的关键相关联。然后,单击整个列范围,点击您的键,然后完成工作。最初工作量很大,但现在修复这些列只需要几秒钟的时间。感谢所有回复的人,尤其是蒂姆威廉斯;你的代码足以让我完成最后的工作。