Excel 在具有公式的单元格上强制使用 Text NumberFormat
Excel forcing Text NumberFormat on a cell with Formula
我正在尝试将公式存储在单元格中。该单元格的 NumberFormat
设置为 "@"
即文本。当我这样做时:
TargetSheet.Cells(Row, Col).Formula = "=A7"
A7 中有 "1805R03-01"
我在单元格中显示 "=A7"
。
尽管我认为如果您通过 Formula
属性 设置文本格式的字段,您应该被允许为其定义公式,但我将代码更改为:
(1) TargetSheet.Cells(Row, Col).NumberFormat = "General"
(2) TargetSheet.Cells(Row, Col).Formula = "=A7"
这让我得到了我想要的东西,因为现在我的单元格显示 "1805R03-01"
的正确值,但数字格式由 Excel 再次设置为“@”,这样如果我点击在该单元格上输入显示 returns 到 "=A7"
。我可以在上面的代码中重新添加 Line (1)
as 和 additional Line (3)
,但这只是意味着我将停止将我的公式转换回文本一次,在该单元格上输入两次仍然导致 "=A7"
。如何阻止 Excel 在单元格上强制使用文本数字格式?当我手动 return 将其格式设置为 "General"
时,单元格显示正确,因此不需要文本数字格式。
我不确定这是否有帮助,但我以前遇到过类似的问题,其中 Excel 会根据自己的判断自动切换回数字格式。
所以我所做的是:假设我有两列
A B
abc 123
asuh 412
auw 9781
ija 124
我会将另一列 C 列的编号设置为常规
Range("C:C").Select
Selection.NumberFormat = "general"
然后将A或B复制进去。在您的情况下,它将自动执行代码。
它没有再变回文本或数字。
至少对我来说。
如果单元格 A7
的数字格式为 text
,请尝试将其设置为 general
。然后在cells(row, col)
中重新输入公式,看看是否得到不同的结果。
从属单元格(在公式审计的上下文中)似乎继承了它们前例的 NumberFormat -- 除非前例单元格的 NumberFormat 是 general
。
我正在尝试将公式存储在单元格中。该单元格的 NumberFormat
设置为 "@"
即文本。当我这样做时:
TargetSheet.Cells(Row, Col).Formula = "=A7"
A7 中有 "1805R03-01"
我在单元格中显示 "=A7"
。
尽管我认为如果您通过 Formula
属性 设置文本格式的字段,您应该被允许为其定义公式,但我将代码更改为:
(1) TargetSheet.Cells(Row, Col).NumberFormat = "General"
(2) TargetSheet.Cells(Row, Col).Formula = "=A7"
这让我得到了我想要的东西,因为现在我的单元格显示 "1805R03-01"
的正确值,但数字格式由 Excel 再次设置为“@”,这样如果我点击在该单元格上输入显示 returns 到 "=A7"
。我可以在上面的代码中重新添加 Line (1)
as 和 additional Line (3)
,但这只是意味着我将停止将我的公式转换回文本一次,在该单元格上输入两次仍然导致 "=A7"
。如何阻止 Excel 在单元格上强制使用文本数字格式?当我手动 return 将其格式设置为 "General"
时,单元格显示正确,因此不需要文本数字格式。
我不确定这是否有帮助,但我以前遇到过类似的问题,其中 Excel 会根据自己的判断自动切换回数字格式。
所以我所做的是:假设我有两列
A B
abc 123
asuh 412
auw 9781
ija 124
我会将另一列 C 列的编号设置为常规
Range("C:C").Select
Selection.NumberFormat = "general"
然后将A或B复制进去。在您的情况下,它将自动执行代码。
它没有再变回文本或数字。 至少对我来说。
如果单元格 A7
的数字格式为 text
,请尝试将其设置为 general
。然后在cells(row, col)
中重新输入公式,看看是否得到不同的结果。
从属单元格(在公式审计的上下文中)似乎继承了它们前例的 NumberFormat -- 除非前例单元格的 NumberFormat 是 general
。