با سلام.
می خواستم بدانم که ایا می شود برای نوع Autonumber مقدار اولیه تعریف کرد .
مثلا بجای اینکه از 1 شروع شود از 1000 شروع شود.
Printable View
با سلام.
می خواستم بدانم که ایا می شود برای نوع Autonumber مقدار اولیه تعریف کرد .
مثلا بجای اینکه از 1 شروع شود از 1000 شروع شود.
سلام
اینکار امکان پذیر است. اما کلا استفاده از خاصیت Auto Nmber توصیه نمی شود چون در برخی از برنامه ها مشکل زا است.
برای اینکار می بایست یک Table با یک Field درست کنید و سپس در یک Table دیگر تمام Fieldهای برنامه را بنویسید و سپس با یکدیگر ارتباط داده شود. البته Microsoft نیز اینکار را هم توصیه نمی کند چون با مشکلاتی مواجه خاهید شد.برای اطلاع بیشتر از Help Access در مورد Auto Number استفاده کنید که انجام اینکار قدری مشکل است
موفق باشید
ببین چیزی که میخوای قابل انجامه یعنی بقول دوستمون میتونی یک Action Query از نوع Append بسازی و به جدول رکورد اضافه کنی تا به رکورد هزار برسی و بعد 999 تای اونهای انتخاب کنی و بعدشم حذفش کنی اما بزار بگم بازم بیفایدس میدونی چرا چون بالاخره تو منظوری داری از این کارت چون مثلا میخوای کد 1025 بدی بیک شخص خاص هر چیز دیگه ای اما تصور کن یه جای کار مجبور بشی یه رکورد رو حذف کنی مثلا همین رکوردی که کدش 1025 بود ازین به بعد دیگه نمیتونی از این کد استفاده کنی چون اکسس دیگه این کد رو ایجاد نمیکنه پس خوب فکر به کارت - اصلا بمن بگو واس چی میخوای اینکارو بکنی.
دوست گرامی
برای این کار فقط کافیه در Properties/Format مربوط به Autonumber عدد 1000 را تایپ کنی که با زدنEnter یک Backslash به ابتدای آن اضافه می شود و AutoNumber شما از 1000 شروع می شود
سلام
هماطور كه اساتيد و دوستان ديگه مي دانند از نوع داده AutoNumber مشخص است كه نمي توان آن را ويرايش نموده و سفارشي كرد ولي كد هاي زيادي در زمينه ساخت سري هاي سفارشي هست كه يك نمونش در زير آورده شده :Option Compare Database
Function MySequenceNum() As Long
Dim db As Database
Dim strSQL As String
Dim strUpdate As String
Dim rs As DAO.Recordset
Dim lngNewNum As Long
On Error GoTo Err_Execute
Set db = CurrentDb()
'Retrieve last number assigned for Your Number
strSQL = "SELECT Last_Assigned_Num FROM tbl_SetAutoNum " _
& "WHERE Code_Desc = 'YourNum'"
Set rs = db.OpenRecordset(strSQL)
'If no records were found, return an error
If rs.EOF = True Then
MySequenceNum = 0
MsgBox ". مقدار اوليه كد از تنظيم نشده"
Else
'Determine your new Number
lngNewNum = rs("Last_Assigned_Num") + 1
'Increment your new Number in tbl_SetAutoNum table by 1
strUpdate = "UPDATE tbl_SetAutoNum " _
& "SET Last_Assigned_Num = " & lngNewNum _
& " WHERE Code_Desc = 'YourNum'"
db.Execute strUpdate, dbFailOnError
End If
rs.Close
Set rs = Nothing
Set db = Nothing
MySequenceNum = lngNewNum
Exit Function
Err_Execute:
'An error occurred, return 0
rs.Close
Set rs = Nothing
Set db = Nothing
MySequenceNum = 0
MsgBox ". خطايي در زمان توليد كد رخ داد"
MsgBox Err.Description
End Function
البته همانطوري دوستان مي دونن اين تابع از يك جدول براي ذخيره كدي كه قرار است از يك مقدار دلخواه شروع شود با دو قيلد CodeDesc( با نوع داده متني براي شرح كد) و Last_Assigned_Num(با نوع داده عددي براي ذخيره آخرين عدد تخصيصي به كد) بهره گيري مي كند . دوستان مي توانند به جاي YourNum از شرح مورد نظر خود استفاده كنند .
بسیار عالی بود دوست عزیز
خلاصه و بسیار مفید