限制Excel单元格输入值

Keyur Shah

我有Excel工作表。我已锁定并保护其他牢房。我有2个需要用户输入的单元格,并且两者都是货币数据类型。如果我在这些单元格中输入文本,则会使计算混乱,因此我希望以某种方式设置这些单元格的格式,以便任何人键入文本或句子都会产生错误,并且不会影响计算并要求输入数字。

我是Excel编程的新手,所以对我来说很难。

cyboashu

提示:数据验证是一种非常弱的控制机制。当您将值复制并粘贴到单元格中时,将通过所有数据验证。

为了解决问题,让我们假设工作表1上的货币单元为A1和B1。

在VBE中转到sheet1的代码并编写一个宏,如下所示

            Dim lOldVal As Long 'Sheet Module level variable

            Private Sub Worksheet_Change(ByVal Target As Range)

                If Target.Address = "$A$1" Or Target.Address = "$B$1" Then

                    If Not IsNumeric(Target.Value) Then
                        MsgBox "Only numeric values allowed.", vbInformation, "Foo"
                        Application.EnableEvents = False
                        Target.Value = lOldVal
                        Application.EnableEvents = True
                    End If

                End If

            End Sub

            Private Sub Worksheet_SelectionChange(ByVal Target As Range)
                  If Target.Address = "$A$1" Or Target.Address = "$B$1" Then
                    lOldVal = Target.Value
                  End If
            End Sub

将$ A $ 1和$ B $ 1更改为您的实际单元格地址。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章