• 0
محمد فؤاد تركي

كيف تستطيع ان تتعلم لغة Visual Basic For Application

سؤال

الاخوة الزملاء

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

كل عام وأنتم بخير

لاحظت في الفترة الاخيرة بالمنتدي بعض الاعضاء الجدد الذين يحاولون فهم لغة VBA

أو Visual Basic For Application ولكهنم يفشلون نظراً لانهم يفتقرون لاساسيات اللغة وطريقة التعامل معها لذلك قررت من خلال هذه المشاركة ان اشرح للسادة الاعضاء بحكم خبرتي القليلة جدا جدا بعض الفاهيم الاساسية والبسيطة والتي قد تساعدهم علي فهم بعض الاساسيات البسيطة في لغة VBA عند تصميم برامجهم أو عند تصفح الاكواد البرمجية الموجوده في مشاركات الاعضاء والمشرفين الافاضل

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

بسم الله الرحمن الرحيم

والصلاة والسلام علي اشرف المرسلين سيدنا محمد صلي الله علية وسلم

لنبدأ علي بركة الله

أولاً : - سنبدأ في شرح

مقدمة الي Access VBA

تعتبر مايكروسوفت أكسس شأنها شأن العديد من (نظم ادارة قواعد البيانات) RDBMS أو Relations Database management systems

ويأتي مع برنامج أكسس لغة برمجة خاصة بها تسمى VBA

وهي مجموعة فرعية من شركة ميكروسوفت شعبية

المشاريع بلغة البرمجه VBA

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

سنبدأ أولاً بــــ

أين يوضع الكود البرمجي

يوضع الكود في الوحدة النمطية( أنشاء وحدة نمطية جديدة ) أو من خلال الكائن ( مربع نص مثلا ) الذي تريد إضافة الكود له من خلال خصائص <-- إنشاء حدث <-- منشئ البرامج وكما هو موضح بالصورة المرفقة

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

post-46243-1240130983_thumb.jpg

إذا كان الكود عام يعني يستخدم أكثر من مرة داخل قاعدة البيانات فإنه يوضع في الوحدة النمطية ويستدعى من خلال دالة

في النموذج أما الكود قد يكون خاص بتقرير أو نموذج فقط فيوضع داخله.

1 - الكود الموجود في الموديل

أما يكون في روتين فرعي

sub routine
لها أي اسم مثل
Sub mm()

و تنتهي ب

end sub

مثال

sub showamessage()
msgbox "mm"
end sub

و هذا في حالة مجموعة من التعليمات التي تكون جزء خاص و تنفذ بمفردها

أو تستدعي داخل روتين فرعي آخر

و إما أن تكون داخل دالة

function

function mm()
end function

function showamessage(x)
msgbox "mm"
showamessage = x*x
end function

و هي تستخدم للعودة بقيم أو لتنفيذ الدالة علي المتغير الموجود بها

أما عن الكود الخاص بالكائنات:

objects

مثل الفورم أو التقرير فيكون مرتبط بأحداث معينة

تجدها فى الخصائص الخاصة بالكائن و اسمها أحداث

Events

انظر الصورة المرفقة أعلاة

وهذا مثال عن كيفية كتابة الحدث

Private Sub Form_Click()
اكتب كودك هنا لكي يستجيب نموذجك للامر عندما يضغط المستخدم كليك علي النموذج
End Sub

مثال آخر

Private Sub Form_MouseUp(Button As Integer, _
Shift As Integer, X As Single, Y As Single)
اكتب كودك هنا وذلك عندما يريد المستخدم اجراء الحدث بعد ترك المستخدم لزر الماوس
End Sub

والان بعد الضغط علي الثلاث مربعات الموجودين بالصورة أعلاة يتم الدخول الي محرر الفيجوال بيسك كما في الصورة المرفقة

post-46243-1240130785_thumb.jpg

والان دعنا نتعرف عن قائمة العناصر الموجودة داخل محرر الفجيوال بيسك وقائمة الاحداث

قم باختيار العنصر المطلوب عمل اجراء له كما في الصورة الموضحة ثم قم باختيار الحدث المناسب لهذا العنصر من خلال القائمة المنسدلة الموضحة بالصورة بعد تحديد العنصر المراد كتابة له والحدث الذي سيحدث عن كتابة الكود سيظهر لك مكان كتابة الكود ويكون بين private sub و end sub وتسمي منطقة البلوك والذي يكتب فيها الكود

فمثلا اذا كتبنا هذا الكود البسيط

me.Refresh

فكلمة me تعني أنا وانا هذه عائدة علي العنصر الموجود امامنا وهو form1

وكلمة Refresh

تعني تحديث وانعاش النموذج وقت التحميل أو وقت فتح النموذج

و دوت . تعني الاحداث التي سيفعلها النموذج بعد كلمة me ففي جميع الاحوال عندما تكتب كلمة me ثم دوت . تفتح لك قائمة منسدلة يتم اختيار منها الحدث المطلوب عملة

والصور التالية توضح الامور أكثر لما شرحناه سابقا

post-46243-1240131258_thumb.jpg

وسنناقش تفاصيل هذه الاجراءات في وقت قريب بما فيه الكفايه بخصوص هذه الاحداث

لكن الذي نريد ان نفهمة الان هو لماذا يلجأ المبرمج لكتابة كود VBA أعتقد ان الاجابة هي الرد علي تساؤلات المستخدم والذي يعجز الاكسس العادي الاجابة علي هذه التساؤلات

سنبدأ اليوم بعمل مثال بسيط نفتتح به دروسنا

نريد ان نقوم بعمل نموذج وبه ازرار عند الضغط عليها في حدث معين يقوم هذا الحدث بتلوين خلفية listbox كما في الشكل التالي

post-46243-1240131800_thumb.jpg

فلو نظرنا للكود المكتوب اعتقد اننا سنجده سهل جدا ومفهوم

فالكود الخاص بتلوين اللون الاحمر هو

Me.Listcolors.BackColor = vbRed

واذا اردنا تلوين الــ listbox باللون الاسود

Me.Listcolors.BackColor = vbBlack

واللون الازرق

Me.Listcolors.BackColor = vbBlue

واللون الماجينتا

Me.Listcolors.BackColor = vbMagenta

وهكذا بالنسبة لكثير من الالوان

مرفق أول مثال لنا هنا في هذه المشاركة والخاصة بتعليم لغة الفيجوال بيسك للتطبيقات

والي درس آخر غداً باذن الله

Colors.rar

تم تعديل بواسطه محمد فؤاد تركي
2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

79 إجابة على هذا السؤال .

  • 0

أخى محمد فؤاد التركى

موضوع مهم وضرورى لكل مبرمج ونأمل الاستمرار والمزيد

وفقك الله لما هو نفع للآخرين

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله بك اخي وخبيرنا محمد فؤاد

وآمل ان تستمر في الشرح ولكن على اقل من مهلك يعني حبه حبه

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

فمثلا اتمنى ان تبدا الشرح من تحت الصفر كقولك على سبيل المثال هذا الكود ينشىء بهذه الطريقة :

1. نفتح النموذج او التقرير في وضع التصميم من خلال الآتي : ( وتضع صور وشرح لطريقة فتح النموذج في وضع التصميم ) ثم تضع صور لقائمة الأدوات الخاصة ومن ثم تقوم بالتأشير على زر الأمر وضعه على النموذج ثم تواصل الشرح المبسط حتى تصل الى محرر الفيجول بيسك للنموذج وبه الكود سواء للفتح او للإغلاق او اي حدث . حتى يعرف المبتدأين من اين اتى هذا الكود .

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

3. هناك اعضاء الى حد الآن لا يعرفون كلمة ME في الكود ولا ما هي الفائدة منها ومتى تأتي بنقطة ومتى تاتي بعلامة تعجب ومتى تستخدم ومتى لا تستخدم .

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

3

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

أخى محمد فؤاد التركى

جزاك الله خير الموضوع ممتاز واعتقد ان بعض الاعضاء بحاجة ماسة للتعامل وفهم طبيعة الاكواد التي لا غنى عنها

جزاك الله خير وان شاء الله في ميزان حسناتك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخي الحبيب الغالي محمد فؤاد شكراً جزيلاً لك

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

جزاك الله عنا كل خير

:clapping:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بسم الله الرحمن الرحيم

بارك الله فيك اخي تركي فعلا الجميع بحاجة الى مثل هذه الدروس وان كنت ارى - سامحني - فمن خلال متابعتي للمنتدى فالاخت زهرة محقة تماما فيما ذهبت اليه وقد رايت ما هو اصعب من ان البعض لا يعرف Me صدقني رايت البعض لا يعرف وجود امكانية لكتابة كود وفي نظره الاكسس عبارة عن مجموعة من Wizards ولكن ما ذهبت اليه مشكور عليه وبارك الله فيك ولن نطلب منك اكثر مما كنت تريد بالفعل شرحه فالمنتدى عطش لاي معلومة

بارك الله فيك مرة اخرى اخي الكريم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الاخوة الزملاء

شكرا لكم علي تحفيزكم لي وان شاء الله سأحاول باقصي طاقة عندي وحسب معلوماتي القليلة افاده جميع الزملاء الجدد والله المستعان

الاخت الغالية زهرة

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

أشكرك كل الشكر علي توجيهاتك المستمرة التي تقودني دائما الي الطريق الصحيح فأنت لديك حق 100% فيما قلتي

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

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

بعتذر لكم عن تقصيري احيانا لكن الحياه مشاغل

شكراً لكم

تم تعديل بواسطه محمد فؤاد تركي
2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

لك كل الشكر والتقدير اخي محمد فؤاد على هذا المجهود الطيب

وبالفعل نحن نحتاج الى مثل هكذا دروس اساسية

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاك الله كل خير ياأستاذنا محمد واصل إبداعك نحن معك

وتم التقييم (خمس نجوم) وتستاهل أكثر الله يبارك فيك :rolleyes:

تم تعديل بواسطه معاوية
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الاخوة الزملاء

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

بارك الله فيكم جميعاً

اليوم سنبدأ في شرح كود الجمع وهو كود بسيط وسهل وان شاء الله استطيع توصيل المعلومة اليكم بوضوح ( طبعا الجمع بكود VBA)

قبل ان ابدأ درس اليوم اريد منكم ابداء رأيكم اولاً بخصوص الدرس الاول في التالي

هل استعطت الان ان تفتح شاشة محرر الفيجوال بيسك

هل استطعت ان تفهم اين يكتب الكود ومتي نضع دوت

هل استطعت ان تختار نوع الحدث المطلوب اختيار لعنصر معين داخل النموذج

فهذه الاراء مهمة جداً لتكملة المسيرة بدون مشاكل ان شاء الله

علي بركة الله نبدأ

افتح معي نموذج جديد في نمط التصميم وضع علية هذه العناصر من قائمة الادوات

1 - مربع نص غير منضم ( Txt1 )

2 - مربع نص غير منضم ( Txt2 )

3 - مربع نص غير منضم ( Txt3 )

4 - زرار ( Btn1)

5 - ليبل لوضع علامة + بداخلها

والان نأتي للمطلوب

المطلوب جمع الرقم الذي سيتم كتابتة في المربع الاول + الرقم الذي سيتم كتابتة في المربع الثاني ثم نضغط علي زرار = لكي يظهر لنا الناتج في المربع الثالت

ولعمل ذلك

احنا عاوزين لما نضغط علي زرار = يقوم البرنامج بجمع الارقام الموجوده في المربع الاول + الارقام الموجوده في المربع الثاني ووضع النتيجة في المربع الثالث

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

اذهب معي الي شاشة محرر الفيجوال واعتقد ان فتح الشاشة سهل جدا الان من خلال الضغط علي خصائص الزرار الموجود امامنا بالنموذج ثم افتح معايا تويب Event

وفي حدث النقر علي زر on click اختار Code Bulider وادخل الي شاشة محرر الفيجوال بيسك

والان دخلنا لشاشة محرر الفيجوال بيسك طيب والان ماذا سنفعل دعنا نفكر سويا ما العمل .. انا هقولك نعمل اية تعالي نفكر كده زي ما بيقولو بالبلدي

هتلاقي قدام البلوك اللي احنا اتكلمنا علي في الدرس الاول

Private Sub Btn1_Click()

End Sub

وده معناه ان احنا هنكتب الكود بتاعنا داخل هذا البلوك

طيب هيكون الكود ازاي

اقولك ان احنا كتبنا الكود فوق بالبلدي وخلي بالك ده 99% من المشوار مش باقي غير حاجة بسيطة وهي كتابة الكود وهيكون كده

اول حاجة نبدأ بالخانة اللي هيظهر فيها النتيجة ,واللي هي اسمها Txt3

وبعدين نكتب =

وبعدين نجمع الارقام الموجوده داخل المربع الاول Txt2

وبعد كده نضع علامة +

ثم نجمع الارقام الموجوده في المربع الثاني Txt3

كده خلصنا ويكون شكل الكود كالتالي

Txt3 =  Txt1 + Txt2

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

شوف معايا النتيجة وبص علي النموذج بعد الضغط علي زرار = طبعا قبل الضغط علي زرار = اعتقد انك حطيت ارقام في المربع لاول والمربع الثاني

لاحظ معايا كده اعتقد ان نتيجة الجمع كده غلط هو ايه اللي حصل

ليه البرنامج بدل ما يجمع الارقام 5 + 5 = 10 يطلعهم 55 اكيد احنا عملنا حاجة غلط او الكمبيوتر التعبان ده غبي يا تري مين االي غبي فينا انا ولا الكمبيوتر

لاء احب اطمنك واقولك ان الاجراء اللي احنا كتبناه صح 100% لكن الكمبيوتر هو اللي غبي

عارف اية الي حصل

البرنامج فهم االي احنا كتبناه علي هيئة نصوص ( جمع نصوص ) يعني المعادلة جابت الرقم 5 الموجود في المربع النص الاول وبعدين جابت الرقم 5 الموجود في المربع النص التاني ووضعتهم جنب بعضم في المربع الثالث

طيب ولو احنا دلوئتي عاوزين نطلع الناتج صح نعمل اية

هقولك نعمل اية

هنزود علي الكود اللي احنا كتبانه شوية الحاجات الصغيرة دي

Txt3 = Val(Txt1) + Val(Txt2)

كل اللي احنا عملنا زودنا عبارة Val

و Val معناها Value وهذه العبارة معناها ان القيم التي سيتم كتابتها داخل مربعات النصوص عبارة عن قيم وليس نصوص

وبكده تكون عملية الجمع صحيحة 100%

وبكده نفهم اية نفهم ان Val تستخدم في جمع القيم

وعملية الجمع من Val يتم التعامل مع الارقام المكتوبة بداخل مربعات النصوص علي انها نصوص وليس ارقام

والدليل حاول انك تكتب في المربع الاول محمد والمربع الثاني اكتب فؤاد ثم اضغط يساوي ستجد ان المعادلة اخذت محمد واخذت فؤاد ووضعتهم في المربع الثالث هكذا

محمدفؤاد

طيب الموضوع ده فتح قدامنا موضوع جديد وهي لو انت لا حظت ان محمد ملصقة بفؤاد بدون مسافة بين الاسم الاول والاسم الاخير ولعمل مسافة بين الاسم الاول والاسم الخير هيكون الكود كالتالي

Txt3 = Txt1 & " " & Txt2

ويفضل كتابة & و " " في حالة التعامل مع النصوص فاذا كتبنا "" فيظهر الاسم بدون فواصل واذا كتبناها هكذا " " يظهر مسافة بين الاسم الاول والاسم الاخير ويكون شكل النموذج النهائي كالتالي

post-46243-1240132195_thumb.jpg

واتمني اكون قد وفقت في هذا الدرس للسادة الاعضاء الجدد

مرفق المثال اتمني ان يحوز رضاكم

Sum.rar

تم تعديل بواسطه محمد فؤاد تركي
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بسم الله الرحمن الرحيم

بارك الله فيك اخي الكريم

اكمل على بركة الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

ما هذا يا خبيرنا القدير وفقك الله

فعلاً هذا الجانب مهم لأنه من الضروري إحتواء المشاريع على أكواد برمجية وإلا كانت تلك المشاريع جامدة عسى الله يوفقك

على فكرة ياليت تعطينا فكرة ولو بسيطة عن المتغيرات والدوال حتى نعرف كيف نكتب أكواد قوية تلبي كل رغباتنا ............ إن وجدت فرصة مناسبة.

أتمنى لك التوفيق ففعلاً نحتاج إلى هذا الجانب.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

اخى محمد فؤاد جزاك الله خيراً ورعاك ووفقك لما هو خير لخدمة ابناء امتك الاسلامية والعربيه

احسست اليوم عند قراءة الموضوع بأنك دائم التفكير فى احتياجات الآخرين ورأيت منك انك تتلمس ما يطلبه ويتمناه الاخرين حقا

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

اخوانى واخواتى ( الاخت زهره ـ الاخ مصلح الحريصى ـ الاخ همام ـ الاخ كمال ـ الاخ اكسير ـ الاخ ابو هاجر ...... ) ارجو تثبيت الموضوع لخدمة جميع الاعضاء وارجو المشاركة فى الشرح والامثلة

واخيرا شكر خاص جدا للأخ الفاضل محمد فؤاد تركى والف مبروك لمصر على كأس الامم الافريقية ( اهلاوى ـ زمكاوى ـ اسمعلاوى ـ ...) المهم ان انا مصرى عربى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

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

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

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

بسم الله نبدأ في شرح درس جديد وهو المتغيرات أو Variables

وسنبدأ الدرس بسؤال

ما هي المتغيرات أو Variables

طيب تعالي نتكلم زي كل مرة بالبلدي عشان نفهم يعني اية متغير

طيب احنا بنستخدم المتغير عشان يشيل لو يحمل قيمة متغيرة

هتسألني وتقولي انك مش فاهم حاجة

هرد عليك واقولك انك عندك حق اذا كنت انا مش فاهم حاجة من اللي انا بقوله :D

طيب تعالي ناخد مثال صغير عشان نقدر نفهم يعني ايه متغير

لو فرضنا ان سيادتك عاوز تسأل المستخدم عن اسمة ؟ اسم المستخدم ده قيمة متغيرة لانك ما تعرفشي ما هو فممكن ان يكون المستخدم احمد او محمد او زهرة او مصلح

عشان كده احنا بنستخدم له متغير وليكن Username

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

)"أدخل اسمك من فضلك"UserName = InputBox (

ملحوظة صغيرة

ملاحظة : يستخدم امر inputbox لطلب معلومة من المستخدم

طيب عشان نعمل متغير لازم يكون للمتغير ده شروط

وشروط عمل متغير كالتالي

*** يجب ألا يزيد اسم عن 40 حرفاً

*** ألا تستخدم كلمة من الكلمات المحجوزة reserved words كأسم للمتغير من الكلمات المحجوزة print و end أو Date

*** ولكن يمكن أن تكون جزء من اسم اخر مثل PrintText

ومن الحاجات المهمة اللي لازم سيادتك تعرفها هي انواع المتغيرات

فهذا جدول يوضح انواع المتغيرات

انواع المتغيرات

طيب ودلوئتي عاوزين نقدر نعرف نعلن عن متغير جديد في فيجوال بيسك

والاعلان عن متغير جديد في فيجوال بيسك لازم نخبر الفيجوال بيسك عن نوع واسم المتغير

مثال

Dim UserName As String

طيب هتقولي يعني ايه Dim هقولك Dim معناها ان انا بقول للفيجوال بيسك او بخبر الفيجوال بيسك ان انا هعلن عن متغير كمتغير يحمل حروف مثل string

ولازم نلتزم بنوع النتغير

يعني ما ينفعشي نكتب ان المتغير نوعه عددي ونضع فية قيمة حرفية

والعكس صحيح

طيب فيه حاجة اسمها المتغيرات العامة

Global

المتغير العام هو المتغير الذي يمكنك أن تستخدمه من أي مكان في البرنامج ، أي أن مداه يشمل جميع البرنامج بجميع ملفاته ونوافذه .

ويبقى في الذاكرة طوال فترة عمل البرنامج ولا يحذف من الذاكرة إلا بعد انتهاء البرنامج .

ولكن يجب أن تضع الإعلان عن المتغير العام في ملف برمجة وليس في نافذة ( أقصد وحدة نمطية ) .

طريقة ادخال المتغيرات التي ترغب في جعلها متغيرات عامة هي

Global UserName As String

بعد هذا الإعلان ستتمكن من استخدام المتغير UserName من أي مكان داخل البرنامج

طيب تعالي ناخد مثال بسيط عن المتغيرات نختم بيه درسنا النهاردة

لو احنا عاوزين نعرض رسالة تظهر لنا عند الضغط علي زر أمر

انشيء نموذج جديد في نمط التصميم وبعدين اضغط علي الزر كليك يمين لتدخل الي خصائص الزر وتبويب event ادخل علي محرر الفيجوال بيسك تحت حدث الضغط علي زر

اعلن عن متغير جديد نوعة نصي واسمة msg

Dim msg As String

وبعد كده اكتب نص رسالتك داخل msgbox اللي انت عاوز تظهرها وانت بتضغط علي الزر ونص الرسالة كالتالي

msg = MsgBox("أهلا ومرحبا بكم في منتداكم الغالي الفريق العربي للبرمجة", vbInformation, "رسالة ترحيب")

وهيكون الشكل النهائي للكود كده

Private Sub Command0_Click()
Dim msg As String
msg = MsgBox("أهلا ومرحبا بكم في منتداكم الغالي الفريق العربي للبرمجة", vbInformation, "رسالة ترحيب")
End Sub

وده شكل النموذج النهائي

post-46243-1240132671_thumb.jpg

والي دروس قادمة باذن الله

Variables.rar

تم تعديل بواسطه محمد فؤاد تركي
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيك وتحيا مصر يا عمنا والله ممتاز وكلام كلنا محتاجينه وفقك الله

بس ياريت تكون حبه حبه زي الأخت زهرة ما قالت فيه ناس غلابة يا عمنا يعني مثلاً الجزئية الأولى مفهمتهاش بتاعة الدالة والروتين يعني محتاجة توضيح شوية

لكن للأمانة شغلك ممتاز وبارك الله فيك ونحن في انتظار الدرس القادم

وفقك الله وأعانك على مشاغل الحياة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخي الغالي الاستاذ2010

الروتين الفرعي

هي الاقواس المستديرة في الروتين الفرعي أوالوظيفة .

مثلا :

كود

function MyTest(A as String,B as Integer) as boolean

sub DoTest(A as variant,B as Integer)

فهنا B , A هما وسيطان يتم تمريرهما للوظيفة MyTest أو الروتين الفرعي DoTest

أتمني اني اكون قد وفقت في توصيل المعلومة لك كما يجب ان تكون

واذا اردت مزيد من التفاصيل عن القواعد الاساسية لكتابة function او الــ sub يمكنك زيارة هذا الرابط الخاص بمشاركة ممتازة لزميلنا حارث

تم تعديل بواسطه محمد فؤاد تركي
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

واسمح لي بسؤالك -- لو ان الخانة عرفتها على انها تحوي ارقام وكتبت في المعادلة dim string ماذا يحدث انا اعرف انه لن ينفجر الجهاز بوجهي ولكن عندما عملتها ظهرت الرسالة بشكل طبيعي وكان شيئا لم يحدث وبارك الله في جميع الاعضاء والزائرين

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخي الغالي salem2008

طبعا ستعمل معاك زي الفل

لكن خلي بالك

نوع المتغير string بيحجز مساحة اكبر في ذاكرة الحاسب عن نوع المتغير Integer

يعني انت لما بتعلن عن متغير نوعة string الكمبيوتر بتاع حضرتك بيحجز مساحة في ذاكرتة غير لما بتعلن عن متغير interger وهكذا

امال احنا حطينا في المشاركة جدول فيه كل متغير ومداه ليه ؟؟

تم تعديل بواسطه محمد فؤاد تركي
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

انت مية مية يا جدع ---- كلامك منطقي ومزبوط --------

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

موضوع جميل جدا يا أستاذنا محمد

((( ربنا يديك علي قد نيتك )))

:ty:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

موضوع مهم وشرح رائع

سر على بركة الله

نحن بانتظار المزيد

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أشكرك جداً أستاذ محمد

ولي تساؤل قريب من تساؤل الأخ سالم

لو وضعنا المسج مباشرة فهل سيكون هناك مشلكة أيضا لأني جربت وحذفتها وطلعت طبيعية ؟

معليش أستاذنا تحملنا شوي .......

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

تاخرت علينا اخ محمد عسى ان يكون المانع خير ودمتم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .