如果单元格为空,如何仅运行公式

时间:2019-09-17 15:08:49

标签: excel

我正在编写一个公式,以对电子表格的某些元素进行匹配分析。包含公式的列中已经填充了值,但是我需要在空白单元格上运行公式。该公式有效,但覆盖了我在填充单元格中拥有的当前信息。

我尝试了VBA代码,该代码过于复杂且无法正常工作。使用VBA,我尝试将公式仅插入空格,但是出现了一些问题。我还尝试了一个基本的Excel公式。

=IF(COUNTIFS(A:A,A2,BU:BU,"CLOUD")=0,"Not Cloud",IF(COUNTIFS(A:A,A2,BU:BU,"NOT CLOUD")=0,"Cloud","Hybrid"))

我尝试过的VBA代码:

If (IsEmpty(Bucket) Or Bucket = "" Or Bucket = vbNullString) And _
 (GetCellValue(.Cells(i, "BU")) = "CLOUD") Then
    Range("CC:CC").Formula =  "=IF(COUNTIFS(A:A,A2,BU:BU,""CLOUD"")=0,"Not Cloud", _
    IF(COUNTIFS(A:A,A2,BU:BU,"NOT CLOUD")=0,"Cloud"","Hybrid"))"

提醒您,这是高级版本

我希望该公式仅在没有适当值的单元格中运行。在执行公式之前,它不应覆盖我之前运行的VBA脚本中的数据。处置列应完全充满值。该公式只需要在空白单元格中运行。High-Level Picture example of excel spreadsheet

1 个答案:

答案 0 :(得分:1)

您可以通过增加一列来实现。

在“处置”右侧的列中(如有必要,插入一个)下面的公式(假设“处置”为C列,则为第2行的示例):

= IF(C2 =“”; [这里是您的公式]; C2)

这将为您提供一列充满值的列,每当您将值放入C列时,它将覆盖公式。

编辑:您可以将该公式向下复制到整个列中,以达到所需的效果。