簡體   English   中英

如何在不改變公式的情況下改變單元格的值(顯示文本)?

[英]How to VBA change cell's value (display text) without changing its formula?

我有這個VBA宏的問題。

Sub demoChangeText()
    Application.Range("B2").Value = "Overidden text"
End Sub

我的測試在這里 要運行此宏,請在Excel中打開它,按Ctrl+F8並選擇demoChangeText

結果,此宏更改單元格B2的值(顯示給我們的文本),但清除其公式。 我需要改變B2的價值,但也需要保留公式。

所以我的問題是如何更改單元格的顯示文本而不更改其公式?

UPDATE

我問這個問題,因為我正試圖解決這個問題

我不確定這是否會有所幫助,因為要說明你的基本要求有點難以理解,但無論如何都要進行:

有幾件事會影響單元格的顯示

  1. 輸入的值,如果它是常量
  2. 計算的結果,如果是公式
  3. 細胞的格式
  4. 單元格的條件格式(如果有的話)

在提供的示例表中,您有一個公式=ROW()&COLUMN() ,它返回22的字符串結果

您可以通過應用單元格格式使其顯示其他內容,
例如格式為0;0;0;Ov\\e\\r\\ri\\d\\d\\e\\nt\\ext任何字符串值顯示為Overridden text

這可以通過VBA應用

Range("B2").NumberFormat = "0;0;0;Ov\e\r\ri\d\d\e\n t\ext\s"

要么

Range("B2").NumberFormat = "0;0;0;""Overridden texts"""

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM