Excel:哪个函数用于粗体单元格的条件副本?

时间:2018-03-23 12:58:09

标签: excel function excel-formula

我有一个我要编辑的大数据集。

因此,我需要在指定的单元格之前复制列的单元格的值:如果它是一个粗体值。如果前面的列中的值不是粗体,则函数需要检查指定单元格之前的列的值和上面的一行。如果这个是粗体而不是取这个值,如果不是,请检查上面一行的值,等等。

在添加的图片中,我现在简单介绍了我的情况,以及它是如何实现的。

显然,如果数据集与图片中一样小,那么手工操作就可以实现。但这不是一个包含大数据集的选项。

以下是现在的情况和想要结果的一个例子。

1 个答案:

答案 0 :(得分:2)

  • 首选是在表中包含一个类列表,并使用它来确定要复制到B列的值。
  • 第二个选择是用于识别粗体格式的VBA例程
  • 没有VBA的第三选择(但指的是XLM4宏):

在公式下 - >定义名称

Bold  Refers to:  =GET.CELL(20,OFFSET(INDIRECT("RC",FALSE),0,-1))

这将返回TRUEFALSE,具体取决于您输入指定公式Bold

左侧的单元格中第一个字母的粗体
B4:  =IF(A4="","",IF(Bold,A4,B3))

并填写。

使用Bold质量检测的一个主要问题是,如果Bold质量发生变化,除非同时触发计算事件,否则不会更新。并且更改字体不会那样做。

这就是为什么一个类列表可能是一个更好的方法。

假设您有一个名为Classes

的命名范围

然后你可以使用这个公式:

B4:  =IF(COUNTIF(Classes,A4),A4,B3)

正如您所看到的,它们都是静态工作,但请注意,在格式化单元格时,Bold质量消失了。由于在应用格式化之前输入了该公式,因此没有任何更改。因此“表”列返回正确的结果; “粗体”列也会返回所需的结果,但不会在下一次计算事件之后返回。

enter image description here