乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > =<em>IF</em>(A2&lt;&gt;,<em>IF<

=<em>IF</em>(A2&lt;&gt;,<em>IF<

作者:乔山办公网日期:

返回目录:excel表格制作


这个是计算机在做减法浮点运算出现的一个问题.
解决的办法是,点工具→选项,重新计算→以显示精度为准.
或者,加上4舍五入函数来限制结果的范围,例如
IF(round(A2-B2,4)<>0,A2-B2,"平衡")


这个可以使用VBA代码的方法来解决,也可以使用公式实现。下面就和大家说说公式实现动态记录Excel数据录入时间的步骤:
依次单击【文件】【选项】【公式】,勾选【迭代计算】。

在B2单元格输入以下公式:
=IF(A2="","",IF(CELL("contents")=A2,NOW(),B2))

Cell函数可以返回单元格的信息,参数使用"contents",就e79fa5e98193e59b9ee7ad94362是获取最后活动单元格的内容。
公式的意思是:如果A2为空,就显示为空白,如果最后活动单元格的内容等于A2,就返回当前的时间,否则仍然等于B2单元格的内容。
接下来选中B列数据区域,设置单元格格式:
h"时"mm"分"ss"秒"

好了,现在试试吧:
只要在A列输入数据后按回车结束,B列就可以显示当前的系统时间了。

这个公式有一个缺陷,如果在其他区域中输入和A列相同的内容,B列的时间也会发生变化。
假如不需要在其他区域中输入内容,使用这个公式就可以满足要求。如果在其他区域也要输入数据,可以试试下面这个:
=IF(A2="","",IF((CELL("contents")=A2)*(CELL("col")=1)*(CELL("row")=ROW()),NOW(),B2))
Cell函数使用"col"和"row"做参数,获取的是最后活动单元格的列号和行号信息。
公式的意思是:如果A2为空,就显示为空白,如果最后活动单元格的内容等于A2,并且最后活动单元格的行号和列号都等于左侧单元格(A2)的行号列号,就返回当前的时间,否则仍然等于B2单元格的内容。

这里可以有两种方法解决,即:VBA程序和函数公式(迭代计算)。

(一)VBA程序,其大致的代码如下,楼主可以执行修改其范围:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim i1, i2

On Error Resume Next

Set mysheet1 = ThisWorkbook.Worksheets("Sheet1")  '定义工作表

i1 = Target.Row      '获取改变e799bee5baa6e79fa5e98193e58685e5aeb9361单元格的行号

i2 = Target.Column  '获取改变单元格的列号


If mysheet1.Cells(i1, 1) <> "" And mysheet1.Cells(i1, 2) = "" And i2 = 1 Then

'如果改变的第一列单元格不是空白,且要填充的第二列时间是空白,且改变的单元格属于第一列,则

mysheet1.Cells(i1, 2) = Now()  '填充当前系统的时间


End If


End Sub


即:在A列单元格输入内容时,对应的B列打单元格显示时间

(二)使用函数公式

①在Excel表格的选项里面勾选“启用迭代计算”。

公式→启用迭代计算

②单元格里面输入公式=IF(A2="","",IF(B2<>NOW(),IF(B2="",NOW(),B2),B2))

迭代公式计算结果

相关阅读

  • =<em>IF</em>(A2&lt;&gt;,<em>IF<

  • 乔山办公网excel表格制作
  • 这个是计算机在做减法浮点运算出现的一个问题.解决的办法是,点工具→选项,重新计算→以显示精度为准.或者,加上4舍五入函数来限制结果的范围,例如IF(round(A2-B2,4)<>0,A2-B2,"平衡")exce
关键词不能为空

ppt怎么做_excel表格制作_office365_word文档_365办公网