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

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

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

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

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

شئ OpenAsTextStream برای خواندن فایل متنی



باز کردن فایل مشخص شده و بازگشت یک شئ TextStream که می تواند برای خواندن از فایل ، نوشتن روی فایل یا اضافه کردن به فایل استفاده شود.


نوشتاری : 

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

The OpenAsTextStream method syntax has these parts:


Object : بردن نام شئ ضروریست . همیشه نام شئ File

iomode : اختیاریست . حالت Input / Output را مشخص میکند و می تواند یکی از ۳ ثابت ForReading ، ForWriting و ForAppending باشد.

format : اختیاری ، برای نشان دادن فرمت فایل بازشده استفاده می شود. اگر خالی رها شود ، فایل در حالت ASCII باز میشود ... مثلا برای باز کردن به حالت پیش فرض عدد ثابت ۲- 





ConstantValueDescription
ForReading1Open a file for reading only. You can't write to this file.
ForWriting2Open a file for writing. If a file with the same name exists, its previous contents are overwritten.
ForAppending8Open a file and write to the end of the file.
ConstantValueDescription
TristateUseDefault-2Opens the file by using the system default.
TristateTrue-1Opens the file as Unicode.
TristateFalse0Opens the file as ASCII.

توضیحات : 

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


 
ReadReads a specified number of characters from a TextStream file and returns the result.
ReadAllReads an entire TextStream file and returns the result.
ReadLineReads one line from a TextStream file and returns the result.
SkipSkips a specified number of characters when reading a TextStream file.



For large files, using the ReadAll method wastes memory resources. Other techniques should be used to input a file, such as reading a file line-by-line.



' const ForReading=1

Set fso =CreateObject("Scripting.FileSystemObject")
Set fileObject =fs.GetFile("test1.txt")
Set  myfile=fileObject.OpenAsTextStream(ForReading, TristateUseDefault)
Magbox myfile.ReadAll
myfile.Close






strFile_Path = "Your file Path"
Open strFile_Path For Append As #1
Write #1, “You can write your required text here”
Close # 1












نقشه کد گذاری کاراکترها در سیستم ایران


نقشه کد گذاری





0x90	0x200C 0x0627	# ARABIC LETTER ALEF, isolated form
0x91	0x200D 0x0627	# ARABIC LETTER ALEF, final form
0x92	0x0628 0x200C	# ARABIC LETTER BEH, final-isolated form
0x93	0x0628 0x200D	# ARABIC LETTER BEH, initial-medial form
0x94	0x067E 0x200C	# ARABIC LETTER PEH, final-isolated form
0x95	0x067E 0x200D	# ARABIC LETTER PEH, initial-medial form
0x96	0x062A 0x200C	# ARABIC LETTER TEH, final-isolated form
0x97	0x062A 0x200D	# ARABIC LETTER TEH, initial-medial form
0x98	0x062B 0x200C	# ARABIC LETTER THEH, final-isolated form
0x99	0x062B 0x200D	# ARABIC LETTER THEH, initial-medial form
0x9A	0x062C 0x200C	# ARABIC LETTER JEEM, final-isolated form
0x9B	0x062C 0x200D	# ARABIC LETTER JEEM, initial-medial form
0xF0	0x06AF+<ZWJ>	# ARABIC LETTER GAF, initial-medial form
0xF1	0x0644+<ZWNJ>	# ARABIC LETTER LAM, final-isolated form
0xF2	0x0644+0x0627	# ARABIC LIGATURE LAM WITH ALEF
0xF3	0x0644+<ZWJ>	# ARABIC LETTER LAM, initial-medial form
0xF4	0x0645+<ZWNJ>	# ARABIC LETTER MEEM, final-isolated form
0xF5	0x0645+<ZWJ>	# ARABIC LETTER MEEM, initial-medial form
0xF6	0x0646+<ZWNJ>	# ARABIC LETTER NOON, final-isolated form
0xF7	0x0646+<ZWJ>	# ARABIC LETTER NOON, initial-medial form
0xF8	0x0648	# ARABIC LETTER WAW
0xF9	0x0647+<ZWNJ>	# ARABIC LETTER HEH, final-isolated form
0xFA	<ZWJ>+0x0647+<ZWJ>	# ARABIC LETTER HEH, medial form
0xFB	<ZWNJ>+0x0647+<ZWJ>	# ARABIC LETTER HEH, initial form
0xFC	<ZWJ>+0x06CC+<ZWNJ>	# ARABIC LETTER FARSI YEH, final form
0xFD	<ZWNJ>+0x06CC+<ZWNJ>	# ARABIC LETTER FARSI YEH, isolated form
0xFE	0x06CC+<ZWJ>	# ARABIC LETTER FARSI YEH, initial-medial form






Hex : 630

Decimal :

6×16^(2)+3×16^(1)+0×16^(0)=1584


1584/16  16  99 0

99/16           6     3

6/16              0

0 6 3 0


1740/16  108  12(reminder)

108/16       6        12(reminder)

6/16             0          0

0 6 12 12 = 0 6 C C


Decimal 9 Hex9

Decimal 10 Hex A

Decimal 11 Hex B

Decimal 12 Hex C

Decimal 13 Hex D

Decimal 14 Hex E

Decimal 15 Hex F




1605 / 16 100 5 (reminder)

100 / 16        6    4 (reminder)

6 / 16               0


Hex : 0 6 4 5



                                                                              

U+0641فd9 81&#1601;فARABIC LETTER FEH
U+0642قd9 82&#1602;قARABIC LETTER QAF
U+0643کd9 83&#1603;کARABIC LETTER KAF
U+0644لd9 84&#1604;لARABIC LETTER LAM
U+0645مd9 85&#1605;مARABIC LETTER MEEM
U+0646نd9 86&#1606;نARABIC LETTER NOON
U+0647هd9 87&#1607;هARABIC LETTER HEH
U+0648وd9 88&#1608;وARABIC LETTER WAW
U+0649ىd9 89&#1609;ىARABIC LETTER ALEF MAKSURA
U+064Aیd9 8a&#1610;یARABIC LETTER YEH









?Hex(&H & 1740)





read a binary file






Sub Temp()
Dim intFileNum%, bytTemp As Byte, intCellRow%
intFileNum = FreeFile
intCellRow = 0
Open "C:\temp.bin" For Binary Access Read As intFileNum
Do While Not EOF(intFileNum)
intCellRow = intCellRow + 1
Get intFileNum, , bytTemp
Cells(intCellRow, 1) = bytTemp
Loop
Close intFileNum
End Sub








کپی داده های جدول به جدول دیگر با فیلدها و دیتا تایپ های یکسان با Insert Into






در تصویر زیر کاملاً مشهود است ( تمام داده ها در جدول t1  محتوی ۱۴ رکورد را Delete کردیم و مجدداً تک  رکورد اضافه نُمودیم ) ، جدول t1 تنها شامل یک رکورد با ID=101 است در عبارت SQL با دستور INSERT INTO تمام محتویات داخل جدول t که شامل ۱۴ رکورد است به جدول t1 کپی شده ... Primary key باعث شده که ID تکرای نگیرد البته خطا تولید می کند














Create Table t (ID int not null,Grade varchar(5),Gen varchar(6),Primary key(ID))










امکانات و مزایای باورنکردنی دانشگاه صداوسیما مهر ۱۴۰۳



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

وی گفت: در تمام رشته ها به جز رشته کاردانی فنی الکترونیک که از داوطلبان مرد دانشجو می گیرد، هم از داوطلبان خانم و آقا دانشجو می پذیرد. در رشته کاردانی فنی الکترونیک اتفاقی که امسال نخستین بار افتاد این است که دانشگاه براساس سوابق تحصیلی هم دانشجو می‌پذیرد داوطلبانی که دیپلم دارند منتهی در کنکور شرکت نکردند این امکان وجود دارد از ۱۴ شهریور تا ۱۸ شهریور ثبت نام کنند در سایت سنجش و براساس سوابق تحصیلی مثل کاردانی فنی الکترونیک دانشگاه صداوسیما را انتخاب کنند.






فیلتر در اکسس با استفاده از Select Query



قبل از کار با زبان SQL مخصوص اکسس و استفاده از Select Query برای فیلتر یک ستون و بیشتر طبق شرط ها باید با عملگرهای منطقی آشنا شوید تا به نوشتن سِلِکت کوئری و استفاده صحیح از آنها مسلط شوید ( این نحوه از Sql نویسی برای فیلتر پیشرفته [ استفاده از کوئری و نه کدنویسی ویژوال ] در اکسس بارها با شکل و توضیح عملگرها مکرراً بیان شده است مثل تصویر زیر ).


در زیر جدولی با نام t و دو ستون ایجاد شده و هر بار طبق ورودی داده هایی را فهرست می کند.

شرح اشکال تصویر به ترتیب : 

- جدول دارای ۱۱ رکورد است.

- ID مساوی و بزرگتر از ۲۷ فیلترشده.

- ID بین ۲۷ و ۳۳ در جدول لیست شده.

- ID کوچکتر مساوی ۳۳ نمایش داده شده.

- طبق داده های ستون Educa فیلتر شده یعنی رکوردهایی که شامل A یا B است.

- رکوردهایی که ID آنها بزرگتر مساوی ۲۷ و داده فیلد Educa آنها شامل A یا B باشد نمایش داده شده.

- در شکل آخر نیز تمام رکوردهای جدول نمایش داده شده  یا بعبارتی از فیلتر خارج شده .


برای Sort کردن بصورت صعودی یا نزولی میتوان از Order By که Optional است در عبارت SQL استفاده نُمود . مثل Order By ID ASC

Asc : [ A-Z],[0-9]

Desc : [Z-A],[9-0]


SELECT fieldlist
FROM table
WHERE selectcriteria
[ORDER BY field1 [ASC | DESC ][, field2 [ASC | DESC ]][, ...]]]


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














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







فرق پراپرتی text و value در textbox : 


text : متحویات فعلی کنترل است ، این پراپرتی تا زمانیکه کنترل فوکِس دارد در جریان است و به محض فوکس کردن میشود value ،  امتحان کنید.

value : مقدار ذخیره شده کنترل تکست باکس است



برای بررسی Null بودن تکست باکس یا تکست باکس کمبوباکس کافیست از تابع IsNull استفاده کنید برای فیلتر یا خارج شدن از فیلتر استفااده میشود 


IsNull(text0)> Null > True

IsNull(text0) >Not Null >False


IsNull returns True if expression is Null; otherwise, IsNull returns False. If expression consists of more than one variable, Null in any constituent variable causes True to be returned for the entire expression.

مقدار Null نشاندهنده یک دیتا تایپ از نوع Variant ( داده شامل text یا number و ... باشد ) بدون داده معتبر است ، مشابه Empty ( خالی یا پوچ )  و نمایانگر رشته با طول صفر ( "") نیز نیست.


NULL = داده نامعتبر


The Null value indicates that the Variant contains no valid dataNull is not the same as Empty, which indicates that a variable has not yet been initialized. It is also not the same as a zero-length string (""), which is sometimes referred to as a null string.


Important:  Use the IsNull function to determine whether an expression contains a Null value. Expressions that you might expect to evaluate to True under some circumstances, such as If Var = Null and If Var <> Null, are always False. This is because any expression containing a Null is itself Null and, therefore, False.



نکته : هر عبارتی حاوی یا شامل داده نامعتبر به تنهایی NULL است و بنابراین FALSE 




بی انصافیه واقعاً با این همه توضیحات و رفرنس دوستان امتیاز خیلی کم به وبلاگ بدهند.





۴۹ دقیقه پیش · مجید عشقی، رئیس سازمان بورس و اوراق بهادار با ارسال نامه‌ای به طور رسمی از سمت خود استعفا داد. استعفای او سه روز پس از افشای وام‌های کم‌بهره



۲ روز پیش · مجید عشقی و اعضای هیئت مدیره سازمان بورس از منابع این سازمان وام‌های میلیاردی با سود چهار درصد برداشت کرده‌اند. به گزارش تجارت نیوز،






۱۵ شهریور ۱۴۰۳



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

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













تابع WNDPROC




یک تابع پاسخ به تماس، که در برنامه خود برای پردازش پیام های ارسال شده به یک پنجره تعریف می کنید . نوع WNDPROC یک Pointer یا اشاره گر برای این تابع برگشتی را تعریف می کند. نام WndProc یک جایبان ( جایگاه متنی )  برای نام تابعی است که در برنامه خود تعریف می کنید.



Private Function NewWindowProc(ByVal hwnd As Long, ByVal Msg _ As Long, ByVal wParam As Long, ByVal lParam As Long) As _ Long 

Dim bFormIsActivated As Boolean 

If Msg = WM_ACTIVATE Then 

bFormIsActivated = wParam 

If bFormIsActivated = True Then 

'\refresh text when form gaining focus 

'Call RotateTextNow 

End If 

Exit Function 

End If 

NewWindowProc = CallWindowProc(lOldWindowProc, hwnd, Msg, wParam, lParam) 

End Function





public const int WM_ACTIVATE = 6

System 64bit

Declare PtrSafe Function CallWindowProcA Lib (ByVal lpPrevWndFunc As LongPtr, ByVal hWnd As LongPtr, ByVal Msg As Long, ByVal wParam As LongPtr, ByVal lParam As LongPtr) As LongPtr



فرآیند پیش‌فرض پنجره را فراخوانی می‌کند تا پردازش پیش‌فرض را برای هر پیام پنجره‌ای که برنامه پردازش نمی‌کند، ارائه دهد. این تابع تضمین می کند که هر پیامی پردازش می شود. DefWindowProc با همان پارامترهای دریافت شده توسط رویه پنجره فراخوانی می شود.