怎么把EXCEL表格里的所有数字换成它的负对数

怎么把EXCEL表格里的所有数字换成它的负对数
2025-04-07 12:23:11
推荐回答(4个)
回答1:

楼上的宏不对
1.楼主要的是负对数,不是负数。
2.未必所有的单元格内都是数字,还可能有文本或空单元格。

楼主的问题不能直接用查找替换,需要用如下方法处理。

举个例子:
比如楼主的元数据在SHEET1表的A1:D100中.

那应该按如下方法处理。
1.插入新的表,比如叫SHEET2.
2.在SHEET2的A1中输入如下公式:
=IF(AND(ISNUMBER(SHEET1!A1),SHEET1!A1>0),-LOG10(SHEET1!A1),IF(ISBLANK(SHEET1!A1),"",SHEET1!A1))

3.将A1向右填充至D1,然后将A1:D1向下填充至A100:D100
4.复制SHEET2的A1:D100
5.回到SHEET1中,选择A1单元格,然后右键-选择性粘贴-数值-确定!
6.如果有格式问题,就选中,点“转化为数字”(可以复选),搞定。

这种方法实际上是做了个原表的映射,除了把含有正实数的单元格的内容转化为它的负对数外,其他单元格的值均不变。

希望能帮到你,祝你成功。

回答2:

打开宏编辑器或按Alt+F11
插入模块
在右边空白处粘贴以下代码

Sub 添加符号()
Dim s As Range
Selection.CurrentRegion.Select
For Each s In Selection
s = "-" & s
Next
End Sub
然后关闭宏编辑器
再运行宏

回答3:

在表外任意位置输入-1。
对-1单元格点击复制,将数据全部刷黑,编辑——选择性粘贴——乘。

回答4:

先选中要转换成负对数数字的单元格,单击鼠标右键——选设置单元格格式——弹出数字对话框——分类下边的自定义选框,在类型框中输入-0,然后按确定键就行了