PDA

View Full Version : سوال: اجرای یک کد در زمان باز شدن تیبل



IMANAZADI
شنبه 14 بهمن 1391, 22:09 عصر
سلام خدمت دوستان عزیز
یک سوال چطوری میتونم یک قطعه کد VB رو در اکسس وقتی تیبل باز میشه اجرا کنم
یعنی فایل اکسس نه فرم داره نه ریپورت فقط یک تیبل داره
میخوام وقتی تیبل باز شده به طور مثال قطعه کد

MSGBOX "HI"

نشون داده بشه
:لبخند:

Abbas Amiri
شنبه 14 بهمن 1391, 22:37 عصر
سلام
حداقل تا ورژن 2007 جداول کنترل رویداد ندارند . آنهم Open
باید باز کردن جداول رو در فرمها و از طریق دستورات VBA اجرا کنید و درآنجا کدهای مربوطه رو هم بنویسید"Docmd.OpenTable "TableName

hasanhzd
دوشنبه 16 بهمن 1391, 20:52 عصر
درود
میتونید یک ماکرو بنویسید فرض مسج بده یا جدول باز کنه یا هر کاردیگه ای
اسم ماکرورو باید بذارید
autoexec

Abbas Amiri
دوشنبه 16 بهمن 1391, 23:38 عصر
درود
میتونید یک ماکرو بنویسید فرض مسج بده یا جدول باز کنه یا هر کاردیگه ای
اسم ماکرورو باید بذارید
autoexec
با سلام وخسته نباشید به آقای حسن زاده

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

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

ahsaya
سه شنبه 17 بهمن 1391, 13:56 عصر
با سلام وخسته نباشید به آقای حسن زاده

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

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



با سلام و تشکر

به نکته بسیار مهم و بنیادی اشاره کردید .

بنده به عنوان کاربر مبتدی که توی این سایت دنبال مطالب می گردم بعضی اوقات به پاسخهایی برخورد می کنم که اصلا به جواب نمی رسم .

چقدر خوب بود که دوستانی که وقت می زارن و پاسخهای فنی می دن مخاطب هاشون رو واقعا مبتدی فرض کنن و در این حد به تاپیکها پاسخ بدن

hasanhzd
سه شنبه 17 بهمن 1391, 18:46 عصر
درود
حتما رعایت میکنم
مطالب ارایه شده قبلی
1-یعنی فایل اکسس نه فرم داره نه ریپورت فقط یک تیبل داره

2-حداقل تا ورژن 2007 جداول کنترل رویداد ندارند . آنهم Open

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

IMANAZADI
جمعه 20 بهمن 1391, 11:28 صبح
دوستان ممنون میشم که یک مثال بزنید تا بیشتر متوجه بشم
بعد مثال نشون دادن مسیج باکس نمونه بود شاید خواستم یک کد طولانی وی بی اجرا بشه

IMANAZADI
سه شنبه 24 بهمن 1391, 17:43 عصر
کسی نیست بد جوری گیر کردم

hasanhzd
سه شنبه 24 بهمن 1391, 18:29 عصر
کسی نیست بد جوری گیر کردم

درود
اگه کاری من گفتم بدردتون میخوره بیشتر بحث کنیم

IMANAZADI
سه شنبه 24 بهمن 1391, 18:40 عصر
دوست عزیز همین راه خودتون رو توضیح یدید ممنون میشم
با این میشه یک تابع وی بی رو هم اجرا کرد

IMANAZADI
جمعه 04 اسفند 1391, 12:42 عصر
کسی نیست این سوال مارو بعد از این مدت جواب بده

Abbas Amiri
جمعه 04 اسفند 1391, 15:24 عصر
سلام
فلسفه استفاده از اکسس استفاده آسانتر از اطلاعات خام جداول توسط فرمها و گزارشات و بیشتر به واسطه کوئریهاست . آنچه که درپست یک از استفاده از دیتابیس اکسس ، یعنی بدون فرم اعلام کرده اید . بهتره از اکسل استفاده کنید.
شما بایستی یک فرم ایجاد کرده ودرآن یک باتن جهت بازکردن جدول موردنظر قراردهید در رویداد کلیک آن تایپ کنید


Private Sub Command1_Click()
DoCmd.OpenTable "YourTableName"
'Type here vba codes
End Sub

IMANAZADI
جمعه 04 اسفند 1391, 20:12 عصر
دوست گرامی صورت مسئله رو حذف کردید که کلا
اینو که میدونستم از طریق فرم میشه چنین کاری رو کرد ، میخواستم از طریق خود جدول باشه
بعد اگه اینطور که میگید باشه ساخت SQL هم بیخود هست چون اونم فقط با جداول سروکار داری و فرم و ریپورتی در کار نیست
ولی اگه به عمق مسئله توجه کنید میبینید در اس کیو ال با کوئری ، پروسیجر و نمایه ها و... خیلی کار ها میشه کرد دقیقا مثل کدنویسی VB
در اکسس هم اگه در حالت دیزاین باشید یکسری توابع از قبیل AFTER UPDATE , DELETE RECORD , ... بالای صفحه مشاهده میکنید که مستقیما با خود جدول در ارتباط هستند

Abbas Amiri
جمعه 04 اسفند 1391, 20:50 عصر
دوست گرامی صورت مسئله رو حذف کردید که کلا
اینو که میدونستم از طریق فرم میشه چنین کاری رو کرد ، میخواستم از طریق خود جدول باشه
بعد اگه اینطور که میگید باشه ساخت SQL هم بیخود هست چون اونم فقط با جداول سروکار داری و فرم و ریپورتی در کار نیست
ولی اگه به عمق مسئله توجه کنید میبینید در اس کیو ال با کوئری ، پروسیجر و نمایه ها و... خیلی کار ها میشه کرد دقیقا مثل کدنویسی VB
در اکسس هم اگه در حالت دیزاین باشید یکسری توابع از قبیل AFTER UPDATE , DELETE RECORD , ... بالای صفحه مشاهده میکنید که مستقیما با خود جدول در ارتباط هستند

سلام
درمورد دستورات SQL درحالت Data Manipulation Language یا زبان دستکاری داده ها که شامل INSERT ,DELETE ,SELECT, UPDATE, ... میباشد در مد SELECT .... WHERE شما برای نمایش نتایج احتیاج به یک واسط دارید که این واسط جدول اصلی نمی تواند باشد ومسلما نام آن کوئری است . به قسمت سرچ Table هم تاآنجا که میدانم ازطریق VBA نمیتوان دسترسی پیداکرد.

varnuvarnu
یک شنبه 09 فروردین 1394, 18:50 عصر
با سلام خدمت دوستان من هم سوال مشابهی داشتم امیدوارم کسی جواب بده در یک جدول که دو کامبو باکس کاملا مشابه داره میخوام با انتخاب مقدار برای یکی دقیقا برای دومی هم همون مقدار انتخاب بشه (اطلاعات دو کامبوباکس کاملا مشابه میباشد)، ضمنا از ماکرو afterupdate خود جدول هم استفاده کردم اما نتونستم لطفا راهنمایی بفرمایید ....!

javadrajabihakami
جمعه 12 شهریور 1395, 23:56 عصر
بله برادر ، منم گير همچنين گرفتاري هايي هستم ! اما جوابي تا حالا نگرفتم....
با تشكر عجايب الاماراتيه

mazoolagh
شنبه 13 شهریور 1395, 09:06 صبح
پاسخ همونی هست که چهار سال پیش آقای امیری دادن:

می نشود!

خودتون رو هم خسته نکنین!