-
Posts
3493 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
152
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو Shivan Kurdi
-
انا اضفت نموذج دخول لقاعدة بياناتك واضفت هذا الكود عند للدخول بعد كتابة اسم المستخدم ورقم سري خاص به Private Sub sOK_Click() Dim MyPassword As String Dim MyUName As String MyPassword = Nz(DLookup("password", "Users", "[username]='" & Me.UName & "'"), "") MyUName = Nz(DLookup("username", "users", "[username]='" & Me.UName & "'"), "") If Me.UPassword = MyPassword Then GetUserName.UserName = Nz(DLookup("username", "users", "username = Forms!frmlogin!UName")) DoCmd.Close acForm, Me.Name DoCmd.OpenForm "com", acNormal End If End Sub في هذا ... الجزء المهم لمامنا هو هذا السطر من الكود GetUserName.UserName = Nz(DLookup("username", "users", "username = Forms!frmlogin!UName")) وايضا تم اضافة هذا فانكشن Public UserName As String Public Sub GetUserName(FrmName As String) Forms(FrmName).Caption = UserName End Sub وفي النموذج التسجيل البيانات تم كتابة هذا الكود عند اضافة السجل Private Sub Form_AfterInsert() Me.UserNameIns = UserName End Sub واذا تريد تقدر ان تكتب الكود في حالة بعد اتحديث النموذج اذا حضرتك تريد ان يكتب اسم المستخدم اللي من عمل تغيير في السجل اليك هذا الملف بها ماتريد Database1.rar
-
كيف انقل مبلغ من نموذج الى آخر او من جدول الى اخر
Shivan Kurdi replied to طاهر الوليدي's topic in قسم الأكسيس Access
ممکن تشرح لنا بالتفصیل ترید ان تنسخ ای حقل ومن ای جدول الى ای جدول وبأی شرط وضح اكثر لكي نقدر نساعدك تحياتي -
- 7 تعليقات
-
- مساعد اكواد برمجة اكسس
- codevba
-
(و2 أكثر)
موسوم بكلمه :
-
الملفك بيعمل ضغط و اصلاح تلقائي عند اغلاق القاعدة لذلك ما تحتاج لشيء اخر ولكن اذا تريد شيء اخر ... وضح ما تريد بالضبط هل تريد ان بيعطيك الرسالة ( هل تريد ان تعمل ضغط و اصلاح القاعدة ) مثلا ام تريد عند انتهاء العملية ان يعطيك الرسالة ويخبرك ان تم العملية بنجاح ؟ اذا تريد الرسالة الاولى ... سهلة جدا اذا تريد الرسالة الثانية ... هذا شوية صعبة ماذا تريد بالضبط ؟
-
مطلوب استعلام لاكبر 3قيم فى جدول أكسيس
Shivan Kurdi replied to baraa2007's topic in قسم الأكسيس Access
استأذن من استاذنا جعفر اتفضلي تم عمل العلاقة بين الجدولين و بعدين عملت هذا استعلام SELECT TOP 3 insert.idd, sub.Date, Sum(sub.reading) AS SumOfreading, DSum("[SumOfreading]","q1")/3 AS mitawasit FROM [insert] INNER JOIN sub ON insert.idd = sub.id GROUP BY insert.idd, sub.Date ORDER BY Sum(sub.reading) DESC; والنتيجة بيعطيك هكذا Database1.rar -
جمع اعلى ثلاث سجلات فقط من مجموع قيم
Shivan Kurdi replied to abdullah 219's topic in قسم الأكسيس Access
اتفضل تم عمل هذا استعلام SELECT TOP 3 [الحصول على نتيجة اللاعبين].finaldgree, [الحصول على نتيجة اللاعبين].dev_name, [الحصول على نتيجة اللاعبين].playerClubs, [الحصول على نتيجة اللاعبين].ch_name FROM [الحصول على نتيجة اللاعبين] WHERE ((([الحصول على نتيجة اللاعبين].dev_name)=[Reports]![الحصول على نتيجة اللاعبين]![dev_name]) AND (([الحصول على نتيجة اللاعبين].playerClubs)=[Reports]![الحصول على نتيجة اللاعبين]![playerClubs]) AND (([الحصول على نتيجة اللاعبين].ch_name)=[Reports]![الحصول على نتيجة اللاعبين]![ch_name])) ORDER BY [الحصول على نتيجة اللاعبين].finaldgree DESC; وتم استخدام هذا كود عند فورمات جزء التفصيل ( FORMAT ) للتقرير Private Sub التفصیل_Format(Cancel As Integer, FormatCount As Integer) Me.Text25.Value = Nz(DSum("finaldgree", "q1"), 0) End Sub والنتیجة بيطلع هكذا عند فتح التقرير قبل طباعة النتائج هم سالب لذلك تم الحصول على اكبر نتائج اي تم الجمع الارقام الصغيرة بالسالب واذا تريد ان تحصل لارقام كبيرة للسالب افتح الاستعلام باسم Q1 في وضع تصميم وفي حقل النتيجة النهائية غير من Descending الى Ascending -
فقط غير في الاسطر التالية اللي في بداية الكود من هذا Dim Mablax1 As Integer Dim Mablax2 As Integer Dim Mablax3 As Integer بهذا Dim Mablax1 As Double Dim Mablax2 As Double Dim Mablax3 As Double
-
جمع اعلى ثلاث سجلات فقط من مجموع قيم
Shivan Kurdi replied to abdullah 219's topic in قسم الأكسيس Access
بعد انا ما فهمت من طلبك بالضبط ... اعطيني مثال توضيحي -
اتفضل استخدمت هذا الكود بها كتير من الاحتمالات انا فكرت بنفسي عن الاحتمالات .. كان يجب ان تعطيني كل الاحتمالات لكي اعطيك الكود المناسب حسب احتمالاتك Private Sub Command8_Click() Dim Mablax1 As Integer Dim Mablax2 As Integer Dim Mablax3 As Integer If Me.Frame21 = 1 Then If Me.Time1 >= #5:00:00 AM# And Me.Time1 <= #9:00:00 PM# Then If Me.Time2 > #9:00:00 PM# Then Mablax1 = ((Me.Ratib * 12 * 1.25) / (52 * 45)) * (Format(#9:00:00 PM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(Me.Time2, "h") - Format(#9:00:00 PM#, "h")) Me.Netica = Mablax1 + Mablax2 ElseIf Me.Time2 = #12:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 1.25) / (52 * 45)) * (Format(#9:00:00 PM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (3) Me.Netica = Mablax1 + Mablax2 ElseIf Me.Time2 > #12:00:00 AM# And Me.Time2 <= #5:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 1.25) / (52 * 45)) * (Format(#9:00:00 PM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (3) Mablax3 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(Me.Time2, "h")) Me.Netica = Mablax1 + Mablax2 + Mablax3 ElseIf Me.Time2 >= #5:00:00 AM# And Me.Time2 <= #9:00:00 PM# Then Me.Netica = ((Me.Ratib * 12 * 1.25) / (52 * 45)) * (Format(Me.Time2, "h") - Format(Me.Time1, "h")) End If Else If Me.Time2 = #12:00:00 AM# Then Me.Netica = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (24 - Format(Me.Time1, "h")) ElseIf Me.Time2 > #9:00:00 PM# Then Me.Netica = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(Me.Time2, "h") - Format(Me.Time1, "h")) ElseIf Me.Time2 <= #5:00:00 AM# Then If Me.Time1 <= #5:00:00 AM# And Me.Time1 <= #12:00:00 AM# Then Me.Netica = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(#5:00:00 AM#, "h") - Format(Me.Time1, "h")) ElseIf Me.Time1 >= #12:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(Me.Time2, "h")) Mablax2 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (24 - Format(Me.Time1, "h")) Me.Netica = Mablax1 + Mablax2 End If ElseIf Me.Time2 >= #5:00:00 AM# Then If Me.Time1 <= #5:00:00 AM# And Me.Time1 <= #12:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(#5:00:00 AM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 1.25) / (52 * 45)) * (Format(Me.Time2, "h") - Format(#5:00:00 AM#, "h")) Me.Netica = Mablax1 + Mablax2 ElseIf Me.Time1 >= #12:00:00 AM# And Me.Time2 > #12:00:00 PM# Then Mablax1 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (24 - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 1.5) / (52 * 45)) * (Format(#5:00:00 AM#, "h") - Format(Me.Time1, "h")) Mablax3 = ((Me.Ratib * 12 * 1.25) / (52 * 45)) * (Format(Me.Time2, "h") - Format(#5:00:00 AM#, "h")) Me.Netica = Mablax1 + Mablax2 + Mablax3 End If End If End If ElseIf Me.Frame21 = 2 Then If Me.Time1 >= #5:00:00 AM# And Me.Time1 <= #9:00:00 PM# Then If Me.Time2 > #9:00:00 PM# Then Mablax1 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(#9:00:00 PM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h") - Format(#9:00:00 PM#, "h")) Me.Netica = Mablax1 + Mablax2 ElseIf Me.Time2 = #12:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(#9:00:00 PM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (3) Me.Netica = Mablax1 + Mablax2 ElseIf Me.Time2 > #12:00:00 AM# And Me.Time2 <= #5:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(#9:00:00 PM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (3) Mablax3 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h")) Me.Netica = Mablax1 + Mablax2 + Mablax3 ElseIf Me.Time2 >= #5:00:00 AM# And Me.Time2 <= #9:00:00 PM# Then Me.Netica = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h") - Format(Me.Time1, "h")) End If Else If Me.Time2 = #12:00:00 AM# Then Me.Netica = ((Me.Ratib * 12 * 2) / (52 * 45)) * (24 - Format(Me.Time1, "h")) ElseIf Me.Time2 > #9:00:00 PM# Then Me.Netica = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h") - Format(Me.Time1, "h")) ElseIf Me.Time2 <= #5:00:00 AM# Then If Me.Time1 <= #5:00:00 AM# And Me.Time1 <= #12:00:00 AM# Then Me.Netica = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(#5:00:00 AM#, "h") - Format(Me.Time1, "h")) ElseIf Me.Time1 >= #12:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h")) Mablax2 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (24 - Format(Me.Time1, "h")) Me.Netica = Mablax1 + Mablax2 End If ElseIf Me.Time2 >= #5:00:00 AM# Then If Me.Time1 <= #5:00:00 AM# And Me.Time1 <= #12:00:00 AM# Then Mablax1 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(#5:00:00 AM#, "h") - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h") - Format(#5:00:00 AM#, "h")) Me.Netica = Mablax1 + Mablax2 ElseIf Me.Time1 >= #12:00:00 AM# And Me.Time2 > #12:00:00 PM# Then Mablax1 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (24 - Format(Me.Time1, "h")) Mablax2 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(#5:00:00 AM#, "h") - Format(Me.Time1, "h")) Mablax3 = ((Me.Ratib * 12 * 2) / (52 * 45)) * (Format(Me.Time2, "h") - Format(#5:00:00 AM#, "h")) Me.Netica = Mablax1 + Mablax2 + Mablax3 End If End If End If End If End Sub برنامج التعويض عن العمل الإضافي (1) (1).rar
-
هناك فرق كبير بين عنوان الموضوع و الطلب اتفضل تم استخدام هذا الكود لاحتساب العمر بالسنة Private Sub DATE_OF_BIRTH_AfterUpdate() Me.AGE.Value = DateDiff("yyyy", Me.DATE_OF_BIRTH, DATE) End Sub وللطلبية الثانية تم استخدام هذا Private Sub Command52_Click() DoCmd.OpenForm "airfare form", acNormal Forms![airfare form]![SR-No Leave].Value = Me.SR_No_Leave End Sub لكن هناك ملاحظة : هناك فراغات كتير في اسماء الحقول و النماذج ... انتبه لذلك لان هذه الفراغات راح تتعبك كثير test AMAV002.rar
-
من الاحسن قبل تحديث الفورم اي سجل عند ادخال البيانات ان لا تخلي ان يكون هناك حقل فارغ ... وفي المنتدى كتير مواضيع على هذا النحو لكن اتفضل اليك طلبك Private Sub أمر4_Click() Me.Tabl_2.SetFocus DoCmd.GoToRecord , , acFirst For I = 0 To Me.Tabl_2.Form.Recordset.RecordCount - 1 If Not (IsNull(Forms![frm]![Tabl_2]![id_1])) And (IsNull(Forms![frm]![Tabl_2]![Tex])) _ Or (IsNull(Forms![frm]![Tabl_2]![tex1])) Then MsgBox "أدخل هذا الحقل !!!", 48, "تـنـبـيـه !" ' Forms![frm]![Tabl_2].SetFocus If IsNull(Forms![frm]![Tabl_2]![Tex]) Then Forms![frm]![Tabl_2]![Tex].SetFocus Else Forms![frm]![Tabl_2]![tex1].SetFocus End If Exit Sub End If DoCmd.GoToRecord , , acNext Next I End Sub Mic.rar
-
تصميم لوحة ادخال الارقام في مربع النص
Shivan Kurdi replied to محب اوفيسينا's topic in قسم الأكسيس Access
اعمل زر واحد واکتب عنوانه اي كابشنه (تبديل الى اللغة العربية) واستخدم هذا الكود Private Sub Command54_Click() If Me.Command54.Caption = "تبديل الى اللغة العربية" Then Me.Txt.NumeralShapes = 2 Me.Command54.Caption = "تبديل الى اللغة الانكليزية" ElseIf Me.Command54.Caption = "تبديل الى اللغة الانكليزية" Then Me.Txt.NumeralShapes = 1 Me.Command54.Caption = "تبديل الى اللغة العربية" End If End Sub -
جمع اعلى ثلاث سجلات فقط من مجموع قيم
Shivan Kurdi replied to abdullah 219's topic in قسم الأكسيس Access
نحتاج توضيح اكثر شوف تقريرك ماذا تريد عن المستوى الحلق لنادي الابتسام هذه هو درجات ممكن تشرح لي بالتفصيل ما هي درجات لكي اجمع بين ثلاث اكبر درجات -
تصميم لوحة ادخال الارقام في مربع النص
Shivan Kurdi replied to محب اوفيسينا's topic in قسم الأكسيس Access
اتفضل تم استخدام هذه الاكواد في نموذجك Private Sub a2_Click() Me.Txt = Me.Txt & Me.a2.Caption End Sub Private Sub a3_Click() Me.Txt = Me.Txt & Me.a3.Caption End Sub Private Sub a4_Click() Me.Txt = Me.Txt & Me.a4.Caption End Sub Private Sub a5_Click() Me.Txt = Me.Txt & Me.a5.Caption End Sub Private Sub a6_Click() Me.Txt = Me.Txt & Me.a6.Caption End Sub Private Sub a7_Click() Me.Txt = Me.Txt & Me.a7.Caption End Sub Private Sub a8_GotFocus() Me.Txt = Me.Txt & Me.a8.Caption End Sub Private Sub a9_Click() Me.Txt = Me.Txt & Me.a9.Caption End Sub Private Sub أمر23_Click() Me.Txt = Me.Txt & Me.أمر23.Caption End Sub Private Sub أمر24_Click() Me.Txt = Me.Txt & Me.أمر24.Caption End Sub Private Sub أمر25_Click() Me.Txt = "" End Sub Private Sub أمر26_Click() Me.Txt = Me.Txt & Me.أمر26.Caption End Sub لوحة ارقام وحروف.rar -
اتفضل Private Sub أمر4_Click() Me.Tabl_2.SetFocus DoCmd.GoToRecord , , acFirst For I = 0 To Me.Tabl_2.Form.Recordset.RecordCount - 1 If Not (IsNull(Forms![frm]![Tabl_2]![id_1])) _ And (IsNull(Forms![frm]![Tabl_2]![tex1])) _ Or (Forms![frm]![Tabl_2]![tex1] = "") Then MsgBox "أدخل هذا الحقل !!!", 48, "تـنـبـيـه !" Forms![frm]![Tabl_2].SetFocus Forms![frm]![Tabl_2]![tex1].SetFocus Exit Sub End If DoCmd.GoToRecord , , acNext Next I End Sub Mic.rar
-
اتفضل اليك هذا الرابط
-
جمع اعلى ثلاث سجلات فقط من مجموع قيم
Shivan Kurdi replied to abdullah 219's topic in قسم الأكسيس Access
ممكن ترفق لنا قاعدة بياناتك للعمل عليها -
شکرا لك استاذ @ابوخليل على التدخل في الموضوع في الحقيقة انا رأيت طلب اخونا السالم لكن انا ما رديت عليه بسبب عدم توحيد طلبه اي بيطلب جزء جزء نحن نريد من يفتح سؤال بيعرف ماذا يريد بالضبط في الاول لكي لا نهدر كتير من وقتنا والان اطلب من السيد السالم ان يجلس في جوء هادئ ويشرب كأس من القهوة و يفكر ماذا يريده بالضبط ؟ وحد طلبيته لكي تحصل على جواب كافي في اسرع وقت ممكن تحياتي لكم
-
اتفضل فرضنا عندك حقل باسم RaqamQawmi قبل تحديث اكتب هذا الكود Private Sub RaqamQawmi_BeforeUpdate(Cancel As Integer) If Left(Me.RaqamQawmi, 1) <> 1 And Left(Me.RaqamQawmi, 1) <> 2 Then MsgBox "الرقم الذي ادخلته غير صحيح رجاءاًادخل رقم الصحيح" Cancel = True ElseIf Len(Me.RaqamQawmi & "") <> 12 Then MsgBox "ادخل الرقم الوطني المكون من 12 رقم" Cancel = True End If End Sub
-
استأذنك استاذ جعفر تريدي ان تختار من الاختيارات اللي في كومبوبوكس وما تريد ان تضيف شي اخر اليكي هذا في حدث نوت ان ليست للكومبوبوكس Private Sub CoreHereke_NotInList(NewData As String, Response As Integer) Response = acDataErrContinue End Sub
-
تشغيل برنامج الاكسس في اي مجلد ، وبدون رسائل الأمان
Shivan Kurdi replied to jjafferr's topic in قسم الأكسيس Access
شكرا لك استاذ تم التجربة على ويندوز 7 , 32 بت و اوفيس 2010 , 32 بت وتم النجاح 100% شكرا لك مجددا -
طبعا انا ما رديت على كثير من المواضيع لاني ما فهمت منه جيدا ماذا يريده بالضبط نفتخر بك ... وشكرا لك لانك معنا ..
-
اصبر ولا تتعصب استأذنك استاذ الحبيب ... طبعا لا تفهم من الاسئلة البسيطة اتفضل الیک الحل بالصور Database11.rar
-
اليك هذا Private Sub ÃãÑ21_Click() On Error Resume Next Dim AmirALDafia, RqmAlShik, Tarix, MyMonth AmirALDafia = Me.ÃãÑ_ÏÝÚ: RqmAlShik = Me.ÑÞã_Ôíß: Tarix = Me.today1: MyMonth = Me.month1 DoCmd.GoToRecord , , acNext Me.ÃãÑ_ÏÝÚ = AmirALDafia: Me.ÑÞã_Ôíß = RqmAlShik: Me.today1 = Tarix: Me.month1 = MyMonth End Sub test5005.rar