在VBA

时间:2018-03-02 23:08:50

标签: excel vba excel-vba

我正在使用VBA在已插入下载数据集的列中输入公式。显然,我插入的数据集存储为文本,因此插入的列继承了该特性。我想要清楚,它不是格式化作为文本,它有一个 typename 的文本。

我有=2+2,单元格显示= 2 + 2,而不是评估公式并显示4。 从其他一些建议,我试过

activecell.value = Evaluate(activecell.value)

那样有效,然后单元格会显示4.但是公式现在已经消失了,单元格的公式= 4.我需要保留公式才能使用自动填充功能。

我可以在VBA中循环,但这似乎过于复杂。是否有一种简单的方法可以强制excel停止假设数据类型是文本?

1 个答案:

答案 0 :(得分:3)

如果公式栏和单元格都显示:

=2 + 2

然后这应该可以解决问题:

Sub qwerty()
    With ActiveCell
        .NumberFormat = "General"
        .Formula = .Value
    End With
End Sub

enter image description here