Ms access 自动递增文本字段访问2010表单
我有一个跟踪文档的表单。我需要根据创建的节和文档类型自动分配文档编号,然后每次创建相同的组合时自动增加该组合以添加1。 例如: DocType | Section | DocIdentifierMs access 自动递增文本字段访问2010表单,ms-access,vba,ms-access-2010,Ms Access,Vba,Ms Access 2010,我有一个跟踪文档的表单。我需要根据创建的节和文档类型自动分配文档编号,然后每次创建相同的组合时自动增加该组合以添加1。 例如: DocType | Section | DocIdentifier 现场方法| QAQC | FMQA-01 现场方法| QAQC | FMQA-02 现场方法|标准| FMWQS-01 化学方法|标准| CMWQS-01 我尝试了很多不同的事情——这是我最近的一次尝试。我在表单中包含了一个隐藏字段(showDocNum)来连接DocType和Section,但是我
- 现场方法| QAQC | FMQA-01
- 现场方法| QAQC | FMQA-02
- 现场方法|标准| FMWQS-01
- 化学方法|标准| CMWQS-01
Private Sub cboSection_Change()
Dim strMax As String
strMax = DMax("DocIdentifier", "tblDocuments")
Me!Alpha = Me!cboDocType.Column(2) & Me.cboSection.Column(2) & "-"
Me!txtDocIdentifier = Me!Alpha & Right(strMax, Len(strMax)) + 1
End Sub
及
我还尝试向表fldNumber中添加一个额外字段,并尝试将fldAlpha与fldNumber结合起来创建一个复合PK DocIdentifier。非常感谢团体的帮助 我只是给自己留下了深刻印象,我用
Private Sub cboSection_Change()
showDocNum = Me!cboDocType.Column(2) & Me.cboSection.Column(2) & "-"
End Sub
Private Sub txtDocIdentifier_GotFocus()
Me!txtSequence = Nz(DMax("[MyPKNumber]", "tblDocuments", "[ShowDocNum] ='" & Me.[showDocNum] & "'"), 0) + 1
Me!txtDocIdentifier = "WQD" & [showDocNum] & Format([MyPKNumber], "00")
End Sub
谢谢你愿意帮忙 您应该使用AfterUpdate事件:
如果你有一个文件编号,比如“FMQA-03”,你可以通过这种方式找到下一个:
NextDocNo = Split(DocNo, "-")(0) & Format(Val(Split(DocNo, "-")(1)) + 1, "\-00")
您是否正在尝试构建一个保存在表中的值?如果是,表中的字段名是什么?您是否将其绑定到表单?表单上的控件名是什么?“cboSection_更改”格式是否正确?是,它保存在DocIdentifier并已绑定。阿尔法部分完美地填充了我!Alpha字段,以及Me.txtDocIdentifier,我只是无法获得有效的编号谢谢,有没有办法分别增加每个前缀。这是将它们一起递增
Private Sub cboSection_AfterUpdate()
Dim Prefix As String
Dim Identifier As Integer
Prefix = Me!cboDocType.Column(2) & Me.cboSection.Column(2) & "-"
Identifier = DMax("DocIdentifier", "tblDocuments", "DocIdentifier Like '" & Prefix & "*'") + 1
Me!txtDocIdentifier.Value = Prefix & Format(Identifier, "00")
End Sub
NextDocNo = Split(DocNo, "-")(0) & Format(Val(Split(DocNo, "-")(1)) + 1, "\-00")