首页 > 解决方案 > [Excel 2010 VBA]运行VBA代码后单元格格式发生变化

问题描述

我在使用 VBA 时遇到了这个问题,我还没有弄清楚如何解决,因此很想在这里问一些专家。

所以我的并发症是我有一个值为 AUG18 的单元格(在公式栏中:'AUG18

我试图编写一个简单的代码来将该单元格的值复制到它下面的其他单元格。代码运行良好,但在我运行代码后单元格的格式发生了变化。

前:

在此处输入图像描述

后:

在此处输入图像描述

这是代码:

Sub AutoFill()
    Range("A1").CurrentRegion.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
    Range("A1").CurrentRegion.Value = Range("A1").CurrentRegion.Value
End Sub

任何人都知道如何解决这个问题?提前致谢。

标签: excelvba

解决方案


对我来说,价值转移导致了最初的问题;复制/粘贴值似乎有效。

Sub AutoFill()
    With Range("A1").CurrentRegion
        .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
        .Copy
        .PasteSpecial xlPasteValues
    End With
End Sub

推荐阅读