اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر
في ٨‏/٩‏/٢٠١٩ at 18:04, عبد الله قدور said:

السلام عليكم

اخواني الكرام

كيف يمكنني تشغيل حلقة تكرارية for do while بشكل تنازلي بحيث يبدأ العد من الرقم الكبير ثم يتم انقاص واحد حتى يصل الى الرقم 1 ثم تتوقف الحلقة

 

وعليكم السلام 

اتفضل استاذ @عبد الله قدور :fff:

Dim i As Integer
i = 6

   Do While i < 10
      i = i - 1
      If i = 1 Then Exit Do
      MsgBox "The value of i is : " & i
   Loop

 

طبعا غير انت ما يلزمك حسب قاعدتك انا اعطيتك الفكرة بشكل عام :biggrin:

  • Like 6
قام بنشر
في ٨‏/٩‏/٢٠١٩ at 18:23, عبد الله قدور said:

جزاك الله كل خير ونفع الله بكم وأمد في عمركم بالخير والبركة والطاعة المقبولة بإذن الله تعالى

 

جزاكم الله خيرا اخى الحبيب واستاذى الفاضل :fff:

  • Like 2
قام بنشر (معدل)
في ٨‏/٩‏/٢٠١٩ at 19:10, kha9009lid said:

@ابا جودى ماشاء الله عليك استاذ فعلا

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

ولكن عن طريق for next

 

تنازلي.accdb 452 \u0643\u064a\u0644\u0648 \u0628\u0627\u064a\u062a · 11 downloads

اعتذر للتأخير فى الرد عليكم 

العفو منكم استاذى الكريم واخى الحبيب الاستاذ @kha9009lid :fff: انا اقل طالب علم فى المنتدى

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

الفكرة الأولى من خلال SELECT CASE  ,  DO WHILE

    Select Case Nz(Me.الكمية, "")
    Case ""
        Me![الكمية].SetFocus
        MsgBox "حقل الكمية مطلوب"
        Exit Sub
    Case Is <= 0
        Me![الكمية].SetFocus
        MsgBox "لا يمكن معالجة هذه الكمية"
        Exit Sub       
    Case Is > 0
        Dim i As Integer
        i = [الكمية] + 1
            Do While i = i
                i = i - 1
                If i = 0 Then Exit Do
                Me.رقم = i
                Me.الموقع = i
                Me.المدينة = "القاهرة"
                DoCmd.GoToRecord , , acNext
            Loop
    End Select

 

الفكرة الثانية

If IsNull([الكمية]) Then
MsgBox "حقل الكمية مطلوب"
Me.الكمية.SetFocus
Exit Sub
Else
Dim i As Integer
i = [الكمية] + 1
   Do While i = i
      i = i - 1
      If i = 0 Then Exit Do
      Me.رقم = i
      Me.الموقع = i
      Me.المدينة = "القاهرة"
      DoCmd.GoToRecord , , acNext
   Loop
End If

 

تم تعديل بواسطه ابا جودى
  • Like 2
قام بنشر

قطعا انا احب التعامل قدر الأمكان مع select case  بدلا من if :yes:

طبعا انا بالرد الاول اجبت بـ DO WHILE  لانه كان محور التساؤل اصلا
ولكن اثراء للموضوع اضفت كل الافكار التى دارت بخلدى حول هذا الموضوع طبعا من بعدكم استاذى الحبيب :fff:

 

  • Like 1
قام بنشر

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

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

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

قام بنشر

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

الأستاذ عبد الله طلب طريقة استعمال الحلقات التكرارية بالعد التنازلي 

و هذا يعني استعمالها بدون دوال إضافية مثل الدوال الشرطية

للحلقات التكرارية ستة أشكال و قد شرحتها جميعها في هذه السلسلة: دروس VBA أكسس

و هذا حل لسؤال الأخ عبد الله بخمسة أشكال من الحلقات التكرارية:

الأول:  الدالة For

Dim i As Integer, k As Integer
k = 4
For i = k To 1 Step -1
    MsgBox i
Next i

الثاني:  الدالة Do While

Dim i As Integer
i = 4
Do While i >= 1
   MsgBox i
   i = i - 1
Loop

الثالث:  الدالة Do Until

Dim i As Integer
i = 4
Do Until i < 1
   MsgBox i
   i = i - 1
Loop

الرابع:  الدالة Do.....Loop Until 

Dim i As Integer
i = 4
Do
   MsgBox i
   i = i - 1
Loop Until i < 1

الخامس:  الدالة Do.....Loop While 

Dim i As Integer
i = 4
Do
   MsgBox i
   i = i - 1
Loop While i >= 1

 

  • Like 5
  • Thanks 2
قام بنشر
في ٨‏/٩‏/٢٠١٩ at 23:23, صالح حمادي said:

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

الأستاذ عبد الله طلب طريقة استعمال الحلقات التكرارية بالعد التنازلي 

و هذا يعني استعمالها بدون دوال إضافية مثل الدوال الشرطية

للحلقات التكرارية ستة أشكال و قد شرحتها جميعها في هذه السلسلة: دروس VBA أكسس

و هذا حل لسؤال الأخ عبد الله بخمسة أشكال من الحلقات التكرارية:

الأول:  الدالة For


Dim i As Integer, k As Integer
k = 4
For i = k To 1 Step -1
    MsgBox i
Next i

الثاني:  الدالة Do While


Dim i As Integer
i = 4
Do While i >= 1
   MsgBox i
   i = i - 1
Loop

الثالث:  الدالة Do Until


Dim i As Integer
i = 4
Do Until i < 1
   MsgBox i
   i = i - 1
Loop

الرابع:  الدالة Do.....Loop Until 


Dim i As Integer
i = 4
Do
   MsgBox i
   i = i - 1
Loop Until i < 1

الخامس:  الدالة Do.....Loop While 


Dim i As Integer
i = 4
Do
   MsgBox i
   i = i - 1
Loop While i >= 1

 

يا سلام يا سلام ماشاء الله و الله اكبـر

ندخل نجيب استاذنا الحبيب الاستاذ @عبد الله قدور فيرزقنا الله معه رزقا واسعا

كل الشكـــــر والتقدير والاجلال لكم استاذى الجليل ومعلمى الاستاذ @kha9009lid:fff: , و الاستاذ  @صالح حمادي :fff:

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

امين امين امين

  • Like 2
  • Thanks 1
قام بنشر
5 ساعات مضت, ابا جودى said:

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

اللهم آميييييييييييييييييييييييييييييييييييييييييين

  • Thanks 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information