Dzwebs.Net

撰写电脑技术杂文十余年

限制EXCEL单元格数字总位数为6(整数加小数的总位数为6)

Admin | 2011-2-2 8:20:03 | 被阅次数 | 14268

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  在EXCEL单元格中,常常需要输入数字数据。而输入数据,常常会遇到需要确定数据的位数的情况。

  如何限制单元格中所输入的数字,包括整数和小数,总位数的长度。

  如下表一样,限制A列单元格,所要输入的数字,整数个数加上小数的个数,总位数只能是6。

  如果输入的数字,总位数(不论有几个整数和小数)超过6或不足6位,那么,该单元格的内容自动变成“整数与小数的总位数只能是6位”,用于提示重新输入。

  要解决这种问题,使用公式或其它的办法,是非常难于实现的,在这里,得使用VBA来实现。

  如下图的VBA代码,就是实现如上需求的功能代码,请注意对象的名称及事件名称,这很关键。

  上图的代码,仅针对工作薄的Sheet1的A列的数字数据。您可以根据需要自行修改代码以吻合您的工作需求。关于VBA代码的使用方法及其它知识,请参阅本站的其它文章,在此,就不过多阐述了。

  知识扩展:

  下面讲解上图代码的功能。

  Dim MyLenth As Single
  MyLenth = 6
  这两行代码,用来确定整数位数和小数位数的总和,在此为6,可根据需要修改。

  MyColumn = 1
  此代码标识,仅针对第一列即A列的数字位数进行限制。

  Application.WorksheetFunction.IsNumber(Sheet1.Cells(MyRow, MyColumn).Value))
  此代码通过调用函数IsNumber用来判断单元格内容是否为数字,如果是数字就加以限制,否则可自由输入。

  Application.WorksheetFunction.Substitute(Trim(Sheet1.Cells(MyRow, MyColumn).Value), ".", "")
  此代码用于将被选择单元格中的数字的小数点符号去除,目的在于方便统计总位数。


该杂文来自: Excel杂文

上一篇:Excel能够自动运行的四种宏介绍

下一篇:Excel公历与农历的转换方法

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计