大众计算机学习网

专门提供各种电脑教程

VBA检查单元格有没有使用函数

Admin | 2013-10-24 8:43:56 | 被阅次数 | 3698

  检查或判断单元格是否有函数或使用了公式,那么,在Excel里面,可以通过如下的两种代码来实现,下面是示例代码,你可以根据需要稍加修改即可使用。

  代码一:

  Rem 定位公式单元格
  Set FormulasCells = Sheet1.UsedRange.SpecialCells(xlCellTypeFormulas)
  Rem 取交集
  Set c = Application.Intersect([B5], FormulasCells)
  Rem 判断交集是否存在
  If c Is Nothing Then
    MsgBox "B5没有公式"
  Else
    MsgBox "B5有公式"
  End If

  上述是检查B5单元格,你可以修改成为其它单元格,这样就能满足你的需要了。

  代码二:

  Select Case Selection.HasFormula
  Case True
    MsgBox "公式单元格!"
  Case False
    MsgBox "非公式单元格!"
  Case Else
    MsgBox "公式区域:" & Selection.SpecialCells(xlCellTypeFormulas, 23).Address(0, 0)
  End Select

  代码说明:检查所选择的单元格区域是否含有公式。

   第1行代码返回所选择单元格区域的HasFormula属性值。如果区域中所有单元格均包含公式,则该值为True;如果所有单元格均不包含公式,则该值为False。
  第2、3行代码,如果返回True,说明区域中所有单元格均包含公式。
  第4、5行代码,如果返回False,说明区域中所有单元格均不包含公式。
  第6、7行代码,如果是混合区域,则显示包含公式的单元格地址。