Office中国论坛/Access中国论坛

标题: 根据时间允许是否输入数据 [打印本页]

作者: 1100122566    时间: 2008-12-11 11:08
标题: 根据时间允许是否输入数据
我做了个表,表中有“客户名称”(文本类型)、“出单日期”(日期类型)、“发票编号”(文本类型)。其中“出单日期”为录入数据的时间。我想根据这个字段判断,是否可以更改以前的数据:如果录入的时间为当月,那表中字段都能更改,如果出单日期为以前的。那不能更改字段中“客户名称”,只能更改字段“发票编号”。不知是否能实现?如果应用到“查询”中的表是否通用?

附件为测试数据。希望大家帮帮忙。[:30]

[ 本帖最后由 1100122566 于 2008-12-11 11:09 编辑 ]
作者: Henry D. Sy    时间: 2008-12-11 11:14
表中不行,窗体中可以
作者: 1100122566    时间: 2008-12-11 11:16
为什么表中不行?难道不能用VBA对表进行进一步修改?
作者: 1100122566    时间: 2008-12-11 11:19
我觉得应该可以的。我刚刚用Create Table 语句在查询里面“运行”了一下。能生成新表。我觉得应该跟SQL语句有关。
作者: 1100122566    时间: 2008-12-11 13:10
好像是不行的~有哪位高高收出面吗?
作者: Henry D. Sy    时间: 2008-12-11 22:15
利用向导做个丛栏式的窗体用于浏览数据和输入数据。
  1. Private Sub Form_Current()
  2.     Dim dtmYm As Date, dtmNow As Date

  3.     If NewRecord Then
  4.         Me.出单日期.Locked = False
  5.         Me.客户名称.Locked = False
  6.     Else
  7.         dtmYm = Format(Me.出单日期, "yyyymm")
  8.         dtmNow = Format(Date, "yyyymm")
  9.         If dtmYm < dtmNow Then
  10.             Me.出单日期.Locked = True
  11.             Me.客户名称.Locked = True
  12.         Else
  13.             Me.出单日期.Locked = False
  14.             Me.客户名称.Locked = False
  15.         End If
  16.     End If
  17. End Sub
复制代码





欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3