بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
-
Posts
9998 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
تعبئة حقول بناء على اختيار حقل داخل النموذج
jjafferr replied to ASD-pcit's topic in قسم الأكسيس Access
وعليكم السلام 🙂 شغلك كان تمام ، ولكنه يحتاج لبعض التعديل 🙂 ولا انصحك ابدا بأن تغير فإنك ستدخل في مشاكل وصعوبات جديده انت في غنى عنها ، فلا اعلم احد يستطيع حفظ الاسم الكامل لجميع الاطباء !! المقترحات: تغيير 1 و 2 و 3 الى مربعات نص ، . عمل كود لحدث بعد التحديث لإسم الطبيب ، ويكون فيه الكود التالي: me.t2= me.[الطبيب المعالج].column(1) me.n1= me.[الطبيب المعالج].column(2) me.f1= me.[الطبيب المعالج].column(3) . تغيير مصدر سجلات اسم الطبيب الى . وتعديل اعدادات الحقل الى . والنتيجة: . جعفر 1025.d1.accdb.zip -
وعليكم السلام 🙂 هذه طريقة ادخال البيانات في الاكسل ، وهي ليست صحيحة لقاعدة بيانات !! الطريقة الصحيحة هي شيء من هذا القبيل: وحينها تقدر عمل اي شيء تريد 🙂 جعفر 1024.barna.accdb.zip
-
حيالله اخوي ابو الآء 🙂 هممم ، اذا قصدك تعمل جدول خاص للارقام ، وتكتب فيه الارقام 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1 ... 100 وفي حقل آخر في الجدول تكتب النسبة لكل رقم ، ثم في استعلام تربط حقل رقم هذا الجدول بمعدل الطالب في الجدول الآخر ، ثم تعطيه على هذا الاساس النسبة ، فنعم ممكن 🙂 جعفر
-
انا لا اعرف شيء عن الكود ، ولم اجربه ولن استطيع مساعدتك اذا كان فيه مشكله ، وانما فقط لهذه الجزئية "اعتقد" بانه يجب عليك القيام بهذه التغييرات: بدل هذا السطر اكتب والغي هذه السطور 'Prompt user if there are additional pages to scan ContScan = MsgBox("Scan another page?", vbQuestion + vbYesNo, "Continue...?") If ContScan = vbNo Then blnContScan = False End If جعفر
-
وعليكم السلام 🙂 اذا كان في حقل الاستعلام شروط كثيرة ، فأنا الجأ الى الوحدة النمطية لتسهيل الامر ، وهذا ما فعلته هنا 🙂 . والنتيجة . والوحدة النمطية: Option Compare Database Option Explicit Public Function Per(Deg As String) As String 'Expr1: IIf([Deg1]="غـ","متخلف",IIf(((Val([Deg1])/20)*100)<50,"Less50",IIf(((Val([Deg1])/20)*100) Between 50 And 55,"50-55%",IIf(((Val([Deg1])/20)*100) Between 55.1 And 60,"55-60%",IIf(((Val([Deg1])/20)*100) Between 60.1 And 65,"60-65%",IIf(((Val([Deg1])/20)*100) Between 65.1 And 70,"65-70%",IIf(((Val([Deg1])/20)*100) Between 70.1 And 75,"70-75%",IIf(((Val([Deg1])/20)*100) Between 75.1 And 80,"75-80%",IIf(((Val([Deg1])/20)*100) Between 80.1 And 85,"80-85%",IIf(((Val([Deg1])/20)*100) Between 85.1 And 90,"85-90%",IIf(((Val([Deg1])/20)*100) Between 90.1 And 95,"90-95%",IIf(((Val([Deg1])/20)*100) Between 95.1 And 99.99,"95-99%","100%")))))))))))) Dim Grade As Double Grade = ((Val(Deg) / 20) * 100) If Deg = "غـ" Then Per = "متخلف" ElseIf Grade < 50 Then Per = "Less50" ElseIf Grade >= 50 And Grade <= 55 Then Per = "50-55%" ElseIf Grade >= 55.1 And Grade <= 60 Then Per = "55-60%" ElseIf Grade >= 60.1 And Grade <= 65 Then Per = "60-65%" ElseIf Grade >= 65.1 And Grade <= 70 Then Per = "65-70%" ElseIf Grade >= 70.1 And Grade <= 75 Then Per = "70-75%" ElseIf Grade >= 75.1 And Grade <= 80 Then Per = "75-80%" ElseIf Grade >= 80.1 And Grade <= 85 Then Per = "80-85%" ElseIf Grade >= 85.1 And Grade <= 90 Then Per = "85-90%" ElseIf Grade >= 90.1 And Grade <= 95 Then Per = "90-95%" ElseIf Grade >= 95.1 And Grade <= 99.99 Then Per = "95-99%" Else Per = "100%" End If End Function جعفر 1022.Problem 55-2003.mdb.zip
-
جرب هذا الاقتراح جعفر
-
قواعد المشاركة فى الموقع و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. اخي الفاضل ، رجاء الالتزام بقوانين المنتدى ، المنتدى مليء بالخبراء ، ولكن كلً حسب وقته ، ولو انك عملت بحث في المنتدى لوجدت ان مثل هذا الموضوع قد تم مناقشته وبأمثله كثيرة. جعفر
-
ارفاق صورة من نفس مجلد قاعدة البيانات
jjafferr replied to tiger wanted's topic in قسم الأكسيس Access
وعليكم السلام 🙂 وهنا شرحت طريقة عملي لمثل هذه الامور: جعفر -
وعليكم السلام 🙂 اخي الفاضل ، الآن فقط انتهيت من عمل مهم ، وغدا على سفر ، ولكن اذا الله سبحانه وتعالى كتب لي ، فإن شاء الله بكرة الصبح القي نظرة على المرفق 🙂 جعفر
-
تفضل 🙂 وغير MMMM الى اسم حقل الشهر DLookup("[Months_Number]", "tbl_Months", "[Months_Iraqi]='" & [MMMM] & "'") جعفر
-
التحقق من المدخلات ومنع التكرار بشرط تكرار 3 حقول معا
jjafferr replied to midomashakel's topic in قسم الأكسيس Access
وعليكم السلام 🙂 تفضل: Dim strSQL As String Dim intHow_Many As Integer مشكلة اكثر من معيار ، هي الطريقة الصحيحة في كتابة الصيغة لذلك، خلينا نتعامل مع حقل واحد كل مرة، لنتفادى الخطأ strSQL = "[KararNom]='" & Me.KararNom & "'" 'نعمل اول معيار في المتغير strSQL strSQL = strSQL & " And [KararYear]='" & Me.KararYear & "'" 'نضيف معيار الحقل الثاني strSQL = strSQL & " And [CompID]=" & Me.CompId 'نضيف معيار الحقل الثالث الآن اصبح المتغير strSQL يحتوي على جميع المعايير، وبالصيغه الصحيحة، اذن فالنستعمله في الامر التالي كم عدد السجلات التي يوجد بها هذه المعايير intHow_Many = DCount("*", "TblKararat", strSQL) If intHow_Many > 0 Then اذا كان عدد السجلات اكثر من صفر، فمعناه ان اسم الموظف موجود مسبقا لذا، اوقف العملية واخبر المستخدم، ولا تحفظ السجل MsgBox "لقد تم تسجيل هذا الموظف مسبقا" Exit Sub End If جعفر -
وعليكم السلام 🙂 لا يوجد نموذج فرعي في مرفقك!! على العموم ، هذا تصحيح للكود الموجود في نموذجك: Private Sub Worker_BeforeUpdate(Cancel As Integer) Dim strSQL As String Dim intHow_Many As Integer strSQL = "[Worker]='" & Me.Worker & "'" intHow_Many = DCount("*", "Workermain", strSQL) If intHow_Many > 0 Then MsgBox "لقد تم تسجيل هذا الموظف مسبقا" cancel=true me.Undo Exit Sub End If End Sub جعفر
-
نعم ، اذا كان نوع الحقل تاريخ في الجدول ، او اذا كتبت هذا التنسيق في حقل غير مضمن في النموذج 🙂 وطبعا تقدر تستخدم التاريخ بتنسيقات اخرى ، حسب الحاجة (لا تنسى انه تنسيق ، يعني يعطيك هذا الشكل ، ولكن المضمون قد يختلف ، مثل تنسيق mmyyyy ، والذي مافيه يوم ، ولكن لما تنقر على الحقل ، يخليك تشوف اليوم 🙂 )
-
الفرق عدد الخانات ، يعني مثلا d/m/yyyy = 1/2/2019 بينما dd/mm/yy = 01/02/2019 مجرد اختلاف في التنسيق 🙂
-
حياك الله اخوي زياد 🙂
-
التحقق من المدخلات ومنع التكرار بشرط تكرار 3 حقول معا
jjafferr replied to midomashakel's topic in قسم الأكسيس Access
وعليكم السلام 🙂 تفضل: Private Sub Command24_Click() ' مفتاح اضافة موظف اخر لنفس القرار Dim strSQL As String Dim intHow_Many As Integer strSQL = "[KararNom]='" & Me.KararNom & "'" strSQL = strSQL & " And [KararYear]='" & Me.KararYear & "'" strSQL = strSQL & " And [CompID]=" & Me.CompId intHow_Many = DCount("*", "TblKararat", strSQL) If intHow_Many > 0 Then MsgBox "لقد تم تسجيل هذا الموظف مسبقا" Exit Sub End If DoCmd.RunCommand acCmdSaveRecord Dim x As Integer If MsgBox("تم اضافة وحفظ بيانات الموظف للقرار بنجاح. هل تريد اضافة موظف لنفس القرار؟", vbYesNo, "تنبيه") = vbYes Then Dim N, Y, F N = Me.KararNom: Y = Me.KararYear: F = Me.KararFrom DoCmd.GoToRecord , , acNext Me.KararNom = N: Me.KararYear = Y: Me.KararFrom = F Me.CompId.SetFocus Else DoCmd.RunCommand acCmdRecordsGoToNext Me.KararNom.SetFocus End If End Sub جعفر -
حياك الله 🙂 and you are always welcome 🙂 جعفر
-
وعليكم السلام 🙂 هذا الرابط قد يفيدك جعفر
-
حياك الله 🙂 رجاء فتح موضوع جديد لهذا الطلب ، فهو خارج عن موضعنا الذي نحن به 🙂 جعفر
-
وعليكم السلام 🙂 ومشاركة مع اخي زياد 🙂 عندك هذه الاختيارات: D1: DateSerial([date year],[date mans],[date day]) او D2: CDate([date day] & "/" & [date mans] & "/" & [date year]) او D3: Format([date day] & "/" & [date mans] & "/" & [date year],"dd/mm/yyyy") . . ولكن انظر الى النتيجة: سترى ان الحقول D1 و D2 و D3 تعطي التاريخ الصحيح ، ولكن الاكسس لا يرى ان جميع هذه الحقول هي حقل تاريخ!! انظر الى محاذاة نتيجة الحقل: فالحقول D1 و D2 فهي محاذاتها الى اليمين ، مما يعني ان الاكسس عاملها كحقل تاريخ ، بينما الحقل D3 فهو بمحاذاة اليسار ، اي اعتبرها حقل نص . وللتأكد ، انقر بالفأرة اليمين على الحقل ، والمفروض ان الاكسس يعطيك تصفية خاصة بنوع الحقل: تاريخ: . نص: وافضل هذه الاختيارات هو D1 🙂 جعفر 1016.hany - Copy - Copy.mdb.zip
-
نعم ممكن قراءة البيانات بالطريقة التي لديك ، ولكني اعطيتك الطريقة الصحيحة في قاعدة البيانات 🙂 وصدقني ، ستكون اسهل لك في المستقبل ، لإستعمالها لأغراض اخرى ، وخصوصا عن طريق الاستعلام !! جعفر
-
اعطينا مزيد من المعلومات علشان نشرح زيادة 🙂 شو الشيء اللي يعمله البرنامج ، وشو ActiveX اللي يستعمله ، والكود اللي تستعمله ، واي سطر يعطيك الخطأ 🙂 جعفر
-
السلام عليكم 🙂 عملت تغيير على النموذج ليصبح خفيفا 🙂 ولما تختار الشهر والسنه والمنطقة ، افتح الاستعلام qry_New_Request_Results ليعطيك النتيجة المطلوبة 🙂 الاستعلام : عملنا وحدة نمطية اسمها Concat لجمع بيانات الحقل ، ونرسل لها اسم الحقل المراد تجميع بياناته في سطر واحد ، ونرسل اسم الشخص ، ونعمل هذا لكل حقل . والنتيجة: . وهذه هي الوحدة النمطية: Public Function Concat(F_Name, P_Name) On Error GoTo err_Concat 'F_Name = Field Name 'P_Name = Person Name Dim rst As DAO.Recordset Dim RC As Integer Dim i As Integer Dim Add_Me As String Dim strSQL As String 'do the query SQL for this Field name ONLY strSQL = "Select [" & F_Name & "] From [New_Request] Where [PName]= '" & P_Name & "'" Set rst = CurrentDb.OpenRecordset(strSQL) 'make the Recordset in memory rst.MoveLast: rst.MoveFirst: RC = rst.RecordCount 'loop through the Records For i = 1 To RC 'ONLY add this value if we didn't add it before If InStr(Add_Me, rst(F_Name)) = 0 Then Add_Me = Add_Me & ", " & rst(F_Name) 'Concatenate these values End If rst.MoveNext Next i Concat = Mid(Add_Me, 3) 'remove the initial comma Exit_Concat: rst.Close: Set rst = Nothing Exit Function err_Concat: If Err.Number = 3021 Then 'no data Concat = "" Resume Exit_Concat ElseIf Err.Number = 3061 Then 'too few parameters, expected xx 'this error occurs when trying to run a query which needs its parameters from a Form, 'the Form should be open with the parameter, then this code take the values properly Dim qdf As DAO.QueryDef Dim prm As Parameter ' For Each qdf In CurrentDb.QueryDefs ' If qdf.Name = "NewQueryDef" Then ' CurrentDb.QueryDefs.Delete "NewQueryDef" ' Exit For ' End If ' Next Set qdf = CurrentDb.CreateQueryDef("NewQueryDef", strSQL) For Each prm In qdf.Parameters prm.Value = Eval(prm.Name) Next prm Set rst = qdf.OpenRecordset(dbOpenDynaset) CurrentDb.QueryDefs.Delete "NewQueryDef" Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Function جعفر 1015.Concatenate.accdb.zip