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

تحديد قيمة افتراضية لوسيط دالة

بدأه ماجدجلال في 23 أبريل 2013 · 11 رد · 633 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

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

و الهدف منها هو ان اتعلم كيفية تحديد قيمة افتراضية لوسيط دالة في حالة تصميمها ,

قد رد عضو بوجود طريقة او دالة افضل وانا هنا احاول ان اتعلم فقط , حتي اطبق علي برنامج 

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

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

ارجو المساعدة ولكم جزيل الشكر و الامتنان

 

 

210.zip

#2

تفضل اخي الكريم

 

za-210.rar

 

 

بالتوفيق

1
#3

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

شكرا لك استاذة زهرة هذا هو المطلوب 

جزاك الله الجنة واتمني لك التوفيق 

#4

ممكن سؤالين 

السؤال 1:

في العبارة التالية :

 

Dim var As Integer
تم الاعلان عن متغير اسمة var وتم تحديد نوعة من النوع Integer
Function openforms(Optional ByVal nomyforms = 1) As Integer
طيب في العبارة السابق النوع الذي تم تحديدة ( Integer ) يخص من ؟ بمعني هل هو خاص بالمتغير nomyforms الذي داخل القوس او خاص بالمتغير openforms ؟
السؤال 2: 
اذا كان النوع تم تحديدة علي اساس انة خاص بالمتغير openforms , فما هو نوع المتغير nomyforms ؟
وشكرا جزيلا لكم 
 
#5

اخي الفاضل

 

لا يوجد لديك في الكود الخاص بك  المتغير  var

Dim var As Integer

 

الكود الخاص بك هو :

 

 

Function openforms(Optional ByVal nomyforms = 1) As Integer
Select Case nomyforms
Case Is = 1
DoCmd.OpenForm "100"
Case Is = 2
DoCmd.OpenForm "200"
Case Is = 3
DoCmd.OpenForm "300"
End Select
End Function
 
كامل الدالة  Function openforms(Optional ByVal nomyforms = 1) As Integer   هي منوع منغير  رقمي   Integer
 
اما ما هو داخل القوس فهو اختياري  (Optional ByVal nomyforms = 1)
اي ان اساس الدالة الصحيح هو   Function openforms() As Integer
 
عندما وضعت رقم النموذج الإفتراضي في داخل القوس هو 1 فهنا سيكون لديك اختيارين اما ان تضع رقم معين سواء 2 او 3 وهذا يمثل رقم النموذج حسب جملة Select حتى يتم فتح النموذج المطلوب وإن تركت القوس بدون اي رقم  ()openforms فإن الدالة قد عينت القيمه الإفتراضية لفتح النموذج وهو الرقم 1
 
 
بالتوفيق
 
 

تم تعديل هذه المشاركة بواسطة zahrah في 24 أبريل 2013 في 13:50

#6

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

شكرا لك استاذة زهرة

فعلا هو لا يوجد وكان هذا كمثال للسؤال الذي اود طرحة ,

وهو كيف اذا اردنا تحديد نوع متغير للمتغير الموجود داخل القوس ؟

الكود كان للتوضيح فقط 

بارك الله فيك 

#7

اخي الفاضل : ماجد جلال

 

اليك المرفق التالي فقد يساعدك على فهم الكثير مما تريد وبأقصر الطرق بالعربي

 

دروس في  الـ VBA

 

VBA_lessons.rar

 

 

بتالتوفيق

1
#8

شكرا لك استاذة زهرة 

وجزاك الله كل خير 

#9

السلام عليكم 

ممكن سؤال منفصل ولكن في نفس الموضوع 

ما هو الخطاء في العبارة التالية :

dim one as integer = 24

حيث انني ارغب في وضع قيمة افتراضية للمتغير one ولتكن 24 !  بحيث لا يكون لهذا المتغير اي وسيط او اقواس 

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

expected end of statement

لقد قرات المرفق حول الدرس الذي ارسلته الاستاذة زهرة كان يدور حول تعليم قواعد vba ولم يتطرق كثيرا الي byval   لذا طرحت السؤال ,,,

و جزاكم الله عني كل خير ,,

#10

اخي الفاضل : ماجد

 

تكتب هذه العبارة بهذه الطريقة

 

 

Dim one as integerone = 24
 
شرح العبارة :
السطر الأول : التصريح عن متغير رقمي اسمه one
السطر الثاني : القيمة الإفتراضية او الثابته للمتغير هي 24
 
بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 25 أبريل 2013 في 11:19

#11

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

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

ووضعت لة قيمة مبدئية وهو الرقم 2 

ولكن للاسف تظهر دوما رسالة خطاء 

ارجو منكم المساعدة ولكم جزيل الشكر و الامتان

 

220.zip

#12

للرفع

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…