Excel 如何根据D/C列使我的号码变为正/负?
我正试图在excel中找到一个合适的公式,根据包含借方和贷方选项的下拉列表,允许我的数字变为正/负。(例如,在B7-B45单元格中,我有一个选择借方和贷方的下拉列表。在E7-E45单元格中是金额列。因此,假设用户在“E7”中键入金额,如果他们从下拉列表中选择“贷方”,我希望该数字更改为“负数”。但是,如果他们选择“借方”从下拉列表中,他们输入的数字仍然是“正数”。您能再添加一列吗?那么这就是我建议的解决方案:Excel 如何根据D/C列使我的号码变为正/负?,excel,Excel,我正试图在excel中找到一个合适的公式,根据包含借方和贷方选项的下拉列表,允许我的数字变为正/负。(例如,在B7-B45单元格中,我有一个选择借方和贷方的下拉列表。在E7-E45单元格中是金额列。因此,假设用户在“E7”中键入金额,如果他们从下拉列表中选择“贷方”,我希望该数字更改为“负数”。但是,如果他们选择“借方”从下拉列表中,他们输入的数字仍然是“正数”。您能再添加一列吗?那么这就是我建议的解决方案: =IF(B7="Credit",-1*E7,E7) 如果无法添加列,我将编写一个小
=IF(B7="Credit",-1*E7,E7)
如果无法添加列,我将编写一个小宏,例如:
Sub CheckValue()
For i = 7 To 45
If ActiveSheet.Range("B" & i).Value = "Credit" Then
If Sgn(ActiveSheet.Range("E" & i).Value) = 1 Then
ActiveSheet.Range("E" & i).Value = ActiveSheet.Range("E" & i).Value * -1
End If
End If
Next i
End Sub
你能再加一列吗?那么这就是我建议的解决方案:
=IF(B7="Credit",-1*E7,E7)
如果无法添加列,我将编写一个小宏,例如:
Sub CheckValue()
For i = 7 To 45
If ActiveSheet.Range("B" & i).Value = "Credit" Then
If Sgn(ActiveSheet.Range("E" & i).Value) = 1 Then
ActiveSheet.Range("E" & i).Value = ActiveSheet.Range("E" & i).Value * -1
End If
End If
Next i
End Sub
最简单的方法是:-
=-(num)
示例:-
=-(-1)输出:1
=-(1)输出:-1
最简单的方法是:-
=-(num)
示例:-
=-(-1)输出:1
=-(1)输出:-1
这个问题与本网站无关,因为它不是一个编程问题。我同意Joe的观点,这不是一个“我的代码有什么问题”的问题。作为开始OP的讨论,除非您有帮助器列,否则您将需要使用VBA。如果使用VBA,则使用工作表更改事件检测B列和E列中下拉列表(我假设其数据验证)中的单元格更改。然后根据B中的值,将E更改为+/-ABS(E中的值)。希望这能让你开始。谢谢@n贝利是的下拉列表是数据验证。我会用这种方法试试,看看结果如何。为什么不做相反的事情呢?如果
>0
中有“debit”,如果中有“credit”,这个问题对于这个网站来说是离题的,因为它不是一个编程问题。我同意Joe的观点,这不是一个“我的代码有什么问题”的问题。作为开始OP的讨论,除非您有帮助器列,否则您将需要使用VBA。如果使用VBA,则使用工作表更改事件检测B列和E列中下拉列表(我假设其数据验证)中的单元格更改。然后根据B中的值,将E更改为+/-ABS(E中的值)。希望这能让你开始。谢谢@n贝利是的下拉列表是数据验证。我会用这种方法试试,看看结果如何。为什么不做相反的事情呢?如果>0
在B中简单地用“借方”和在B中用“贷方”这是我的难题,它只能是一个金额列,我认为不可能用公式表示。我和你做的完全一样,但那不是他们想要的格式。我只是想确保我没有遗漏任何东西。我试图锁定公式,这样我仍然可以更改值,如果需要的话,而不是让公式擦除,但这也是不可能的。有没有别的方法可以得到我需要的东西?是的,你可以用宏来实现。我添加了一段代码,说明如何解决它。需要在输入E列中的所有金额后运行。非常感谢!!不用担心,Tiffany。这是我的困境,它只能是一个金额列,我认为这不可能是公式方面的。我和你做的完全一样,但那不是他们想要的格式。我只是想确保我没有遗漏任何东西。我试图锁定公式,这样我仍然可以更改值,如果需要的话,而不是让公式擦除,但这也是不可能的。有没有别的方法可以得到我需要的东西?是的,你可以用宏来实现。我添加了一段代码,说明如何解决它。需要在输入E列中的所有金额后运行。非常感谢!!不用担心,蒂芙尼。