VBA Excel – 根据单元格值插入符号

我需要使用Excel,我绝对是新的。 我正在寻找一个VBA解决scheme,以加快一些日常工作。 这里是我的情况:我需要检查C列中具有负值,正值和中值的单元,然后在列B的相应单元格中插入sysmbols。

例如,如果C4有一个正值(2,345), B4应该有&u&作为符号。 如果C5具有负值(-12.98),则B5应该具有作为符号。 如果C6有一个中间值(0.000),那么应该用&n作为符号插入B6

一个空的B列已经存在,值都在列C中

试试这个:

Sub WhatEver() Dim C As Range Set C = Intersect(ActiveSheet.UsedRange, Range("C:C")) For Each cc In C ccv = cc.Value If ccv <> "" Then If ccv = 0 Then cc.Offset(0, -1).Value = "&n&" ElseIf ccv > 0 Then cc.Offset(0, -1).Value = "&u&" Else cc.Offset(0, -1).Value = "&d&" End If End If Next cc End Sub 

正如凯尔所说,你所需要的只是一个简单的(嵌套的)if-formula:

 =IF(C1<0;"&d&";IF(C1>0;"&u&";"&n&")) 

格式非常简单,if有三个部分用分号隔开。 第一个是逻辑testing,你testing什么,在这种情况下,如果C1中的值小于(或大于)0,那么如果testing中的语句为真,则下一个是单元格中想要的值;如果是虚假的,最后要input什么。

在这种情况下,如果C1不小于0,我们再次testing,看它是否大于零,这就是为什么在第一个if语句中有另一个if语句的原因。

要将公式应用于整个列,只需将其全部复制下来,并且引用的单元格应自动更新。