accdbExe

accdbExe
لینک سایر سایت‌های آموزش Access

اطلاعات تماس و ارسال نظر

شروع کار از: فروردین 1402

شما به عنوان برنامه نویس همیشه دستور نمی دهید، بلکه علاوه بر اینکه دستور می دهید، مقادیری را برای نگهداری نتایج دستورات تعریف می کنید تا برای نگهداری نتایج دستورات به شما کمک کنند، و گاهی نیز نتایج را با هم مقایسه می کنید و بعد تصمیم می گیرید که چه دستوری بدهید.

پس این  کارها را انجام می دهید:

  1. تعریف مقادیر
  2. مقایسه مقادیر
  3. دستور دادن

نقطه قوت شما نیز در همین دستور دادن است و بخش عمده فعالیت شما بر اساس دستوراتی است که صادر می کنید. 

(بعضی اوقات حس می کنید دستوراتی که صادر می کنید در توان زیرمجموعه شما- که وظیفه انجام دستورات شما دارند- نیست، در چنین شرایطی مجبور هستید برون سپاری کنید: برون سپاری معادل با استفاده از dll‌ها است- وقتی از dll ها استفاده می کنید دقیقا همان کاری را می کنید که تاکنون می‌کردید یعنی هر سه کار بالا را باز هم انجام خواهید داد.)

ابتدا به دستورات خواهیم پرداخت، قبل از صدور دستورات باید دستورات را دسته بندی کنید- هر دسته بندی را یک رویه(دستورالعمل) می نامیم.


یک عبارت در ویژوال بیسیک یک دستورالعمل کامل است. این می تواند حاوی کلمات کلیدی، عملگرها، متغیرها، ثابت ها و عبارات باشد. شما از دستورات اعلان برای نامگذاری و تعریف رویه ها، متغیرها، آرایه ها و ثابت ها استفاده می کنید. هنگامی که یک رویه، متغیر یا ثابت را اعلام می کنید، بسته به اینکه اعلان را در کجا قرار می دهید و از چه کلمات کلیدی برای اعلام آن استفاده می کنید، محدوده آن را نیز مشخص می کنید. دستورهای انتساب یک مقدار یا عبارت را به یک متغیر یا ثابت اختصاص می دهند. عبارات تکلیف همیشه دارای علامت مساوی (=) هستند.

رویه Sub مجموعه ای از دستورات ویژوال بیسیک است که توسط دستورات Sub و End Sub محصور شده است که اقداماتی را انجام می دهد اما مقداری را بر نمی گرداند.

رویه Function مجموعه ای از دستورات ویژوال بیسیک است که توسط دستورات Function و End Function محصور شده است. یک رویه Function مشابه رویه Sub است، اما یک تابع همچنین می تواند مقداری را برگرداند.

برای فراخوانی یک رویه Sub از رویه دیگر، نام رویه را تایپ کرده و مقادیری را برای هر آرگومان مورد نیاز وارد کنید. دستور Call الزامی نیست، اما اگر از آن استفاده می کنید، باید هر آرگومان را در پرانتز قرار دهید.

هنگامی که یک روش Sub یا Function را فراخوانی می‌کنید، می‌توانید آرگومان‌ها را به‌صورت موقعیتی، به ترتیبی که در تعریف رویه ظاهر می‌شوند، ارائه دهید، یا می‌توانید آرگومان‌ها را بدون در نظر گرفتن موقعیت، با نام ارائه کنید.

استفاده از پرانتز در کد: رویه‌های فرعی، عبارات داخلی و برخی متدها مقداری را بر نمی‌گردانند، بنابراین آرگومان‌ها در پرانتز قرار نمی‌گیرند.

اعلان متغیرها
هنگام اعلان متغیرها، معمولاً از دستور Dim استفاده می کنید. یک عبارت اعلامیه را می توان در یک رویه قرار داد تا یک متغیر در سطح رویه ایجاد کند. یا ممکن است در بالای یک ماژول، در بخش Declarations قرار داده شود تا یک متغیر در سطح ماژول ایجاد شود.

طول عمر متغیرها
مدت زمانی که یک متغیر مقدار خود را حفظ می کند به عنوان طول عمر آن شناخته می شود. مقدار یک متغیر ممکن است در طول عمر خود تغییر کند، اما مقداری مقدار را حفظ می کند. وقتی متغیری دامنه را از دست می دهد، دیگر مقداری ندارد.

انواع داده ها
نوع داده مشخصه یک متغیر است که تعیین می کند چه نوع داده ای می تواند نگه دارد. انواع داده ها شامل موارد موجود در جدول زیر و همچنین انواع تعریف شده توسط کاربر و انواع خاصی از اشیاء است.

اعلان ثابت ها
کد شما ممکن است حاوی مقادیر ثابتی باشد که مکرراً رخ می‌دهند، یا ممکن است به اعداد خاصی بستگی داشته باشد که به خاطر سپردن آنها دشوار است و معنای واضحی ندارند. با استفاده از ثابت ها می توانید خواندن و نگهداری کد خود را آسان تر کنید. ثابت یک نام معنی دار است که جای عدد یا رشته ای را می گیرد که تغییر نمی کند. شما نمی توانید یک ثابت را تغییر دهید یا یک مقدار جدید به آن اختصاص دهید، همانطور که می توانید یک متغیر.

استفاده از عبارات If...Then...Else
می توانید از دستور If...Then...Else برای اجرای یک دستور خاص یا بلوکی از دستورات بسته به مقدار یک شرط استفاده کنید. عبارات If...Then...Else را می توان در سطوح مختلفی که شما نیاز دارید تو در تو قرار داد.

استفاده از عبارت Select Case
هنگام مقایسه یک عبارت با چندین مقدار مختلف، از عبارت Select Case به عنوان جایگزینی برای استفاده از ElseIf در عبارات If...Then...Else استفاده کنید. در حالی که عبارات If...Then...Else می توانند یک عبارت متفاوت را برای هر عبارت ElseIf ارزیابی کنند، دستور Select Case یک عبارت را فقط یک بار در بالای ساختار کنترل ارزیابی می کند.

حلقه
با استفاده از عبارات شرطی و عبارات حلقه (که ساختارهای کنترل نیز نامیده می شوند)، می توانید کد ویژوال بیسیک بنویسید که تصمیم می گیرد و اقدامات را تکرار می کند.

دستورات Do...Loop
می توانید از دستورات Do...Loop برای اجرای یک بلوک از دستورات به تعداد نامحدود استفاده کنید. عبارات یا زمانی که یک شرط True است یا تا زمانی که یک شرط True شود، تکرار می شوند.

عبارات For...Next
می توانید از عبارات For...Next برای تکرار یک بلوک از عبارات به تعداد مشخص استفاده کنید. برای حلقه ها از یک متغیر شمارنده استفاده کنید که مقدار آن با هر تکرار حلقه کم یا زیاد می شود.

اشیا، روش ها، ویژگی ها و رویدادها
یک شی نشان دهنده یک عنصر از یک برنامه کاربردی است، مانند یک کاربرگ، یک سلول، یک نمودار، یک fo

رویه یا Procedure مجموعه ای از کدهای مرتبط با هم است که درون یک ماژول در محیط VBE نوشته شده و عمل خاصی را انجام میدهند. دو نوع رویه (Procedure) در VBA وجود دارد:

  1.  زیرروال‌ها (Subroutines)
  2.  توابع (Functions)

(Subroutines) زیرروال‌ها یا Subroutineها:

مجموعه ای از کدهای VBA است که درون یک ماژول نوشته شده و در زمان اجرا توسط کاربر یا فراخوانی توسط زیرروال دیگر، عمل خاصی را انجام میدهد. زیرروال ها همیشه با کلمه کلیدی Sub همراه با نام ماکرو یا زیرروال شروع شده و با عبارت Sub End پایان مییابند.

نکته 1 : درج کلمه کلیدی Private قبل از نام یک زیرروال باعث میشود که فراخوانی زیرروال مورد نظر فقط در ماژول جاری امکانپذیر باشد و زیرروالی که با کلمه کلیدی Private اعلان میشود را دیگر نمی توانید در لیست ماکروهای تعریف شده مشاهده کرده و مورد استفاده قرار دهید.

نکته 2 : برای اجرای آزمایشی زیرروالهای بدون آرگومان, میتوانید بعد از کلیک درون زیرروال, دکمه F5 را فشار دهید و یا از منوی Run دستور Sub Run را انتخاب کنید.

در زیر روال ها یا تابع ها دستوراتی تایپ می شود و انتظار می رود هنگام اجرای روتین(sub) یا تابع(function)، دستورات صادر شده اجرا شوند.

دستورات VBA را می توان به دو دسته تقسیم کرد:

  1. دستوراتی که جزء دستور زبان(Syntext) ویژوال بیسیک هستند.
  2. دستوراتی که جزء موتور VBA مستقر در Access است،.

دستورات دسته اول(1) دستورات یا عملگرهای عمومی Visual Basic:

اینگونه دستورات، در همه برنامه هایی که از دستور زبان VB استفاده می کنند کاربرد دارد. مانند دستور MsgBox و یا دستور InputBox.

دستورات دسته، دوم(2) دستورات یا عملگرهای اختصاصی Visual Basic fo Access:

اینگونه دستورات در سایر برنامه‌ها مانند VB و یا Excel و Word و ... بی معنی هستند، یا به صورت اتفاقی مشترکا در آن برنامه‌ها کارایی مشابه دارند، اما جزء دستورات اختصاصی VBA در Access به شمار می‌آیند.

به دلیل اینکه در حال بررسی نرم افزار Access هسیتم ابتدا دستورات دسته دوم را بررسی خواهیم کرد، بررسی دستورات دسته اول را در همین صفحه خواهید یافت.


دستورات یا عملگرهای اختصاصی Visual Basic fo Access:

هر کدام از دستورات دارای پارامترها و شرایط اجرای منحصر به خود هستند، پس از یک نگاه کلی به همه دستورات به جزئیات آنها خواهیم پرداخت.

دسترسی به شی AccessObject
دسترسی به ویژگی شی AccessObjectProperty
دسترسی به ویژگی های شی AccessObjectProperties
داده اضافی AdditionalData
همه نمودارهای پایگاه داده AllDatabaseDiagrams
همه فرم ها AllForms
همه توابع AllFunctions
همه ماکروها AllMacros
همه ماژول ها AllModules
همه پرس و جوها AllQueries
همه گزارش ها AllReports
همه رویه های ذخیره شده AllStoredProcedures
همه جداول AllTables
همه نماها AllViews
کاربرد Application
پیوست Attachment
تصحیح خودکار AutoCorrect
قاب شی محدود شده BoundObjectFrame
چارت سازمانی Chart
محور نمودار ChartAxis
سری نمودار ChartSeries
مقادیر نمودار ChartValues
کادر را علامت بزنید CheckBox
داده های کد CodeData
پروژه کد CodeProject
جعبه ترکیبی ComboBox
دکمه فرمان CommandButton
کنترل Control
کنترل ها Controls
داده های جاری CurrentData
پروژه فعلی CurrentProject
کنترل سفارشی CustomControl
اطلاعات وابستگی DependencyInfo
اشیاء وابستگی DependencyObjects
فرمان را انجام دهید DoCmd
کنترل مرورگر لبه EdgeBrowserControl
سلول خالی EmptyCell
وجود، موجودیت Entity
موجودیت ها Entities
فرم Form
شرط قالب FormatCondition
شرایط قالب FormatConditions
تشکیل می دهد Forms
سطح گروه GroupLevel
هایپر لینک Hyperlink
تصویر Image
مشخصه ورود و صدور ImportExportSpecification
مشخصات  ورود و صدور ImportExportSpecifications
برچسب Label
خط Line
کادر فهرست ListBox
خطای ماکرو MacroError
مدول Module
ماژول ها Modules
دکمه ناوبری NavigationButton
کنترل ناوبری NavigationControl
قاب شی ObjectFrame
عمل Operation
عملیات Operations
دکمه گزینه OptionButton
گروه گزینه OptionGroup
صفحه Page
صفحات Pages
صفحه شکستن PageBreak
چاپگر Printer
چاپگرها Printers
خواص Properties
مستطیل Rectangle
ارجاع Reference
منابع References
گزارش Report
گزارش ها Reports
متغیر بازگشتی ReturnVar
متغیرهای بازگشتی ReturnVars
صفحه نمایش Screen
بخش Section
منبع مشترک SharedResource
منابع مشترک SharedResources
برچسب هوشمند SmartTag
اقدام تگ هوشمند SmartTagAction
اقدامات برچسب هوشمند SmartTagActions
ویژگی تگ هوشمند SmartTagProperty
ویژگی های برچسب هوشمند SmartTagProperties
برچسب های هوشمند SmartTags
فرم فرعی SubForm
کنترل برگه TabControl
متغیر دما TempVar
متغیرهای دما TempVars
جعبه متن TextBox
دکمه جابجایی ToggleButton
کنترل مرورگر وب WebBrowserControl
سرویس وب WebService
خدمات وب WebServices
پارامتر WS WSParameter
پارامترهای WS WSParameters
شمارش ها Enumerations

در بین دستورات بالا دستوری وجود دارد(DOCMD) که از دامنه وسیعی استفاده می کند این دستور وقتی به زیردستور SQL می رسد بسیار وسیعتر می شود، این دستور وظیفه برقراری ارتباط با موتور SQL را دارد و یک رشته را به برای آن ارسال می کند و نتیجه اجرای این عملیات را برای VBA باز می گرداند، اما در واقع شما با یک موتور قوی روبرو هستید که به عبارتی اصول کار Access نیز بر روی این موتور بنا نهاده شده است. لذا درباره دستور DOCMD.RunSQL باید به صورت ویژه توضیح داده شود، که در این صفحه به صورت اختصاصی به آن خواهیم پرداخت.


 دستورات یا عملگرهای عمومی Visual Basic:

بررسی اجمالی Overview  
آرایه Array
دسترسی به یک شیء با نام شیء CallByName
انتخاب Choose
فرمان Command

توابع تبدیل

Conversion

ایجاد شی CreateObject
مسیر(دایرکتوری) جاری CurDir
تاریخ Date
افزودن تاریخ DateAdd
تفاوت تاریخ DateDiff
قسمت تاریخ  DatePart
سریال تاریخ DateSerial
مقدار تاریخ DateValue
روز Day
DDB DDB
دایرکتوری Dir
انجام یک رویداد به صورت درخواست DoEvents
دسترسی به متغییرهای محیط ویندوز Environ
به انتهای فایل رسیده ایم؟ EOF
خطایی رخ داده؟ Error
ویژگی فایل FileAttr
تاریخ و زمان ایجاد فایل FileDateTime
طول فایل FileLen
فیلتر کردن Filter
فرمت پول FormatCurrency
فرمت تاریخ زمان FormatDateTime
شماره قالب FormatNumber
فرمت درصد FormatPercent
آزاد کردن فایل FreeFile
FV
دریافت همه تنظیمات GetAllSettings
دریافت ویژگی ها GetAttr
دریافت شی GetObject
دریافت تنظیمات GetSetting
ساعت Hour
اگر کوتاه IIf
وضعیت IME IMEStatus
ورودی Input
جعبه ورودی InputBox
بررسی وجود رشته ای در رشته‌ای دیگر InStr
InStrRev
IPmt
IRR
آرایه است؟ IsArray
تاریخ است؟ IsDate
خالی است؟ IsEmpty
آیا خطا است؟ IsError
مفقود شده است؟ IsMissing
نول(Null) است؟ IsNull
عدد است؟ IsNumeric
آیا شیء است؟ IsObject
پیوستن Join
طول محدود LBound
مورد طول LCase
ترک کرد Left
طول Len
محل Loc
طول فایل LOF
برش فواصل خالی، از چپ، از راست راست  LTrim, RTrim, and Trim
شناسه Mac MacID
اسکریپت MAC MacScript

توابع ریاضی

اواسط یک رشته Mid
دقیقه Minute
MIRR
ماه Month
نام ماه MonthName
جعبه پیام MsgBox
اکنون Now
NPer
NPV
تقسیم بندی Partition
بعد Pmt
PPmt
PV
رنگ QB QBColor
نرخ Rate
جایگزین کردن Replace
ساخت یک رنگ با سه رنگ اصلی RGB
درست Right
گردکردن عدد Round
دومین Second
جستجو کردن Seek
پوسته Shell
SLN
فاصله ها Space
Spc
شکاف Split
مقایسه رشته ها StrComp
تبدیل رشته StrConv
رشته String
معکوس رشته StrReverse
تعویض Switch
SYD
Tab
زمان Time
تایمر Timer
سریال زمانی TimeSerial
ارزش زمانی TimeValue
اسم را تایپ کن TypeName
کران بالا UBound
حروف بزرگ UCase
نوع متغیر VarType
روز هفته Weekday
نام روز هفته WeekdayName
سال Year

عملگرها

عملگرها و توابع از جمله ابزارهای VBA برای انجام محاسبات می باشند.

عملگرهای VBA دارای تقدم هایی نسبت به هم می باشند که برای ایجاد تغییر در این تقدم ها می توانید از پرانتز استفاده کنید.

عملگرهای حسابی

عملگر ^ : توان

عملگر - : منفی

عملگر * : ضرب

عملگر / : تقسیم
عملگر \ : خارج قسمت تقسیم صحیح
عملگر Mod : باقیمانده تقسیم صحیح
عملگر - : تفریق
عملگر + : جمع
عملگر & : الحاق دو رشته متنی به هم

 عملگرهای مقایسه‌ای

عملگر =
عملگر <
عملگر >
عملگر =<
عملگر =>
عملگر <>

عملگر Like 

این عملگر دو رشتهء متنی را بر طبق شرایط تعریف شده با یکدیگر مقایسه میکند.

در تعریف نوع مقایسه میتوانید از کارکترهای جایگزین زیر استفاده کنید:

کارکتر مفهوم

؟ یک کارکتر

* چند کارکتر

# یک رقم از 0 تا 9

charlist یک کارکتر از لست کاراکترها

عملگرهای منطقی

عملگر And
عملگر Or
عملگر Not
عملگر Xor
عملگر Eqv
عملگر Imp