کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی
کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

کلینیک فوق تخصصی اکسس ( کاربرد vba در اکسس )

به اشتراک گذاری اطلاعات کسب شده در اکسس از سایت آفیس و سایت های تخصصی خارجی

عبور دادن یک آرایه به یک رویه تابع


فروردین ۱۴۰۲ : 

مهراب قاسم‌خانی بازیگر و طنزنویس در استوری باکنایه به طرح جریمه نقدی بی‌حجابی نوشت:

همه‌اش سه میلیارد؟

تساهل و تسامح تا کجا؟

ما از شما انتظار داریم برای ابطال شناسنامه اقدام کنید.




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




Sub ManipulateArray()

 Dim countries(1 To 6) As Variant

 Dim countriesUCase As Variant

 Dim i As Integer

 

 ' assign the values to array elements

 countries(1) = "Bulgaria"

 countries(2) = "Argentina"

 countries(3) = "Brazil"

 countries(4) = "Sweden"

 countries(5) = "New Zealand"

 countries(6) = "Denmark"


countriesUCase = ArrayToUCase(countries)

 For i = LBound(countriesUCase) To UBound(countriesUCase)

 Debug.Print countriesUCase(i)

 Debug.Print countries(i) & " (Original Entry)"

 Next i

End Sub



همانطور که گفته شد تابع زیر رشته های داخل آرایه را به Upper Case تبدیل کرده و بر میگرداند البته اگر حروف انگلیسی باشد


Cstr: Convert to string


Public Function ArrayToUCase(ByVal myValues _

 As Variant) As String()

 Dim i As Integer

 Dim Temp() As String

 If IsArray(myValues) Then

 ReDim Temp(LBound(myValues) To UBound(myValues))

 For i = LBound(myValues) To UBound(myValues)

 Temp(i) = CStr(UCase(myValues(i)))

 Next i

 ArrayToUCase = Temp

 End If

End Function




















دیماه ۹۷ : اُمُ الخواستگارون

یک دختر ایرانی پستی در صفحه شخصی خود منتشر کرد و عنوان می کند که او بیش از ٥٠٠ خواستگار داشته است، او می گوید از ١٨ سالگی یک روز در هفته و هر بار سه خواستگار به خواستگاری اش می آمده و این موضوع را تجاوز به حریم شخصی خود می داند. کاربران بسیاری در واکنش به صحبت های او، این موضوع را در صفحات اجتماعی نشر می دهند و نظرات خود را در این باره بیان می کنند.

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











زنی که در سال ۲۰۱۸ با استفاده از اسپرم اهدایی این مرد صاحب فرزند شده است، همراه با بنیاد دونورکایند (Donorkind) سازمانی که از حقوق کودکان متولد شده با اسپرم اهدایی  دفاع می‌کند، پس از آن‌که متوجه شدند این مرد ۴۱ ساله پدر صد‌ها فرزند است، از او شکایت کردند.

به گفته بنیاد دونورکایند، این مرد اسپرم خود را حداقل به ۱۳ کلینیک‌‌ در هلند و کلینیک‌هایی در دیگر کشورها اهدا کرده است.

بر اساس قانون و دستورالعمل‌های اهدای اسپرم هر نفر می‌تواند حداکثر برای ۲۵ فرزند یا به ۱۲ خانواده اسپرم اهدا کند تا از احتمال ازدواج محارم و سلامت روانی کودکانی که از این طریق متولد می‌شوند محافظت کند.

زنی که از این مرد هلندی شکایت کرده است در بیانیه‌ای گفت: «اگر می‌دانستم که او قبلاً بیش از صد فرزند داشته هرگز این اهدا کننده را انتخاب نمی‌کردم. درباره آینده فرزندم نگرانم و فکر کردن به عواقب این کار برای فرزندم برایم ناراحت کننده است.»

او در ادامه تاکید کرده است رفتن به دادگاه تنها راه محافظت از فرزندش است.


ادریس نون.خ و دخترش

کتایون ریاحی

شلوارهای مد ۱۴۰۲



دومین جمعه سال ۱۴۰۲ : 

در اطلاعیه روابط عمومی کل سپاه پاسداران انقلاب اسلامی آمده است: سحرگاه امروز جمعه یازدهم فروردین ماه 1402 مصادف با نهم ماه مبارک رمضان ، پاسدار رشید اسلام " میلاد حیدری" از مستشاران رشید نظامی سپاه پاسداران انقلاب اسلامی در سوریه، در حمله جنایتکارانه رژیم صهیونیستی در حوالی دمشق به شهادت رسید.


در فرمول محاسبه BMI که به برگرفته شده از (Body Mass Index) است، وزن یک بزرگسال، بر حسب کیلوگرم بر مجذور قد او بر حسب متر تقسیم می‌شود؛ برای مثال، BMI= 25 به معنای 25 کیلوگرم بر متر مربع است. برای بیشتر بزرگسالان، BMI(Body Mass Index) ایده‌آل در محدوده اعداد 18.5 تا 24.9 است.

Weight/((Height÷100)^2)

BMI زیر ۲۳ برای پوکی استخوان حتما باید Cross Check شود!!!
















کار با آرایه های مشخص و مقدار معین ( Parameter arrays )



ParamArray : 


نوشتن تابع AddMultipleArgs برای گرفتن تعداد کلی داخل پرانتز 


Function AddMultipleArgs(ParamArray myNumbers() As Variant)

Dim mySum As Single

 Dim myValue As Variant

 For Each myValue In myNumbers

 mySum = mySum + myValue

 Next

 AddMultipleArgs = mySum

End Function


?AddMultipleArgs(1, 23.24, 3, 24, 8, 34)















According to international research led by the Complutense University of Madrid (UCM), the surface of ice when in contact with a solid object melts and creates a self-perpetuating lubricant layer. This lubricant layer makes the ice slipperier, and therefore more likely to cause accidents involving skating or cars.















تولید عدد تصادفی یا رندوم ..... Randomize


minNum=1

maxNum=68

lucky=Int((maxNum - minNum + 1) * Rnd) + minNum




برای استفاده در لوپ و آرایه : 


Const spins=6

Dim lucky(spins)

Dim myNumbers as String

myNumbers=""

عبارت زیر در یک لوپ قرارداده می شود ، فرضا متغیر t در بازه یک تا عدد ثابت spins

lucky(t) = Int((maxNum - minNum + 1) * Rnd) + minNum


می توان داخل این لوپ تعریف شده ، لوپ دیگری زد تا اگرشماره تکراری در این لوپ ۶ تائی تولید شد از آن صرفنظر کرده و عدد دیگری جایگزین گردد البته از یک تا t-1 و این مرتبه جای متغیر t از i استفاده کنید که اگر (lucky(t)=lucky(i  بود دو مرتبه کد رندوم اجرا شود و i برابر صفر قرار گیرد ... 

myNumbers=myNumbers & "-" & lucky(t)









خانم سلطانی برای خانم فیروزه بنی صدر تصریح کرد که مسعود رجوی حتی به تجاوز جنسی به زنان در سطوح بالای فرماندهی و لایه اول زنان شورای رهبری بعداز مریم و ادامه دادن این روند با سایر زنان پرداخته است . خانم سلطانی به بحث درون سازمانی " هزار شین " که مخفف هزار عضو شورای رهبری می باشد پرداخت که نشان از یکی به یکی اضافه شدن این زنان بوده است که همه با توجیه های ایدئولوژیک صورت می گرفته است. در این رابطه خانم سلطانی اظهار کرد که امیدوار است افشاگریهای ایشان بعنوان عاملی بازدارنده، دکان رجوی را بسته باشد.  
خانم دکتر فیروزه بنی صدر نیز ضمن خوش آمدگویی و خرسندی از این دیدار با اشاره به کارکرد فرقه ها گفت:
     «این عملکرد برای من جای تعجبی ندارد، مگر فرقه اسماعیلیه نبود که رهبری این فرقه در ایام ماه رمضان همه مریدان خود را جمع کرده و می گوید که به من وحی شده است که الان باید شراب بنوشیم و زنان و مردان با یکدیگر آمیزش جنسی داشته باشند، بنابر این آقای رجوی نیز از این امر مستثنی نیست چرا که عینا به مثابه رهبر یک فرقه عمل می کند، بنابراین مطالب حزن انگیز شما نه تنها عجیب نیست ، بلکه روند قانونمند و تکاملی رشد یک فرقه است.از نظر من رجوی به خاطر " قدرت " همه این کارها را انجام داده است حتی برکناری مردان و دادن هژمونی به زنان و همین طور تجاوز به زنان سطح فرماندهی برای مشروط [وابسته؟] کردن در ابعاد بسا عمیق تر به خودش و اجرای دستوراتش بوده است.»      



















Msgbox در اکسس




Sub TestButtons()

 Dim question As String

 Dim bts As Integer

 Dim myTitle As String

 Dim myButton As Integer

 

 question = "Do you want to preview the report now?"

 bts = vbYesNoCancel + vbQuestion + vbDefaultButton1

 myTitle = "Report"

 myButton = MsgBox(prompt:=question, buttons:=bts, _

 Title:=myTitle)

 

 Select Case myButton

 Case 6

 DoCmd.OpenReport "Sales by Year", acPreview

 Case 7

 MsgBox "You can review the report later."

 Case Else

 MsgBox "You pressed Cancel."

 End Select

End Sub






جورجینا فاش کرد که آن‌ها تقریبا هر روز در مدرسه مورد ضرب و شتم قرار می‌گیرند و هرگز نیز از خود دفاع نمی‌کنند: «به خاطر شهرت رونالدو این رفتارهای خشونت‌آمیز از جانب دیگر بچه‌ها عجیب نیست و من متوجه می‌شوم چون اغلب فرزندانم با گریه به خانه برمی‌گردند. دفاع از خود را بلد نیستند؟ این‌طور نیست. واقعیت این است که هرگز دوست ندارم فرزندانم با افراد دیگر به خشونت رفتار کنند.»

1835528

جورجینا همچنین فاش کرد که او یک مادر سخت‌گیر است و با وجود زندگی مرفه و لوکس، او همیشه به بچه‌هایش سخت می‌گیرد: «من به آن‌ها توضیح می‌دهم که باید وعده غذایی را کامل بخورند و غذا نباید اضافه بیاید. اگر بخشی از ناهار را نخورند، همان را باید به عنوان میان وعده یا شام مصرف کنند. اگر این کافی نباشد، ویدیوهایی از کودکان گرسنه را به آن‌ها نشان می‌دهم و به آن‌ها توضیح می‌دهم که اگر اصرار داشته باشند چیزی را که آماده شده، نخورند، ممکن است همین اتفاق برای آن‌ها بیفتد.»







شماره آیتم انتخاب شده در لیست باکس کمبو با ویژگی ListIndex




-برگرفته از داکیومنت سایت Office 



ویژگی ListIndex برای تعیین اینکه کدام آیتم در کمبوباکس انتخاب شده بکار می رود.



ویژگی ListIndex عدد صحیحی بین 0 تا تعداد کلی آیتم ها در لیست باکس یا کمبوباکس منهای یک است. مایکروسافت اکسس مقداراین  ویژگی را هنگام انتخاب آیتم در لیست باکس یا قسمت لیست باکسِ کمبوباکس تنظیم می کند.مقدار ویژگی ListIndex آیتم اول در یک لیست 0 است و مقدار دومی یک و همین طور ...


این ویژگی فقط با استفاده از ماکرو یا ویژوال بیسیک در دسترس است.می توان این ویژگی را فقط در نمای فرم ( Form View ) و نمای برگه داده ( DataSheet )  خواند.این ویژگی فقط خواندنی است و در دیگر نماها ( Views ) موجود نیست !!! 


مقدار ویژگی ListIndex نیز با تنظیم ویژگی BoundColumn روی 0 برای کمبو یا لیست باکس ، موجود است .اگر ویژگی BoundColumn روی صفر تنظیم شود فیلد جدول زیرینی که     به کمبوباکس یا لیست باکس آن محدود شده است ، دارای همان مقدار تنظیم ویژگی ListIndex است.


لیست باکس ها همچنین ویژگی MultiSelect دارند که به کاربر اجازه انتخاب چند آیتم از کنترل را می دهند. زمانیکه چندین انتخاب در یک لیست باکس انجام شوند ، با استفاده از ویژگی Selected کنترل می توان تعیین کرد کدام آیتم ها انتخاب شده اند. ویژگی Selected یک آرایه ای از مقادیر از صفر تا مقدار ویژگی ListCount منهای یک است . برای هر آیتم در لیست باکس ، چنانچه آیتم در حالت انتخاب باشد  ویژگی Selected ، ترو ( True )  است و اگر نباشد False ( عدد صفر )


Combobox1.Selected=Not Combobox1.Selected


مجموعه ItemSelected همچنین روشی برای دسترسی دادا در ردیف های انتخاب شده یک لیست باکس یا کمبو باکس را فراهم می نماید.


از مجموعه ItemSelected  همراه با ویژگی Column یا ItemData برای بازیابی داده ها از ردیف های انتخاب شده در یک لیست یا کمبو باکس استفاده نُمائید .برای فهرست یا لیست مجموعه ItemSelected می توان از عبارت  For Each ...Next استفاده کرد.


برای مثال ، اگر لیست باکسی از کارمندان در فرم دارید ، می توان مجموعه ItemSelected فهرست کرد و از ویژگی ItemData کنترل برای برگرداندن مقدار ستون محدود شده برای هر ردیف انتخاب شده در لیست باکس استفاده کرد.

برای فعال کردن چند انتخابی ردیف ها در یک لیست باکس ، ویژگی MultiSrlect را به Simple یا Extended تنظیم کنید.

مجموعه ItemSelected دو ویژگی Count و Item دارد بدون هیچ مِتُدی


برای انتخاب اولین آیتم در لیست باکس در یکی از رویدادها : 

Me.ComboBox1.ItemData(0)



Refer to the third column in your combo box. Column numbering is zero-based.


Combo1.Column(2)





۲۴ اسفند ۱۴۰۱ در تعقیب و گریز پلیس و قاچاقچیان در البرز : 

این مرکز اعلام کرد: مأموران برای توقف خودرو اقدام به تیراندازی می‌کنند که در حین تیراندازی 2 تیر اسلحه به طور سهوی به یک زن و یک دختر اصابت کرده که سریعاً پس از این حادثه به مرکز درمانی منتقل می‌شوند.






















persian-dance-azarahang













TempVars در اکسس ( تعریف متغیرهای موقت برای استفاده در تمام رویه ها )



طبق کتاب Access programming 2021 


چنانچه دیتابیس ( پایگاه داده ) با فرمت ACCDB است ، بجای استفاده از جدول پایگاه داده یا متغیرهای global ، می توان از مجموعه TempVars برای ذخیره داده های گوناگون که تمایل دارید دوباره بکار ببرید بهره برد.


TempVars مخفف متغیرهای موقت است.این متغیرها global هستند.می توان در ماژول های VBA یا کوئری ها ( پرس و جو ها ) ، رویدادها ( Events ) ، عبارات ( Expressions ) ، ... و هر پایگاه داده ارجاعی به آنها اشاره کرد.دیتابیس های اکسس ACCDB اجازه تعریف تا 255 متغیر موقت را در لحظه می دهند . این متغیرها در حافظه تا زمان بسته شدن پایگاه داده حفظ می شوند ( جز حذف آنها زمان اتمام و عدم نیاز).برخلاف متغیرهای Public ، متغیر موقت هنگام بروز خطا پاک نمی شوند.



ایجاد یک متغیر موقت با شئ مجموعه TempVars :


در محیط VBA وارد شوید و پنجره Immediate Window را باز کنید با کلید میانبر Ctrl+G هم می توانید این کار را انجام دهید.هر کدام از عبارات زیر را وارد کنید


TempVars("gtvUserName").Value = "John Smith"

TempVars("gtvUserFolder").Value = Environ("HOMEPATH")

TempVars("gtvEndDate").Value = Format(now(),"mm/dd/yyyy")


توجه کنید که برای ایجاد متغیر موقت ، تمام چیزی که شما باید انجام بدهید مشخص کردن مقدار آن است.اگر متغیر از قبل موجود نباشد ، اکسس آنرا به مجموعه TempVars اضافه می نماید در غیر اینصورت اکسس آنرا ( مقدار جدید ) جایگزین می کند یا بعبارتی اصلاح ( Modify ) .با استفاده از متد Add می توان متغیر را اضافه کرد:


TempVars.Add "gtvCompleted", "true"



هر شئ TempVar در این مجموعه ویژگی های Name و Value دارد که می توان برای دسترسی  به متغیر و خواندن مقدار از هر Procedure ( رویه ) بهره برد.آیتم ها بصورت پیش فرض در این مجموعه از 0 شماره گذاری شده است یعنی اولین آیتم 0 و دومین آیتم 1  ، سومین 2 و همینطور... بنابراین برای پیدا کردن مقدار متغیر دوم در TempVars که وارد کرده اید ( gtvUserFolder ) ، در پنجره Immediate عبارت زیر را وارد کنید : 


?TempVars(1).Value



برای بازیابی مقدار متغیر می توان از نام آن نیز استفاده کرد :



?TempVars("gtvUserFolder").Value



می توان با تکرار  از طریق مجموعه TempVars،  نام و مقادیر تمام متغیرهای global که در آن قرار داده اید را مشاهد کنید. ( دو پراپرتی Name و Value فراموش نشود !!! )



For Each gtv in TempVars

'Your Code 

Next




می توان کدهای هر خط بالا را پشت سرهم نوشت ولی باید بین هرکدام از جداکننده : استفاده کرد




استفاده از متغیرهای موقت global در عبارات ( Expressions ) :


در هر جایی از Expresdions می توان استفاده کرد.برای مثال می توان مقدار کنترل تکست باکس Unbound ( محدود به جایی نیست مثل جدول یا کوئری ) را در فرم  تنظیم کنید تا با فعال کردن Property sheet و تایپ موارد زیر در ویژگی ControlSource تکست باکس ، مقدار متغیر global نمایش داده شود :


=[TempVars]![gtvCompleted]



همچنین می توان از متغیر موقت برای ارسال شرط انتخابی به پرس و جوها استفاده کرد : 



SELECT * FROM Orders WHERE Order_Date = TempVars!gtvEndDate




حذف متغیر موقت از شئ مجموعه TempVars : 



زمان انجام کار با متغیر و اتمام کار می توان آن را از این مجموعه با متد Remove  پاک کرد : 


TempVars.Remove "gtvUserFolder"



برای بررسی تعداد اشیاء TempVar در مجموعه TempVars از ویژگی Count استفاده کنید ، در پنجره Immediate : 



?TempVars.Count



نهایتاً برای حذف سریع تمام متغیرهای global از متد RemoveAll استفاده کنید : 


?TempVars.RemoveAll







15 اسفند ۱۴۰۱ : 





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



آگهی فروش تیگو ۸ پرو را در یک بیلبورد تبلیغاتی بغداد می‌بینید. قیمت نقدی این خودرو در بغداد ۲.۵ میلیون دینار معادل ۹۶۰ میلیون تومان است. در حالی که این خودروی چینی در ایران به قیمت ۳.۳ میلیارد تومان به فروش می‌رسد!





البته با دینار ۴۳۵ ریال محاسبه کنیم ۹۶۰ میلیون نمیشه 




به گزارش خبرنگار انتظامی خبرگزاری فارس، سردار سعید منتظرالمهدی در تشریح جزئیات خبر فوق اظهار داشت: در پی مسمومیت تعدادی از دانش آموزان مدارس طی روزهای اخیر در سطح استان فارس، شناسایی و دستگیری عاملان این موضوع به صورت ویژه در دستور کار ماموران انتظامی قرار گرفت.

وی ادامه داد: تحقیقات فنی و اطلاعاتی پیرامون این موضوع ادامه داشت تا اینکه ماموران  اطلاعات فرماندهی انتظامی شهرستان لارستان با همکاری ماموران اطلاعات سپاه ۵ نفر را در این خصوص شناسایی و دستگیر کردند.‌

سخنگوی فراجا با بیان اینکه افراد دستگیر شده دو مرد ۵۰ و ۲۲ ساله و سه  خانم  که یکی از آنان دانش آموز مردودی ۲۱ ساله بوده اند، تصریح کرد: این افراد به صورت تیمی اقدامات خود را انجام می داده اند و طی روزهای اخیر با پرتاب گاز نیتروژن به داخل ۷ مدرسه در شهرستان لارستان باعث مسمومیت ۵۳ نفر از دانش آموزان شده بودند.




بازیگر سریال شهباز ( امنیتی - تخیلی )




۱۸ اسفند ۱۴۰۱ : پخش زنده در مترو بعلت تست دستگاه ها و نقص فنی




اکوایران: امروز در شبکه‌های اجتماعی عکسی دست به دست شده که نشان می‌دهد تصویر واگن بانوان در سایر واگن‌های مترو به صورت زنده پخش می‌شود. سرپرست مدیریت ارتباطات شرکت بهره‌برداری متروی تهران و حومه گفته این مساله بخاطر مشکل فنی بوده و مانیتورها در حال تست و تعمیر هستند.





در سال ۱۳۵۳ زمان محمدرضاشاه پهلوی



به دنیا آوردن نوزاد در کف حمام بعلت  تعجیل نوزاد 




۲۰ اسفند ۱۴۰۱ : 


سردار دوستعلی جلیلیان امروز در گفت‌وگو با خبرنگار  فارس در زاهدان اظهار کرد: ظهر دیروز ماموران انتظامی شهرستان گلشن در راستای تأمین نظم و امنیت  و در حین گشت زنی در حوزه شهرستان گلشن مورد هدف افراد مسلح ناشناس قرار می گیرند که در این درگیری مسلحانه متاسفانه سرهنگ دوم محسن پودینه و ستوانسوم احسان شهرکی به درجه رفیع شهادت نائل آمدند.




اسفندماه ۱۴۰۱ : دلار ۴۳ هزار تومان و حقوق کارگرساده حداقل ۵ میلیون





























متد Shell.NameSpace




Shell.Application


یک شئ Folder برای پوشه مشخص شده ایجاد و برمی گرداند


retVal=Shell.NameSpace(vdir)


vDir : 

پوشه ای که در آن شئ Folder ایجاد می شود.می تواند رشته ای باشد که مسیر پوشه یا یکی از مقادیر ShellSpecialFolderConstants را مشخص می کند.  توجه کنید که نام های ثابت موجود در ShellSpecialFolderConstants در Visual Basic در دسترس هستند ، اما در VBScript یا  JScript موجود نیستند. در این موارد ، مقادیر عددی باید در جای خود استفاده شوند.


VB : 

Object reference to the Folder object for the specified folder. If the folder is not successfully created, this value returns null.


شئ Folder :


Represents a Shell folder. This object contains properties and methods that allow you to retrieve information about the folder.

The Folder object has these types of members:

یکی از متدها ParseName :


یک شئ FolderItem را که نشان دهنده یک آیتم مشخص است را ایجاد و برمی گرداند.







Set objFolder=objShell.NameSpace("C:\Windows")

if Not (objFolder Is Nothing) Then

Set objFolderItem=objFolder.ParseName("clock.avi")

'اضافه کردن کد در اینجا

Set objFolderItem=Nothing

End If


شماری از ویژگیهای شئ FolderItem :

GetFolder

GetLink

IsFileSystem

IsFolder

IsLink

Name

Path

Size

Type








شئ ImageFile




شئ ImageFile یک ظرف است . همچنین از فایل های تصویری از طریق متد LoadFile پشتیبانی می کند. شئ ImageFile را می توان با استفاده از WIA.ImageFile ساخت.


متدها : 

LoadFile

SaveFile

Saves the ImageFile object to the specified file.

ویژگی ها : 


FileExtension

Height

Width

HorizontolResolution

VerticalResolution


VerticalResolution

Retrieves the vertical pixels per inch of the image.

Width

Retrieves the width of the image in pixels.

















متد Database.OpenRecordSet




جهت پیشگیری از وقوع جرم، صرفا سازمان هلال احمر با همکاری کمیته امداد امام خمینی(ره)، سازمان بسیج مستضعفین، سازمان بهزیستی کشور، وزارت امور خارجه و سایر دستگاه‌های مرتبط موضوع ماده (۲) این قانون، اقدامات لازم در زمینه جذب، هدایت و توزیع کمک‌های غیردولتی داخلی و خارجی را با رعایت اصل هشتادم (۸۰) قانون اساسی انجام می‌دهند و هیچ شخص حقیقی یا حقوقی دیگری مجاز به تبلیغ و جمع آوری کمک‌های مالی مردمی نیست.





یک شئ رکوردست جدید ایجاد کرده و به مجموعه رکوردست ها اضافه می نماید.



نوشتاری :

expression.OpenRecordset (NameTypeOptionsLockEdit)

آرگومان اول یعنی Name : 

منبع رکوردها برای رکوردست جدید.منبع می تواند نام جدول ، کوئری و یا عبارت Sql باشد.دیتا تایپ رشته یا String است.


آرگومان دوم یعنی Type : 

یک متغیر ثابت و نشاندهنده نوع رکودرستی است باز می شود.

یادداشت : اگر رکوردستی را در فضای کاری مایکروسافت اکسس باز می کنید و نوع آن را مشخص نکردید ، متد OpenRecordset یک رکوردست از نوع جدول ایجاد می کند در صورت امکان . اگر لینکی به جدول یا کوئری تعئین کنید ، این متد یک رکوردست نوع dynaset می سازد.


dbOpenDynaset

dbOpenSnapShot

dbOpenTable




بعضی آپشن ها ( آرگومان سوم ) :


dbAppendOnly : به کاربر اجازه میدهد که رکوردهای جدیدی به dynaset اضافه کند اما وی را از خواندن رکوردهای موجود جلوگیری میکند.

dbDenyWrite : دیگر کاربران را از تغییر رکوردهای رکوردست باز می  دارد.

dbReadOnly : رکوردست را بصورت فقط خواندنی باز می کند.

dbSeeChanges : یک خطای اجرا ایجاد می کند در زمان ویرایش داده ای توسط کاربر دیگر فقط در نوع dynaset.

dbSqlPassThrough : یک عبارات Sql به دیتابیس ODBC ارسال میکند فقط در حالت snapshot . ( باز کردن رکوردست در این حالت )







به گزارش خبرگزاری فارس از اصفهان؛ روابط عمومی وزارت دفاع در اطلاعیه‌ای اعلام کرد: شامگاه هشتم بهمن ۱۴۰۱ حوالی ساعت ۲۳۳۰ حمله ناموفق با استفاده از ریزپرنده به یکی از مجتمع‌های کارگاهی وزارت دفاع صورت گرفت و خوشبختانه با پیش بینی ها و تمهیدات پدافندی صورت گرفته یکی از آنها مورد اصابت پدافند هوایی مجتمع و دو فروند دیگر آنها در تله های پدافندی گرفتار و منفجر شدند.




ملیت فرح دیبا ایرانی نیست.


 در روایت است وقتی تلقین به بعضی مردگان خوانده می شود و او را تکان می دهند و می گویند: "اِسمَع!اِفهَم!" ملایکه میخندند که این زنده بود نفهمید الان چگونه بفهمد؟!!!️ 

خدا کند ما از این دسته نباشیم که ملائکه به ما بخندند. إن شاءالله تا زنده هستیم، بشنویم و بفهمیم.


یک جای دیگر که ملائکه می خندند، زن بی حجابی است که رویش را از نامحرم نمی گرفته و حالا مرده است. وقتی او را دفن می کنند، باید روی او ر ا باز کنند و عقب بزنند، قبر کن می گوید: "یک محرم بیاید"

 

اینجاست که ملائکه می خندند و می گویند: "این وقتی زنده بود، همه سر و صورت او را می دیدند و محرم و نامحرم نداشت، حالا می گویید محرم بیاید، رویش را عقب بزند؟!



۱۰بهمن ۱۴۰۱ : 

اسرائیل در پاسخ به انتقامی که جوانان فلسطینی نسبت به کشتار جنین توسط سربازانشان در روزهای اخیر از آنها گرفتند، در تحرکاتی عجولانه، پس از اقدام ناکام چندریزپرنده در ایران و انهدام آن‌ها، مواد غذایی و لوازم پزشکی صادراتی از ایران به سوریه را در بوکمال (نقطه مرزی سوریه و عراق) مورد حمله پهپادی خود قرارداد و اسباب بازیِ بچه‌های این شهر را فراهم کرد. در این حمله دو کفی مورد اصابت قرار گرفت و مابقی تریلی ها در مسیر دمشق در حال حرکت هستن. این حمله کشته و زخمی به همراه نداشت. منبع: آخرین خبر



۱۰ بهمن ۱۴۰۱ : 

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




سیما پروانه گهر، خبرنگار از ممنوعیت گریم برای گویندگان زن خبر در صداوسیما خبر داد.

سیما پروانه گهر در تویئتر خود نوشت:

از دو ماه قبل، گریمورهای بخش‌های خبری را مرخص و اعلام کردند گویندگان زن‬⁩ خبر باید بدون هیچ گونه آرایشی جلو دوربین بروند.




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




۱۵ بهمن ۱۴۰۱ : بر اساس اعلام وزارت خزانه داری آمریکا، شخصیت های تحریم شده شامال حسین شمس آبادی، علی رضا تنگسیری، ابوالفضل ناظری، محسن اسدی، محمدصادق حیدری موسی، ابوالفضل صالح نژاد، محمدرضا محمدی و ابوالقاسم والاگوهر هستند که به گفته وزارت خزانه داری آمریکا در هیات مدیره شرکت پرآور پارس حضور دارند.

پیش از این، وزارت بازرگانی آمریکا در ۱۱ بهمن ماه اعلام کرد هفت شرکت ایرانی به بهانه تولید پهپادهایی که روسیه از آنها برای حمله به اوکراین استفاده کرده است، در فهرست سیاه تجاری این کشور قرار گرفته اند.



۱۵ بهمن ۱۴۰۱ : شعارهای بیگانه هراسی هواداران اتلتیکو علیه کوشا دلشاد و «تروریست» خطاب کردن این مربی ایرانی باعث شد تا دلشاد کمتر از دو روز کار در تیم جدید، از سمتش استعفا بدهد.




وضع دختران و زنان در زندان های سازمان اطلاعات و امنیت کشوری طاغوت






۱۵ بهمن ۱۴۰۱ : 

وزارت خارجه آلمان در جدیدترین تلاش برای ایران‌هراسی، به شهروندان خود هشدار داد که ایران را ترک و از سفر به این کشور خودداری کنند.

به گزارش گروه بین‌الملل خبرگزاری تسنیم، وزارت امور خارجه آلمان مدعى «خطر جدی دستگیری‌های خودسرانه، بازجویی و حبس‌های طولانی‌مدت برای اتباع آلمانى» شده و در وب‌سایت خود نوشته است که این هشدار شامل شهروندان دوتابعیتی ایرانی نیز می‌شود.












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













ویژگی FilterOn از فرم



Form.Filter Property


از ویژگی Filter برای تعیین زیر مجموعه ای از رکوردها استفاده کنید تا زمانیکه فیلتر روی فرم ، گزارش ، پرس و جو یا جدول اعمال می شود ، نمایش داده شوند.


ویژگی فیلتر یک عبارت رشته ای است شامل عبارت شرطی بدون حرف کلیدی Where.


Form.Filter="Id=101"

Form.FilterOn=True


برای اعمال فیلترِ خودکار زمان باز شدن فرمی ، در تنظیمات ویژگی رویداد OnOpen فرم ،  یک ماکرو را مشخص کنید که از اکشن یا عملکرد FilterApply استفاده می کند یا یک رویه رویداد ( Event ) که از متد ApplyFilter شئ Docmd استفاده می نُماید.


برای حذف فیلتر ، انتخاب باتن Apply Filter ، انتخاب Remove Filter/Sort در منوی Records  ، یا استفاده از ویژوال بیسیک در تنظبم ویژگی FilterOn به False


expression.ApplyFilter (FilterNameWhereConditionControlName)


حداقل یکی از دو آرگومان های متد ApplyFilter  را باید پر کرد. اگر یک مقدار برای دو آرگومان وارد شود آرگومان   WhereCondition برای فیلتر اعمال می گردد.


حداکثرطول آرگومان WhereCondition عدد ۳۲۶۷۸ کاراکتر است ( بر خلاف آرگومان اکشن یا عملکرد WhereCondition در ماکرو که حداکثر طول ۲۵۶ کاراکتر را می گیرد.)





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



بهمن ۱۴۰۱ : اورخان عسگروف مسئول حراست کشته شده ( در تهران ) از نیروهای امنیتی حکومت آذربایجان مستقر در سفارت بوده است.



به گزارش«انتخاب»، به نقل از ترند، آیخان حاجی‌زاده، سخنگوی وزارت خارجه آذربایجان در گفت‌وگویی با تی آر تی اعلام کرد که دولت باکو درصدد است تا در آینده‌ای نزدیک سفارت خود در ایران را تخلیه کند.

  وی در ادامه گفت: هر کشور مسئول تضمین امنیت سفیران در کشورش است.

او عنوان کرد که طرف ایرانی مسئولیت کامل حمله به سفارت این کشور در تهران را برعهده دارد.

حاجی‌زاده تاکید کرد که "کمپین اخیر ضد آذربایجانی در رسانه‌های ایران زمینه‌ساز این حمله بوده است.

همچنین تی آر تی گزارش داد که فرد مسلح با سلاح کلاشینکف مسئول امنیتی سفارت باکو در تهران را کشته است.


وزارت امور خارجه آذربایجان نیز با انتشار بیانیه ای درباره حمله به سفارت این کشور توضیحاتی داده و اشاره کرده است که در این حادثه یک نفر با اسلحه کلاشینکف حمله کرد و رییس حراست سفارت باکو را کشت، دو محافظ سفارت نیز در جلوگیری از این حمله زخمی شدند. وضعیت آنها رضایت بخش است. این وزارتخانه افزود: کمپین ضد جمهوری آذربایجان در ایران به حمله به سفارت ما در تهران کمک کرد و ایران را به بی‌توجهی به درخواست‌های باکو برای افزایش امنیت سفارت ما در تهران، متهم می‌کنیم.



بهمن ۱۴۰۱ : 

کی روش در جدیدترین مصاحبه با سایت «کوره» مصر گفت: تمام مدارک خود را به وکیلم ارسال کردم تا این قضیه را از فیفا پیگیری کند. همچنان من نتوانستم مطالبات گذشته خودم را را بگیرم و فدراسیون مصر هم جواب تماس های من را نمی دهد.



















ساخت یک ADO Recordset



عبارات Dim ، Redim ، Static ، Private ، Public فقط متغیری را اعلام می کنند که به یک شئ اشاره دارد.تا زمانیکه از دستور Set برای اختصاص یک شئ استفاده نکنید، به هیچ شئ واقعی اشاره نمی شود ... یعنی حتما برای دسترسی به اشیاء باید حتما از Set استفاده شود.




Dim objRS As ADODB.Recordset

Set objRS = CreateObject("ADODB.Recordset")

Dim strSQL As String

strSQL = " SELECT * from table"

متد Open : دسترسی به رکوردها در جدول ، نتیجه یک پرس و جو ، یا به رکوردست ذخیره شده

objRS.Open strSQL, CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

If Not (objRS.EOF And objRS.BOF) Then

Do While Not objRS.EOF 'Start looping through the records

'do something here with each record...

objRS.MoveNext

Loop

End If

نکته : همیشه شئ رکوردست را بعد از استفاده کردن ببندید تا منابع سیستم آزاد شود.

objRS.Close

شئ رکوردست را به Nothing تنظیم کنید تا بطور کامل آنرا از حافظه حذف کند.

Set objRS = Nothing




لطفا لایک و نظر دهی فراموش نشود








ADO Charset & State & Type Property + Some Methods



ویژگی Charset مقداری را تنظیم میکند یا برمی گرداند که مشخص می کند محتویات Stream باید به کدام مجموعه کاراکتر ترجمه شود( زمانیکه در بافر  شئ  Stream ذخیره می شود) . پیش فرض Unicode است.


BSTR یا Basic String یک نوع داده ساختاریافته است که شامل یک رشته کاراکتر و طول رشته است.



این ویژگی برای تبدیل داده های صادره و وارده از Stream استفاده می شود.برای مثال اگر Stream حاوی داده  ISO-8859-1 باشد و داده به یک BSTR کپی شود ، شئ Stream داده را به Unicode تبدیل خواهد کرد. برعکس آنهم صحیح است.


یادداشت : این ویژگی فقط با اشیاء جریان متنی استفاده میشود ( نوع آن adTypeText است )

یادداشت : برای باز کردن یک شئ Stream ، موقعیت جاری باید در ابتدای آن باشد تا این ویژگی تنظیم یا اعمال گردد.


ویژگی State : 


این ویژگی مقداری رو برمی گرداند که نشان می دهد شئ باز ، بسته ، در حال اتصال ، اجرا یا بازیابی داده است. >>> ObjectStateEnum ... پیش فرض adStateClosed است.

این ویژگی می تواند با Command ، Connection ، Record ، RecordSet و شئ Stream استفاده شود.

ویژگی State می تواند دارای ترکیبی از مقادیر باشد . اگر داکیومنتی در حال اجراست ، این ویژگی دارای مقدا adStateOpen و adStateExecuting است.


مقدار 0 بسته ، 1 باز و  4 در حال اجرا 


ویژگی Type:


این ویژگی یک مقدار StreamTypeEnum ، تنظیم کرده یا بر می گرداند که مشخص کننده نوع داده ی شئ Stream است . پیش فرض adTypeText است.

یادداشت : این ویژگی زمانی که موقعیت در ابتدای Stream است read/Write است ( هم می شود خواند و هم نوشت ) در غیر اینصورت فقط خواندنی است.


متد LoadFromFile :


این مِتُد برای بارگزاری محتویات فایل اجرائی داخل شئ Stream باز استفاده می شود . تمام داده موجود در این شئ دوباره نوشته خواهد شد منظور OverWrite.

یادداشت : بعد از فراخوانی متد ، موقعیت جاری به صفر یا ابتدای شئ Stream تنظیم می شود.

نکته : این متد می تواند برای آپلود محتویات یک فایل به سرور استفاده شود .


ویژگی SaveToFile :


این ویژگی برای ذخیره محتویات باینری یک شئ Stream باز به فایل Local استفاده می شود.

یادداشت : بعد از فراخوانی ، موقعیت جاری به ابتدای Stream یعنی صفر تنظیم می شود.


ویژگی ReadText : 


این متد برای خواندن تمام Stream ، یک خط یا تعداد مشخصی از کاراکترها از شئ جریان متنی استفاده می شود و نتیجه داده را بعنوان یک رشته باز می گرداند.

یادداشت : این متد یا روش تنها با Stream متنی استفاده می شود و برای باینری از متد Read

StreamReadEnum













بهمن ۱۴۰۱

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

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


ملکه مادر در این باره معتقد است فرح «عمداً و عالماً کاری می‌کرد که به محمدرضا لطمه بخورد.» تاج‌الملوک مادر محمدرضا پهلوی که به گفته خودش از سال ۱۳۵۲ با فرح قهر کرده و کلمه‌ای با او سخن نگفته بود، بارها برخوردهای تند و خشنی در قبال رفتارهای فرح داشت: «یک بار آقای رئیس خدمه کاخ‌های سلطنتی با ترس و لرز و هزار، اما و اگر و ببخشید و جایی نگویید و اینگونه مقدمات گفت: قربانت گردم، آیا این درست است که شهبانوی مملکت دوست‌پسر داشته باشد و او را با خود به داخل کاخ بیاورد؟ البته ما می‌دانستیم که فرح با فریدون جوادی قاطی شده است، اما نه اینکه او را به کاخ بیاورد! این بود که یک روز، خود فرح را خواستم و به او نهیب زدم که زنیکه گدا ! خجالت نمی‌کشی این قبیل کارها را در جلوی چشم کارکنان دربار انجام می‌دهی؟ فرح گفت: درست گفته‌اند که شاه می‌بخشد، شیخ علیخان نمی‌بخشد! خود محمدرضا مرا آزاد گذاشته، آن وقت باید به تو حساب پس بدهم؟ من آزاد هستم و اختیار پایین‌تنه‌ام را دارم! خلاصه خیلی بی‌حیایی کرد.

























متد Recordset.FindFirst



پیدا کردن اولین رکورد با توجه به شرط 


توضیحات :


اگر رکوردی مطابق با شرط پیدا نشد ، نشانگر رکورد جاری ناشناخته است و ویژگی NotMatch به True تنظیم می شود.اگر رکوردست حاوی بیش از یک رکورد باشد FindFirst روی اولین جستجو قرار میگیرد و FindNext بعدی و به همین ترتیب

.FindFirst(Criteria)



دیماه ۱۴۰۱ - سفارت انگلیس 




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



اینهم تصویر ایشان




نوشیدن آب برای ستون فقرات و کمر نیز مهم می باشد. به طور مثال بیشتر حجم دیسک های بین مهره ای یعنی درحدود ۸۰ درصد از حجم آن ها را آب تشکیل می دهد. با افزایش سن میزان آب درون دیسک ها کاهش می یابد. بنابراین نوشیدن منظم آب جهت تغذیه دیسک های ستون فقرات و حفظ سلامتی آنها ضروری می باشد و باعث پیشگیری از درد و مشکلات دیسک کمر می شود

برای پیشگیری از دیسک کمر معمولا توصیه می شود که در حدود ۸ لیوان آب در روز نوشیده شود. نه تنها در هنگامی که تشنه هستید بلکه باید در طول روز آب بنوشید. نوشیدن آب علاوه بر تغذیه ارگان های بدن سبب متناسب ماندن وزن بدن و رسیدن به وزن مطلوب می شود.


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



سوره انفال ۶۰


هر نیرویی در قدرت دارید، برای مقابله با آنها [= دشمنان‌]، آماده سازید! و (همچنین) اسبهای ورزیده (برای میدان نبرد)، تا به وسیله آن، دشمن خدا و دشمن خویش را بترسانید! و (همچنین) گروه دیگری غیر از اینها را، که شما نمی‌شناسید و خدا آنها را می‌شناسد! و هر چه در راه خدا (و تقویت بنیه دفاعی اسلام) انفاق کنید، بطور کامل به شما بازگردانده می‌شود، و به شما ستم نخواهد شد!



دیماه ۱۴۰۱

نماینده مردم تربت جام در مجلس شورای اسلامی تاکید کرد: من از رییس قوه قضاییه آقای محسنی اژه‌ای و دادستان کل کشور آقای منتظری درخواست دارم، ۷ نفر از افرادی که طی تجمعات اعتراضی به توزیع چراغ‌ها و قطعی گاز در تربت جام دستگیر شدند را با توجه به مشکلاتی که مردم دارند و وضعیتی که در منطقه وجود داشته است، مورد عفو قرار داده و آزاد کنند و اجازه دهند خانواده‌ها از نگرانی در بیایند. آنها جوان هستند؛ ممکن است خطایی مرتکب و شعاری هم سر داده باشند. واقعا شرایط سختی در تربت جام است؛ در چنین شرایطی ما باید مردم را بیشتر درک کنیم و در کنارشان باشیم.
















متد Recordset.GetRows



این متد چندین رکورد از یک رکوردست را بازیابی میکند

-شامل سه آرگومان است :

 Rows

Start

Fields

-در آرایه دوبعدی


بعلت اینکه متد GetRows همیشه تمام فیلدها در شئ رکوردست را برمی گرداند لذا می توانید کوئری ایجاد کنید تا فیلدهای مورد نیاز شما را باز گرداند.



arrEmployees=rstEmployees.GetRows(intRows)


داده ها در آرایه ای با نام arrEmployees ذخیره می شود ( دو بعدی )  البته بصورت موقت و بعد شما می توانید از طریق Loop مقادیر را چاپ کنید با توجه به اینکه آرایه دو بعدیست می توان x را برای ستون ها و y را برای ردیف ها در نظر گرفت مثل محور x و y در محور مختصات.


For x=0 To intRows-1

   For y=0 To 2

       Debug.Print arrEmployees(y,x) & " " ;

Next

Debug.Print vbrclf

Next








آرایه در اکسس



کد زیر از Access vba programming کپی شده   که به تفسیر ساده تر آن پرداختیم.



Sub modArray_StatesInAnArray()

بارگزاری فهرستی از ایالات از جدول Customers داخل آرایه ای با اندازه مشخص ... با سایز ۲۰

 Const lngArraySize = 20

 Dim lngCounter As Long

 نیازمند این است که دیتا تایپ Variant باشد برای استفاده در لوپ ForEach

 Dim varAState As Variant 

 Dim strState(lngArraySize) As String

 Dim db As Database

 Set db = CurrentDb

 lngCounter = 0

 Dim rst As Recordset

متغیری که به Object یا شئ ای اشاره می کند ( بعنوان نشانگر ) را با Set  اظهار می کنند ... در کد زیر رکوردستی در حافظه موقت ایجاد شده و  درون آن داده های ستونِ [State/Province]  از جدول مشتریان ( بدون تکرار ) قرار می گیرد با شرط پر بودن این فیلد یعنی بدون Null ها .

 Set rst = db.OpenRecordset("SELECT DISTINCT [State/Province] " & _

 " FROM Customers WHERE [State/Province] IS NOT NULL", _

 dbOpenDynaset)

در کد زیر لوپی زده شده در رکوردست ( مجموعه داده )

 Do While Not rst.EOF

در اینجا بعلت جلوگیری از خطا (  بعلت اینکه تعداد داده های فیلد از سایز یا اندازه ۲۰ [تعداد ردیف ها ] بیشتر است یا ممکن است کمتر باشد )  از یک شرط استفاده شده.

 If lngCounter > lngArraySize Then

 'this would cause a problem

 Stop

 End If

در اینجا و با توجه به لوپ آرایه با داده های فیلد پر می شوند.

 strState(lngCounter) = rst![State/Province]

یک شمارشگر قرار داده تا در شرط بالا یعنی if بکار برده شود.... از DOEVENTS می توانید در اول کدها استفاده کنید تا اگر کدها را اشتباه نوشتید ( مثلا لوپ درجا بزند و پایانی نداشته باشد ) سیستم هنگ نکند

 lngCounter = lngCounter + 1

این خط ( MoveNext ) برای انتقال به رکورد بعد ( ردیف ) در رکوردست لازم است وگرنه همان داده اولین ردیف را پر می کند.

 rst.MoveNext

 Loop

در کد زیر لوپی میزند در آرایه strState و مقادیر را در صفحه immediate window نمایش میدهد ( Debug.Print ) که می توانید در صفحه ویژوال آنرا مشاهده کنید.

 For Each varAState In strState

 If varAState <> "" Then

چاپ در Debug که با Ctrl+G می توانید به صفحه مورد نظر ببرید.

 Debug.Print varAState

 End If

 Next

 Debug.Print "Lower bound : " & LBound(strState)

 Debug.Print "Upper Bound : " & UBound(strState)

حتما بعد از استفاده رکوردست را باید ببندید تا در حافظه جایی که اشغال کرده را آزاد کند.

 rst.Close

 Set rst = Nothing

 db.Close

 Set db = Nothing

End Sub



تمام آرایه ها در اکسس پایه صفر دارند یعنی از صفر شروع می شوند.

Dim Arr(2) As Variant

Arr(0)="A"

Arr(1)="123"

Arr(2)="01/08/1999"

?Arr(1)

123


امکانپذیراست ، آرایه ای داشته باشیدکه بتوان انداره و تعداد ابعادش را با استفاده از عبارت Redim تغییر داد.

Dim strState() As String

 lngArraySize = 8

 ReDim strState(lngArraySize)

این آرایه ها همچنین می توانند داده های موجود را هنگام تغییر اندازه با استفاده از کلمه کلیدی Preserve حفظ کنند.



عبارت Redim Preserve یک آرایه جدید ایجاد میکند و اجزاء آرایه قدیمی داخل آرایه جدید کپی می شوند... لذا فقط بعد یا اندازه تغییر کرده و منجر به از دست رفتن داده ها نخواهد شد .


For lcount = 0 To 5000000
        ReDim Preserve myText(lcount)
        myText(lcount) = lcount
    Next lcount


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


در وهله اول به متغیر آرایه ای strState یک بعد میدهیم فرضا ۵۰ 

Do While Not rst.EOF

 strState(lngCounter) = rst![State/Province]

 lngCounter = lngCounter + 1

 rst.MoveNext

 Loop
















 

















محاسبه سن تقریبی فرد



تاریخ تولد : ۱۳۸۰/۰۷/۰۹

تاریخ روز  : ۱۴۰۱/۱۰/۲۴



(1401-1)-1380=20

((365.256×30.259)+(9×30.25+24)=471

چون 471 از 365.25 بزرگتر است پس یکسال به عدد 20 اضافه شده و سال سن فرد مذکور 21 خواهدشد.

((365.256×30.259)+(9×30.25+24)365.25)÷30.25=3


((365.256×30.259)+(9×30.25+24)365.25)(3×30.25)=15

سن فرد طبق محاسبه بالا 21 سال و 3 ماه و 15 روز است.



تاریخ تولد : ۱۳۸۰/۱۲/۲۹

تاریخ روز  : ۱۴۰۱/۱۰/۲۵


(1401-1)-1380=20

(9×30.25+25+1)=298.25<365.25

(9×30.25+25+1)÷30.25=

(9×30.25+25+1)(9×30.25)=26 


در بالا چون عدد 298.25 از 365.25 کوچکتر است پس سال سن فرد همان 20 شده و ماه و روز نیز به ترتیب 9 و 26 خواهد شد.

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

تاریخ تولد : ۱۳۵۷/۰۶/۲۰

تاریخ روز  : ۱۴۰۱/۱۰/۲۵


(365.25(5×30.25+20)+9×30.25+25)÷365.25=126
چون  عددی بالاتر از ۳۶۵.۲۵ در جمع تعداد روزهای ۵۷ و ۱۴۰۱ بدست آمده لذا یکسال به ۱۳۵۷-۱-۱۴۰۱ اضافه می کنیم که سال سن می شود ۴۴ سال
126÷30.25=4.165~4
126-4×30.25=5

در نتیجه طبق محاسبات ما سن فرد مذکور می شود ۴۴ سال و ۴ ماه و ۵ روز




لطفا لایک و نظر دهی فراموش نشود 


۲۴ دیماه ۱۴۰۱ :
در حالیکه آرامش در سراسر کشور حاکم بوده و رسانه‌های ضدانقلاب و ضدایران از محتوا تهی شده‌اند، جریان عبدالحمید اسماعیل زهی تلاش دارد تا مسجد زاهدان را به عنوان مقر اصلی فتنه، شورش و ناامنی زنده نگه داشته و هر بار با تحریک جوانان و حرکت در پازل دشمنان مردم ایران نقش مخرب خود را ادامه دهد.

















شئ Stream در ADO




Save and restore data in files with the SaveToFileand LoadFromFile methods.


Stream.LoadFromFile FileName

Stream.SaveToFile FileName,SaveOptions


داکیومنت دو مورد بالا با نوشتاری آنها و آرگومانشان ارائه شده که قبلش حتما باید Stream را فراخوانی کنید بعد از متد Open استفاده کنید.


در لینک زیر متدها و ویژگیها را می توانید ببینید

learn.microsoft.com



ویژگی Type فقط زمانی خواندنی / نوشتنی می شود که موقعیت فعلی در ابتدای Stream باشد (     Position = پوزیشن 0   ) و در هر موقعیت دیگری فقط خواندنی است.این ویژگی تعیین می کند که کدام متدها باید برای خواندن و نوشتن Stream استفاده شوند.برای Stream های متنی از ReadText و WriteText استفاده نُمائید . برای باینری ها از  Read و Write استفاده کنید.


String = Stream.ReadText ( NumChars)

Stream.WriteText Data, Options



Set oStream = CreateObject("ADODB.Stream")
oStream.Open
oStream.Type = 1 'binary type



یک جریان متن یا Text Stream از یک یا چند خط متن تشکیل شده است که می توان آنها را روی یک صفحه نمایش متن محورنوشت تا بتوان آنها را خواند.وقتی آن از یک جریان متنی می خواند، برنامه یک خط جدید در انتهای هر خط 


شئ TextStream برای دسترسی به محتوای فایل های متنی استفاده می شود.("!f.WriteLine("Hello World برای ساختن نمونه ای از شئ TextStream می توان از CreateTextFile یا OpenTextFile متدهای شئ FileSystemObject یا از متد شئ File یعنی OpenAsTextStream استفاده کرد.




مرجع برای استاندارد برنامه نویسی در اکسس البته موارد بالا جزء آموزش اکسس نیست ،  کتابش گرونه ولی مفید

ACCESS  2019 PROGRAMMING : 


  • Teaches you how to programmatically create and access database tables and fields.
  • Shows you how to insert, update, and delete data via programming code using various data access techniques.
  • Gets you proficient creating and running simple and parameterized queries against your Access databases.
  • Gets you comfortable using external data sources with Access (Excel, Word, flat files, XML, and SQL Server).
  • Teaches you how to take control of your forms and reports by writing programming code known as event procedures.
  • Shows you how to use various types of macros and templates.







دیماه ۱۴۰۱ ... اتفاق نادر در مهر آباد :

این فرد گفت: پس از دو ساعت معطلی در داخل هواپیما و گلایه از بابت تأخیر پیش آمده مهمانداران اعلام کردند که به گفته خلبان وزن هواپیما سنگین‌تر از حد مجاز است.

وی ادامه داد: مهمانداران مدعی شدند وزن هواپیما ۱۵۰ کیلوگرم بیشتر از وزنی است که پرواز بتواند در ایمنی کامل و در شرایط آب و هوایی خرم آباد بر زمین بنشیند.


معتمدآریا


قطار یخ زده مشهد ( زائرین امام هشتم و معصومه ) دیماه ۱۴۰۱

این مسافر قطار قم ـ مشهد عنوان کرد: خدمت رسانی، پاسخگویی بسیار ضعیف است حتی به مسافران آب، چای و یا نانی در این ساعات داده نشده است و ما با توجه به اینکه به اردو میرفتیم مواد غذایی که برای اردو تهیه کرده بودیم را بین مردم توزیع کردیم و پس از این اقدام ما تازه خدمه قطار کیک و آبمیوه بین مردم توزیع کردند.



خبرآنلاین: سید علی خان محمدی سخنگوی ستاد امر به معروف و نهی از منکر از امضای تفاهم نامه ای بین این ستاد و قوه قضاییه و بسیج خبرداده تا در هر محله «مساجد» محور اقدامات در حوزه «آسیب‌های اجتماعی» قرار گیرند.


بازدید بانوان شهر تهران به مدت سه روز در روزهای شنبه، یکشنبه و دوشنبه هفته آینده (۲۴ الی ۲۶ دی ماه ۱۴۰۱ ) از ساعت ۹ الی ۱۵ از مجموعه میلاد بازدید کنند.

بانوان علاقه مندان می‌توانند برای بازدید از برج میلاد، در سامانه miladticket.com ثبت نام کرده و روز و ساعت بازدید خود را رزرو کنند.




شرکت بیمه پاسارگاد از سال ۱۳۹۳ تا کنون نسبت به اعطای پوشش هزینه های بیمارستانی (بستری و جراحی) به بیمه شدگان بیمه نامه های عمر و تأمین آتیه اقدام نموده است. چنانچه ذخیره ریاضی (ارزش بازخرید) بیمه نامه به حدنصاب ۲۰,۰۰۰,۰۰۰ ریال رسیده باشد و از تاریخ شروع یا تاریخ تغییرات مالی در بیمه نامه مدت شش ماه سپری شده باشد، این پوشش فعال می شود. سقف پوشش هزینه های بیمارستانی (درمان تکمیلی) در حال حاضر ۳۰۰,۰۰۰,۰۰۰ ریال است.

































کپی فایل با استفاده از توابع API


در ویندوز ۳۲ بیت : 

Public Declare Function CopyFileA Lib "kernel32" (ByVal AExistingFileName As String,ByVal ANewFileName As String,ByVal AFailIfExists As Boolean) As Boolean


کپی فایل متنی test از درایو C و پوشه Source در همان درایو ولی پوشه CopyLoc


CopyFileA "C:\Source\test.txt", "C:\CopyLoc\test.txt", 0



BOOL CopyFileW(

  [in] LPCWSTR lpExistingFileName,

  [in] LPCWSTR lpNewFileName,

  [in] BOOL    bFailIfExists

);


تابع بالا کاملا مشخصه که دیتا تایپ دو تا آرگومان اولی از نوع Long و آخری Boolean است ( False یا True ) ... اولی فایل موجود دومی فایل جدید و سومی خطا بدهد در صورت موجود بودن در مسیر کپی یا خیر ... جواب تابع هم بصورت Boolean است ( اگر خطا دهد صفر و اگر کپی انجام شود غیر صفر است ) و در فایل هایی که نام آن بصورت Unicode است نه Ascii استفاده میشود.


برای کار دو تابع در ویندوز ۶۴ بیتی قبل فانکشن کلمه PtrSafe را بگذارید  و در CopyFileW غیر از کلمه ذکر شده دیتاتایپ های Long به LongPtr تغییر یابد.


نکته : توابع API به حروف کوچک و بزرگ حساسند لذا از نظر نوشتاری همان را استفاده کنید که گفته شده فرضا  چنانچه تابع CopyFileA را با نوشتاری copyfileA اظهار کنید ، یا خطا میدهد یا عمل نمیکند !!!


تا می تونید زایمان کنید دولت حمایت میکنه :۲۲ دیماه ۱۴۰۱ 

مدیرکل رفاه، تعاون و خدمات اجتماعی شهرداری تهران از ارائه خدمات ویژه به مادران شاغل در شهرداری تهران خبر داد و گفت: به مادران دو قلوهای دو روز دورکار، ماهانه ۲ میلیون و چهارصد هزارتومان کمک هزینه نگهداری از کودک پرداخت می‌شود.... البته مادران عزیز بفکر پوکی شدید استخوان در ۶۰ سالگی هم باشید !!! هزینه ترم دانشگاه هم الان نزدیک به ۲ میلیون تومن هست الان البته به خیلی چیزها فکر کنید..... 


دهه ۷۰ تا ۹۰ شعار ایران ما ...فرزند کمتر زندگی بهتر حتی تامین اجتماعی هم برای فرزند ۵ ببعدجریمه صدور دفترچه می گرفت !!!


طبق اعلام نماینده دادستان دادگاه بر اساس کیفرخواست صادره، مستندات پرونده بدست آمده از فعالیت متهم ( کتایون ریاحی ) در شبکه‌های اجتماعی، اتهامات او شامل اجتماع و تبانی علیه امنیت ملی، تشویش اذهان عمومی و تشویق به فساد بود که از نظر دادگاه و در راستای ماده ۳۴۱ این ماهیت را ترغیب و تشویق مردم به اعمال منافی عفت در فضای مجازی در نظر گرفته شد..... البته در جریان رسیدگی ایشون غش کردند و با اورژانس دلالت شده و ختم جلسه اعلام شد 





























روش OpenAsTextStream برای باز کردن فایل Text بعلاوه نوشتن و خواندن در آن


به اسناد Office مراجعه کنید.


مثل  روش OpenTextFile از FileSystemObject است بعلاوه روش OpenAsTextStream می تواند برای نوشتن یک فایل نیز استفاده شود.


object.OpenAsTextStream ([ iomode, [ format ]])


imode حالت ورودی و خروجی که عدد 1 برای خواندن 2  نوشتن و 8  اضافه کردن ، format هم باز کردن فایل طبق پیش فرض سیستم یا باز کردن  در حالت Unicode یا Ascii است  اعداد 2-  ، 1 و 0


یا : 

object.OpenTextFile (filename, [ iomode, [ create, [ format ]]])

Set fso=CreateObject("Scripting.FileSystemObject")

Set sFile=fso.OpenTextFile(FileName,ForReadimg,False)

Do While sFile.AtEndOfStream<>True

.

.

Wend

sFile.Colse ' Needs



.CreateObject("Scripting.FileSystemObject")

.CreateTextFile

.GetFile


شئ TextStream برای دسترسی به محتویات فایل های متنی استفاده می شود. از متدهاش می توان به Close ، Read ، ReadAll ، ReadLine و WriteLine اشاره کرد. همچنین دارای خصوصیات یا ویژگیهایی مثل AtEndOfLine و AtEndOfStream است.


Search String :

FileSystemObject ( fso variable )

fso.OpenTextFile

TextStream ( ts variable )

String=ts.ReadAll ' ( Properties )

Str=Instr(1,String,SearchString)



'OpenTextFile ... Using TextStream

With strTextFile

Do Until .AtEndOfStream

Debug.Print .Line & "..." & .ReadLine

Loop

.Close

End With
































شئ DataObject .... کپی متن یا عدد صحیح به کلیپبورد



methods-microsoft-forms



Tools -> References -> Microsoft Forms 2.0 Object Library


DataObject مثل Clipboard عمل می کند . اگر رشته متنی را کپی کنید ، آن رشته را ذخیره می نماید ( حافظه موقت ) . اگر رشته دوم از همان شکل  را اضافه کنید ، جایگزین می شود.


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



MSFORMS.DataObject 

objectSetText(StoreData [, format ] )


آرگومان دوم انتخابیست که خالی هم رها شود  پیش فرض یک یا Text در نظر گرفته می شود ،انتخاب عددی  غیر از یک  در آرگومان انتخابی یعنی دیتا یا integer است یا Text.



DataObject داده را طبق فرمت یا شکلش ذخیره می کند پس اگر شما همان متن با همان فرمت را بخواهید ذخیره کنید روی همان rewrite می نُماید ولی اگر فرمت یا شکل دیگری داشته باشد بعنوان جدید در نظر خواهد گرفت 



داده را از یک DataObject به Clipboard کپی می نماید.

objectPutInClipboard

1-کپی داده از Clipboard به یک DataObject

String = objectGetFromClipboard( )

2-بازیابی  رشته متنی از DataObject

String = objectGetText( [ format ] )


از توابع API هم می توان استفاده کرد که با کمی جستجو در اینترنت کد ها موجود است 















متد RunCommand و کپی رکورد در رکورد جدید


این مِتُد یک دستور داخلی را اجرا می کند


دستور انتخاب رکورد acCmdSelectRecord تمام فیلدها نه فیلد خاصی !!!

دستور کُپی acCmdCopy

دستور acCmdPasteAppend تمام فیلدهای یک رکورد نه فیلدهای انتخابی شما !!!


لیست سایر دستورها access.accommand


چنانچه به رکورد جدید رفت و کپی محتوای داخل فیلدها روی رکورد جدید در فرم سینگل انجام شد و بعد شما قبل ویرایش جای دیگری از فرم فوکس کردید و ارور داد که تغییرات قابل ذخیره نیست احتمالا در جدول کلیدی تعبیه کردید که متن یا محتوای فیلدی یکتاست و نمی تواند دو یا چند رکورد ، همان محتوا را داشته باشد پس تعجب نکنید با Esc می توانید Undo انجام دهید یا فیلدی که بصورت کلید است را ویرایش کنید که بعد از رفتن به رکورد بعدی یا کلیک کردن در سابفرم آن رکورد ذخیره شود و اروری دریافت نکنید ... برای ذخیره نکردن رکورد تکراری حتما فیلد Primary key داشته باشید ....Foreign key منظور کلیدی در جدول دیگر نه در جدول موجود.




























.

Select کوئری در اکسس


نوداقتصادی، هشدار احمد توکلی، عضو مجمع تشخیص مصلحت نظام در گفت و گویی تصویری پیرامون خطر شورش احتمالی «فقرا» را منتشر کرد.




خروجی  فیلد یا ستون از جداول و ارتباط آنها ، می توانید به آدرس  سایت مذکور مراجعه و فیلدهای جداول آنرا را ملاحظه نمائید








فرد مذکور بعدها در اعتصابات سال ۱۴۰۱ به جرم برهم زدن امنیت ملی و قتل اعدام شد.




دیماه ۱۴۰۱

محمد فاضلی جامعه‌شناس و استاد دانشگاه در گفتگویی بیان کرد احتمال دارد ایران به زودی از نقشه جهان حذف شود. این حذف شدن بدین معناست که بود و نبود ایران در تصمیمات و اقتصاد جهان مهم نیست.







به گزارش وقت صبح به نقل از ایسنا؛ کریستیانو رونالدو ستاره پرتغالی در هتل ۹۹ طبقه‌ای ریاض به نام FourSeasons زندگی خواهد کرد. هزینه اقامت برای مهاجم پرتغالی بیش از ۲۵۰ هزار یورو در ماه خواهد بود.

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

علاوه بر این، در ۱۷ اتاق رزرو شده توسط رونالدو، قرار است خانواده، دوستان، نیروهای حفاظت از رونالدو و نزدیکان این فوتبالیست سرشناس اقامت داشته باشند. یک دفتر خصوصی، یک اتاق غذاخوری و یک اتاق رسانه‌ای هم در این بین قرار دارد که از امکانات اختصاصی این هتل برای رونالدو است.


لئونور دختر پادشاه اسپانیا بدون اطلاع خانواده‌اش از خانه خارج شده تا با گاوی ستاره باشگاه بارسلونا قرار بگذارد.





در مورد کاریکاتور آ.خامنه ای هفته نامه شارلی ابدو : 

امیرعبداللهیان نوشته که کشورش پیشتر این نشریه را در فهرست تحریم‌ها قرار داده است.

او در حالی این نشریه‌ را تهدید کرده است که در سال 2015 مورد حمله اسلام‌گرایان تندرو قرار گرفت و 12 عضو تحریریه این مجله کشته شدند.


در تاریخ ۷ ژانویهٔ ۲۰۱۵ حمله‌ای مسلحانه و مرگ‌بار به دفتر مجله رخ داد. مقام‌های قضایی فرانسه اعلام کردند این حمله دست‌کم ۱۲ کشته و حدود ۱۰ زخمی بر جای گذاشت. به‌گزارش خبرگزاری فرانسه دو نفر از کشته‌شدگان مأموران پلیس بوده و چهار نفر از کاریکاتوریست‌های مطرح فرانسوی از جمله سردبیر هفته‌نامه نیز در میان قربانیان بودند. دو مرد با نقاب‌های سیاه و کلاشنیکف به دفتر مجله در پاریس حمله کرده و به افراد تیراندازی کرده، سپس از محل گریخته و ضمن فرار هم به تیراندازی ادامه دادند. ویدئوهای آماتوری از این حمله گرفته و در اینترنت منتشر شد. پلیس اعلام کرد مهاجمان، جلسهٔ شورای سردبیری شارلی ابدو را هدف قرار دادند و هنگام خروج فریاد می‌زدند: «الله اکبر». آن‌ها گفتند «انتقام پیامبر» را گرفته‌اند


سعید کواشی به همراه برادرش شریف کواشی در تاریخ هفتم ژانویه ۲۰۱۵ در دفتر نشریه طنز شارلی ابدو دست به تیراندازی و کشتن دوازده نفر نموده و سپس متواری شدند.


آتاگول



فرارو- برخی رسانه‌های داخلی از ممنوع الخروج شدن علی ضیا مجری تلویزیون خبر دادند.

علی ضیا در صفحه اینستاگرامش نوشت:

«سلام دوستان عزیزم

شرمنده اگه بعضی هاتون نگران شدید

چیز خاصی هم نبوده تصمیم گرفتند که من نتونم از کشور خارج بشم البته برای خیلی از هنرمندان هم اتفاق افتاده وطن برای همه خونمونه، ولی خونه رو هم اگه درش رو رومون قفل کنید حس عجیبی پیدا می‌کنید

به امید روزا خوب برای ایران»




رئیس جمهور سودان





شمارش تعداد رکوردها ( ردیف ها ) ی یک جدول یا کوئری توسط زبان SQL



نام جدول : Customers

فرض کنیم شامل 91 ردیف باشد.


Select Count(*) From Customers 
















نمایش فهرست کمبو باکس ( لیست باکس کمبو ) بصورت خودکار



در رویداد یا Events کنترل کمبو باکس ( GotFocus ) از روش DropDown استفاده شده بمحض گرفتن فوکس توسط این کنترل لیست کشوئی کمبو باز خواهد شد.



Private Sub cboBookCategory_GotFocus()
'When the combo box receives focus
'display in drop down position
Me.cboBookCategory.Dropdown
End Sub


combobox.dropdown