[转载]使用VBA设置单元格格式
2013-03-30 23:07阅读:
常见的单元格数据格式:
Range('a1').NumberFormat = '0.00' '将数字设置为两位小数;
Range('a1').NumberFormat = '0.00%'
'将数字设置为两位小数的百分数;
Range('a1').NumberFormat = '000000'
'将数字设置为6位整数(邮编);
Range('a1').NumberFormat = '@' '将数字设置为文本;
RRange('a1').NumberFormat = '[DBNum2]'
'将数字设置为中文大写;
RRange('a1').NumberFormatLocal = '(¥#,##0.00_); [红色]
(¥#,##0.00)' '将数字设置为人民币;
Range('a1').NumberFormat = 'yyyy年m月d日' '设置为日期;
Range('a1').NumberFormat = 'yyyy年m月d日aaaa'
'设置为日期星期几;
Range('a1').NumberFormat = 'yyyy-m-d dddd'
'设置为日期星期几;
Range('a1').NumberFormat = 'mmmm' ' 设置英文全称;
Range('a1').NumberFormat = 'mmm' '设置英文简称;
Range('a1').NumberFormat = 'aaaa' '设置汉语星期;
Range('a1').NumberFormat = 'dddd' '设置英语星期;
Range('a1').NumberFormat = ';;' '隐藏单元格数字;
Range('a1').NumberFormat = ';;;' '将隐藏单元格数字和文本
Range('a1').NumberFormat = '0;-0;;@' '隐藏单元格零值
以下举例说明一些常见的设置方式
Public Sub 例10_56()
Dim myRange As Range
Dim myVad As Validation
Set myRange = Range('A1')
'指定任意的单元格或单元格区域
Set myVad = myRange.Validation
With myVad
.Delete
'删除原有的有效性设置
'下面是各种输入规则的设置,可以根据实际情况选择任意一种
.Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
Operator:=xlBetween, _
Formula1:='100', Formula2:='10000'
'只允许输入某范围的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlGreater, Formula1:='100'
'只允许输入大于某值的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlGreater, Formula1:='100'
'只允许输入大于某值的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlLess, Formula1:='100'
'只允许输入小于某值的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlGreaterEqual, Formula1:='100'
'只允许输入大于或等于某值的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlLessEqual, Formula1:='100'
'只允许输入小于或等于某值的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlNotEqual, Formula1:='100'
'只允许输入不等于某值的整数
' .Add
Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlEqual, Formula1:='100'
'只允许输入等于某值的整数
'如果是设置输入小数,则将Type参数进行修改如下,其他参数不变:
' .Add
Type:=xlValidateDecimal, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlGreater, Formula1:='100'
'只允许输入大于某值的整数
'如果是设置输入日期,则将Type参数进行修改如下,其他参数不变:
' .Add
Type:=xlValidateDate, AlertStyle:=xlValidAlertStop, _
'
Operator:=xlGreater, Formula1:='100'
'只允许输入大于某值的整数
'如果是设置输入时间,则将Type参数进行修改如下,其他参数不变:
' .Add
Type:=xlValidateTime, AlertStyle:=xlValidAlertStop, _
'
Operator:=xlGreater, Formula1:='100'
'只允许输入大于某值的整数
'如果是设置输入文本长度,则将Type参数进行修改如下,其他参数不变:
' .Add
Type:=xlValidateTextLength, AlertStyle:=xlValidAlertStop,
_
'
Operator:=xlGreater, Formula1:='100'
'只允许输入大于某值的整数
'如果是设置输入序列,则将Add语句修改如下:
' .Add
Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
'
Operator:=xlEqual,
Formula1:='1,2,3,4,5,6,7,8,9,10,11,12'
'如果是设置输入序列,并且引用定义的名称,则将Add语句修改如下:
' .Add
Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
'
Operator:=xlBetween, Formula1:='=myName'
'下面是其他项目的设置
.IgnoreBlank =
True '允许空值
.InCellDropdown = True
'显示含有有效取值的下拉列表
.InputTitle =
'整数' '设置数据有效性输入对话框的标题
.ErrorTitle =
'数据错误' '设置数据有效性错误对话框的标题
.InputMessage
= '请输入整数' '设置数据有效性检验输入信息
.ErrorMessage
= '数据超出了范围' '设置数据有效性检验错误信息
.IMEMode =
xlIMEModeOff '设置输入法规则的说明
.ShowInput =
True '选定某一单元格时,显示数据有效性检查输入消息
.ShowError =
True '用户输入无效数据时显示数据有效性检查错误消息
End With
Set myVad = Nothing
Set myRange = Nothing
End Sub