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

前端 未结 1 483
北恋
北恋 2021-01-12 12:43

I\'ve a problem with this VBA macro.

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

My test is here.

相关标签:
1条回答
  • 2021-01-12 13:16

    I'm not sure if this will help, as it is a bit hard to tell what your underlying requirement is, but here goes anyway:

    Several things affect the display of a cell:

    1. the entered value, if its a constant
    2. the result of a calculation, if its a formula
    3. the format of the cell
    4. the conditional format(s) of the cell, if any

    In the example sheet provided you have a formula of =ROW()&COLUMN() which returns a string result of 22

    You can make this display something else by applying a cell format,
    eg a format of 0;0;0;Ov\e\r\ri\d\d\e\n t\ext will display any string value as Overridden text

    This can by applied with VBA with

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

    or

    Range("B2").NumberFormat = "0;0;0;""Overridden texts"""
    
    0 讨论(0)
提交回复
热议问题