الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود لاظهار السنة الحالية في التعداد

بدأه خالد يحي الامام في 26 يوليو 2012 · 1 رد · 438 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورمضان كريم

في الكود ادناه لاضافة ترقيم جديد مع ظهور السنة الحالية مثلا 1000/2012 و 2000/2012 وهكذا وذلك عند اضافة الكود على زر اضافة سجل جديد فهل صحيح هذا الكود ؟

Dim vLast As Variant
Dim iNext As Integer
vLast = DMax("[Recode]", "tCandidate", "[Recode] LIKE '" & Format(Date, "yyyy\*\'"))
If IsNull(vLast) Then
iNext = 1
Else
iNext = Val(Mid(vLast, 7, 4)) + 1
End If
Me![ReCode] = Format(Date, "yyyy") & "/" & Format(iNext, "000")

واذا كان البيانات يتم استيرادها من ملف اكسل كما هو بالكود ادناه فكيف يتم التعديل لظهور الكود يظهر الترقيم بالسنة الحالية اي يتم تجديد الترقيم كل سنة جديدة

Private Sub CmdImport_Click()
Dim strPath As String
Dim strSQL As String
strPath = Application.CurrentProject.Path & "\fileReg.xls"
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "tCandidateTemp", strPath, True

DoCmd.SetWarnings False
'*******************************************************************************************************
strSQL = "INSERT INTO tCandidate ( [Job Number], [ROP Licence Number], ROPLicenceCategory, ROPLicenceExpiryDate, FirstName, SecondName, FamilyName, GSM, Nominator, [Language], DateofBirth, [GEC No], [DDCCode], [PDO Permit], [HSE Passprt No],[recode])"
strSQL = strSQL & "SELECT tCandidateTemp.[Job Number], tCandidateTemp.[ROP Licence Number], tCandidateTemp.[ROP Licence Categories], tCandidateTemp.[ROP Licence Expiry Date], tCandidateTemp.FirstName, tCandidateTemp.[Second Name], tCandidateTemp.FamilyName, tCandidateTemp.GSM,  tCandidateTemp.Nominator, tCandidateTemp.Language, tCandidateTemp.[Date of Birth], tCandidateTemp.[GEC No], tCandidateTemp.[DDCCode], tCandidateTemp.[PDO Permit], tCandidateTemp.[HSE Passprt No], tCandidateTemp.[recode]"
strSQL = strSQL & "FROM tCandidateTemp;"
DoCmd.RunSQL strSQL

DoCmd.SetWarnings True

DoCmd.DeleteObject acTable, "tCandidateTemp"
MsgBox "Been Imported And Save the Data Successfully"
End Sub
Private Sub MyAutonumber()
 Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim i As Integer
Dim xx, mymask As String
Dim td As DAO.TableDef
Dim fld As DAO.Field
mymask = "0000" & Chr(34) & "/2010" & Chr(34)

       Set db = CurrentDb
    Set td = db.TableDefs("tCandidateTemp")
    Set fld = td.Fields("Recode")
    fld.Properties.Append fld.CreateProperty("InputMask", dbText, mymask)
'Me!ReCode = Nz(DMax("[ReCode]", "[tCandidate]"), 0) + 1
xx = Nz(DMax("[ReCode]", "[tCandidate]"), 0)
Set rs = CurrentDb.OpenRecordset("tCandidateTemp")
'Set rs = Me.Recordset.clone
rs.MoveFirst
For i = 1 To rs.RecordCount
rs.Edit
rs!ReCode = xx + i
rs.Update
rs.MoveNext
Next
rs.Close

End Sub

تم تعديل هذه المشاركة بواسطة خالد يحي الامام في 26 يوليو 2012 في 14:07

#2

للرفع

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…