none
关于excel固定单元格格式,而能录入数据的问题请教 RRS feed

  • 问题

  • 请问大家,有可能只固定excel单元格格式么??即只固定单元格格式,无论复制粘贴或者手动输入数据均无法更改单元格的格式,而可以任意输入数据。希望这个官方论坛能有确切的满意答案!

    sam
    2011年11月8日 13:21

答案

  • Private Sub Worksheet_Change(ByVal Target As Range)

    Target.NumberFormatLocal = "指定格式"

    End Sub


    在单元格里横行的……

    QQ:76332468

    www.excelpx.com

    www.exceljy.com

    www.access-cn.com/vvb/

    专业方向:EXCEL操作

    2011年11月9日 4:14
  • 下面是代码和截图,其中的格式"#,##0.00"只是举例,请根据你的实际需要替换。

    Option Explicit
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        Target.NumberFormatLocal = "#,##0.00"
    End Sub


    Microsoft Technet Observer 如果问题没有解决,请继续跟帖讨论;如果问题得到解决,请标记为答复。
    2011年11月10日 16:20
    版主

全部回复

  • Private Sub Worksheet_Change(ByVal Target As Range)

    Target.NumberFormatLocal = "指定格式"

    End Sub


    在单元格里横行的……

    QQ:76332468

    www.excelpx.com

    www.exceljy.com

    www.access-cn.com/vvb/

    专业方向:EXCEL操作

    2011年11月9日 4:14
  • Private Sub Worksheet_Change(ByVal Target As Range)

    Target.NumberFormatLocal = "指定格式"

    End Sub


    在单元格里横行的……

    QQ:76332468

    www.excelpx.com

    www.exceljy.com

    www.access-cn.com/vvb/

    专业方向:EXCEL操作

    抱歉,没看太明白您的回复,请问可以帮忙解释一下么?

    sam
    2011年11月10日 8:35
  • pureshadow版主的意思是需要用VBA来实现。

    按ALT-F11进入VBA编程环境,为所需的工作表写代码,比如你要在sheet1中实现你的要求,则需要为sheet1工作表的worksheet_change事件写代码,该事件在sheet1有变化的时候被触发,然后执行该事件的代码。

    要实现你所提出的要求,只需要一行代码,即:Target.NumberFormatLocal="指定格式"

    注意把“指定格式”替换成你需要设置的格式。


    Microsoft Technet Observer 如果问题没有解决,请继续跟帖讨论;如果问题得到解决,请标记为答复。
    2011年11月10日 15:55
    版主
  • 下面是代码和截图,其中的格式"#,##0.00"只是举例,请根据你的实际需要替换。

    Option Explicit
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        Target.NumberFormatLocal = "#,##0.00"
    End Sub


    Microsoft Technet Observer 如果问题没有解决,请继续跟帖讨论;如果问题得到解决,请标记为答复。
    2011年11月10日 16:20
    版主
  • 谢谢各位的热心解答,问题基本解决了,另外请教一下,如果要实现我这个功能,只有使用宏来实现了么??请问是否有不使用宏能实现我所需要的这个功能呢??因为我的表格要发给客户的,如果要求客户启用宏才能正常使用这个表格也许不太现实,因为客户会对宏这个有点敏感。


    sam
    2011年11月11日 14:59