获取单元格的值,或者如果是公式 – vba,则更改该值

我正在遍历工作表中的单元格,并获取单元格的值,如下所示:

item = Cells(i, 3).value 

虽然有时候,我在单元格中有一些公式,例如:

 =BD=F5=E3 =some string 

这是types错误,但Excel生成它作为公式,所以当我在这些单元格上做这个: Cells().Value我得到types不匹配的错误。

有没有办法通过这个错误? 或者像在工作表中声明所有的单元格为string,不pipe是什么?

谢谢

  • Cells(r, c).Value给出单元格的显示值
  • Cells(r, c).Text将显示的值作为string返回
  • Cells(r, c).Formula返回单元格的公式
  • Cells(r, c).FormulaR1C1以R1C1语法返回公式。

不知道我没有完全理解你的代码,但是,如果你在Cells(i,3).value中声明你的item为variant,你可以检查数据的types,并采取相应的行动。 例如要忽略错误使用IsError(Cells(i,3).value)等