Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2718|回复: 3

某一列限定输入日期格式

[复制链接]
发表于 2014-1-3 14:28 | 显示全部楼层 |阅读模式
本帖最后由 爱疯 于 2014-1-3 14:58 编辑

各位高手,在网上看了很久自己编了段代码,为了完成限定指定工作表中“F”列只能输入“yyyy/mm/dd"格式的日期,要是日期型的哟,但是不能运行,无论怎么输入都说我的输入格式不对。求修改!

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
If Target.Column <> 6 Then Exit Sub
    If Target.NumberFormatLocal <> "yyyy/mm/dd" Then
    Application.EnableEvents = False
        MsgBox "请按照“YYYY/MM/DD”格式输入年月日!", 64
        Target = ""
    Application.EnableEvents = True
End If
End Sub
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-1-3 14:58 | 显示全部楼层
回复

使用道具 举报

发表于 2014-1-3 15:55 | 显示全部楼层
本帖最后由 suye1010 于 2014-1-3 15:57 编辑
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. If Target.Count > 1 Then Exit Sub
  3. If Target = "" Then Exit Sub
  4. If Target.Column <> 1 Then
  5.     Exit Sub
  6. Else
  7.     Target.NumberFormatLocal = "YYYY/MM/DD"
  8. End If
  9. If Not Target.Text Like "####/##/##" Then
  10.      Application.EnableEvents = False
  11.          MsgBox "请按照“YYYY/MM/DD”格式输入年月日!", 64
  12.          Target = ""
  13.      Application.EnableEvents = True
  14. End If
  15. End Sub
复制代码
Target.NumberFormatLocal 可以返回和设置单元格的格式,这个跟判断输入的格式是否与要求相符没有关系。 Target.Text是返回单元格显示的内容。日期在Excel中实际就是一个数字。
回复

使用道具 举报

发表于 2014-1-3 17:10 | 显示全部楼层
我也做了一个:
限制以日期格式输入.rar (8.04 KB, 下载次数: 6)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-30 00:16 , Processed in 0.329529 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表