الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تحويل عبارة Sql الى Vba برمجيا بكبسة زر

بدأه Mishkat ibrahim في 26 مايو 2008 · 12 رد · 3,767 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته ،،

الموضع كما هو موضح اعلاه هو مثال على كيفية تحويل SQL الناتج من الاستعلام الى كود نستخدمه في الوحدات النمطية مباشرة.. (يعني .. من الفرن الى مائدتك..)

أنا شخصيا كان عندي عقدة من SQL وكيف تكتب الخ.. ويوجد في المنتدى الكثير من المواضيع التي تشرح الموضوع لدرجة التشبع..وهذه صورة تعبر عن نفسها..

post-156430-1211813774_thumb.gif

الصورة الأولى وهي توضح كيفية الوصول الى SQL في الاستعلام ووضع الشروط

post-156430-1211814006_thumb.png

ولكن في كثير من الاحيان تحتاج الى كتابة sql بشكل سريع مباشرة من تعريف الاستعلام (خاصة لغير الخبراء ) و نسخها في الوحدة النمطية فتواجهك مشكلة الاقواس والهلالين("")..وعدم قبول VBA لها.

كما هو موضح بالصورة :

post-156430-1211813838_thumb.png

ومن باب الفائدة للأخوة الأعضاء المحترمين ..

وجدت الحل في احد المواقع الأجنبية وسنقوم بطبيقها كما هي فقط قمت باضافة مسج بوكس عند الانتهاء من عملية التحويل وذلك لزوم الشغل..

سنقوم بالخطوات التالية :-

1- انشئ نموذج جديد وليكن اسمه في مثالنا هذا frm أو أي اسم تريد..

2- اضف عنصر تحكم علامة جدولة ..

post-156430-1211814728_thumb.png

3- اضافة مربع نص داخل الصفحة 1 وليكن اسم عنصر التحكم txtSql

4- اضافة مربع نص داخل الصفحة 2 وليكن اسم عنصر التحكم txtVBA

كما هو موضح بالصورة :

post-156430-1211815114_thumb.png

5- انشاء زر أمر وليكن اسمه cmdSql2Vba

6- وضع هذا الكود في اجراء حدث عند النقر ..

Dim strSql As String
Const strcLineEnd = " "" & vbCrLf & _" & vbCrLf & """"

	If IsNull(Me.txtSql) Then
		Beep
	Else
		strSql = Me.txtSql
		strSql = Replace(strSql, """", """""")  'Double up any quotes.
		strSql = Replace(strSql, vbCrLf, strcLineEnd)
		strSql = "strSql = """ & strSql & """"
		Me.txtVBA = strSql
		Me.txtVBA.SetFocus
		RunCommand acCmdCopy
		MsgBox "تم التحويل بنجاح " & vbCrLf & "و نسخ الكود الجديد للذاكرة", vbInformation, "SQL --> VBA "

	End If
'حقوق الطبع لكافة اعضاء الفريق العربي مشكاة

الى هنا انتهت كافة الخطوات المطلوبة لانجاز المثال بقي ان تقوم بتجربة المثال وذلك بنسخ sql من الاستعلام وضعه في نص txtsql واضغط على الزر ...

ترجمة بعض الأكواد للفائدة:-

const= يستخدم لتعريف قيمه معينه ثابته بدون تغيير .. بامكانك الرجوع الى help في الاكسس لمزيد من المعلومات حول هذه الدالة

vbCrLf = وهو الكود الذي يفرض سطر جديد بعد نهاية اي جملة -- انظر الى المسج بوكس في الكود آخر السطر لتجد بعد التنفيذ ان الرسالة تأتي على شكل سطرين وليس واحد..هذه مهمتها !!

وشكرا ومرفق لكم المثال

أخوكم مشكاة

SqltoVBA.rar

#2

مشكور اخي مشكاة فعلاً عمل أكثر من رائع وفقك الله لكل خير جاري التجربة ..

(`'•.¸(` '•. ¸ * ¸.•'´)¸.•'´)

«´¨`.¸ أبو رهـــــــف ¸.´¨`»

(¸. •'´(¸.•'´ * `'•.¸)`'•.¸ )

¸.•’’ ’’

( `•.¸

`•.¸

#3

بارك الله فيك اخي مشكاة على هذا الموضوع الرائع والمجهود الكبير وجزاك الله الف خير

ايضاً يوجد موضوع بالمنتدى ذا صلة بالرابط ادناه لمشرفنا الغالي مصلح الحريصي جزاه الله خير

/index.ph...t=0&start=0

شكراً لك مرة اخرى اخي مشكاة وجعل الله ذلك في موازين حسناتك

#4

السلام عليكم

تسلم يا اخ مشكاة على البرنامج والطريقة البسيطة

صراحة انا استفدت من الشرح خاصة الامر vbCrLf ما كنت اعرفها ومجهود ممتاز يا اخ مشكاة وجعله الله في ميزان حسناتك

فعلا كانت عملية تحويل عبارة السيكيو ال معاناة واصبحت سهلة بمجهودك .

شكرا تستحقها

#5

بارك الله بك اخي Mishkat

معلومة قيمة

#6

الأخوة الكرام ،،

الأخ العزيز ابو رهف ..

الأخ والاستاذ يوسف احمد ..

الاخ صقور ..

والاخ حازم ..

ولكم مني كل التقدير .. على المشاركة

وأما بالنسبة للرابط يا أخ يوسف ..الخاص بالمشرف العزيز مصلح الحريصي .. فقد اطلعت عليه وهو مثال جميل جدا .. وهو عبارة عن برنامج محمي تم برمجته من قبل المشرف مصلح وهو يقوم فعلا بتحويل sql الى VBA بطريقة مختلفة عن مثالنا أعلاه وهي بالتأكيد تؤدي الغرض ..دة

عموما يقول المثل ( البحر يحب الزيادة ) وهذا المنتدى بحر ..

أخوكم مشكاة ;

#7

أخي مشكاة .. أنت فعلا مشكاة .. مثال رائع

وفقك الله ونفع بعلمك .. الله يجزاك عنا كل خير

#8

السلام عليكم

أخي العزيز اكسير ..

تستحق مني شكرا لأني تعلمت منك الكثير

وتغمرني سعادة كبيرة بدعائك الصادق

فلك مني كل التحية والتقدير

أخوك مشكاة

تم تعديل هذه المشاركة بواسطة Mishkat ibrahim في 31 مايو 2008 في 04:35

#9

بسم الله

الأخ الفاضل / مشكاة

عمل موفق باذن الله ..

بالتوفيق الدائم .. ونسأل الله لك القبول فى الدنيا و الأخرة

الأصيل

قال أبن القيم : أكثروا من الخير فينتشر .. و أقلوا من الشر فيندثر ..

#10

مشكور اخونا الكريم مشكاة...

ولزيادة الفائدة

هذا رابط اجنبي يتكلم عن نفس الموضوع

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

فضائح الرافضة ومخازيهم حين يكتب عنها أحد خصومهم فهذا شيء متوقع ،فإن كتب عنها أحدهم فهو شيء غير مألوف ، وإن كان الكاتب أحد مراجعهم وأخص خواصهم فهذا شيء متناهي الغرابة ، وإن علمت أن الكاتب قد قتل بعد نشر الكتاب فقد حان وقت قراءة الكتاب

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#11

فعلا تستحق الشكر والتقدير يا اخ Mishkat ibrahim

والله يجعلها في ميزان حسناتك

ريح من الزفرات تعصف في الحشى &&& و ورائها مطر من العبرات

ابو حسن

#12

الأخوة الاعضاء .. المحترمين ،،

لكم مني كل التحية والتقدير ،،

للتذكير هذا الموضوع كما ذكرنا بالمشاركة الآولى هو مثال اجنبي ..

اقتباس
وجدت الحل في احد المواقع الأجنبية وسنقوم بطبيقها كما هي فقط قمت باضافة مسج بوكس عند الانتهاء من عملية التحويل وذلك لزوم الشغل..

والسلام عليكم ورحمة الله،،

مشكاة

#13

جزاكم الله خيرا على ما تقدمونه من روائع وتحف جميله مفيده جعلها الله فى موازين حسناتكم

مواضيع مشابهة