-
Posts
10057 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
408
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
تفضل لما شفت انك مستخدم الامر Dlookup في النموذج ونفسه في الكود ، يعني انك تطلب بيانات من الجدول 8 مرات * 2 = 16 مرة ، نظرت فيه ، . فجمعت بين الاستعلام مصدر بيانات النموذج ، والاستعلام QryRawBlnc اللى تحتاج منه نتيجة حقل Balance ، وربطت الجدولين بالحقل code . عليه ، اصبح هذا الاستعلام الجديد مصدر بيانات النموذج . وقيمة الحقل Balance اصبحت جاهزة . وعليه تم تعديل الكود ليشمل هذه التغييرات Private Sub Coun_Count() Dim rst As DAO.Recordset Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Counter = 0 For i = 1 To RC ''''''''''''''''''''''''''''''''''''''''''''''''''''''' Dim con As Long con = Nz(rst!cons, 0) * Nz(Me.T3, 0) Debug.Print "con= " & con & " >> " & "Balance= " & rst!Balance 'If con > Bal Then If con > rst!Balance Then Counter = Counter + 1 'Count cons 'Counter = Counter + rst!cons 'Sum cons End If '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' rst.MoveNext Next i Me.Coun = Counter rst.Close: Set rst = Nothing End Sub . ولكن خلينا نشوف الحساب والمقارنة اللي يشوفها الكود ، وبسبب استعمالك Long للمتغير con ، ترى قيمة معادلتك بدون كسور عشرية (Long معناه Integer طويل ، يعني رقم كامل بدون منازل عشرية) ، ولما غيرته الى Double ، اعطى القيمة حسب الظاهر في النموذج Dim con as Long con= 1 >> Balance= 100000 con= 4 >> Balance= 400000 con= 1 >> Balance= 100000 con= 0 >> Balance= 0.005 con= 0 >> Balance= 4 con= 2 >> Balance= 200000 con= 3 >> Balance= 0 con= 2 >> Balance= 200000 -------------------------------- Dim con as Double con= 1 >> Balance= 100000 con= 4 >> Balance= 400000 con= 1 >> Balance= 100000 con= 0.00004 >> Balance= 0.005 con= 0.00004 >> Balance= 4 con= 2 >> Balance= 200000 con= 3 >> Balance= 0 con= 2 >> Balance= 200000 جعفر 824.3.count.accdb.zip
-
اللي تشوفه مناسب لعملك 824.count.accdb.zip
-
استخدم هذا الكود Private Sub Coun_Count() Dim rst As DAO.Recordset Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Counter = 0 For i = 1 To RC If Nz(rst!cons, 0) * Nz(Me.T3, 0) > 0 Then Counter = Counter + 1 'Count cons 'Counter = Counter + rst!cons 'Sum cons End If rst.MoveNext Next i Me.Coun = Counter rst.Close: Set rst = Nothing End Sub Private Sub T3_AfterUpdate() Call Coun_Count End Sub جعفر
-
اخي عمرو لا يمكن عمل اي متغيرات للامر Count او Sum في ذيل النموذج ، غير اسم الحقل مثل (Count(myField او Count(*)p اما اذا اردنا الحساب بشروط ، فيجب ان نعمله في الكود ، وعملت هذه الوحدة Private Sub Coun_Count() Dim rst As DAO.Recordset Set rst = Me.RecordsetClone rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Counter = 0 For i = 1 To RC If rst!cons > 0 Then Counter = Counter + 1 'Count cons 'Counter = Counter + rst!cons 'Sum cons End If rst.MoveNext Next i Me.Coun = Counter rst.Close: Set rst = Nothing End Sub . وتستطيع مناداتها من اي حدث من النموذج هكذا Call Coun_Count . مثلا ، في حدث النقر على اسم productcode في الحقل t0 : Private Sub t0_Click() Me.T216 = "" & Me.t0.Column(0) & "" Me.T216.Requery search_Products = "" Me.Requery Me.T3.SetFocus Call Coun_Count End Sub جعفر 824.count.accdb.zip
-
مثال رائع ، من اخ رائع بارك الله فيك اخوي ابو خليل ، من ضمن تجاربي ، عملت مثل عملك ، ولكن ما كان راضي يضبط كان محتاج يد معلم جعفر
-
وعليكم السلام جرب هذا =Count(IIf([text286]>0,1,0)) جعفر
-
والله ما فهت !!
-
-
وعليكم السلام ارسلت قيمة ID_Sanf من النموذج الفرعي frm_mr الى حقل جديد "ID_Sanf" في النموذج frmEdrajSenfm ، وبعدين اضفته في كود انزالك البيانات الى النموذج الفرعي frmSub_Recall_sales جعفر 822.اداج اسم الصنف .mdb.zip
-
الحمدلله
-
الله يرضى عليك يا سفيان ، لا تفتكر اني اعرف اللي انت تعرفه ، واعطني المعلومة كاملة !! ثم ان برنامجك بالفرنسي !!
-
السلام عليكم اخي سفيان انزلت مرفقك واشتغل عندي مباشرة ، رجاء تشوف الرابط الذي ارفقته لك في مشاركتي السابقة حول اعدادات الوندوز ، فالظاهر مشكلتك من هناك. جعفر
-
اخي كريمو انا توصلت الى كيفية جعل كل رقم في صفحة مستقلة (لأني اعتقد بأنه الطريق الصحيح) ، ولكني لم اصل الى الحل بعد جعفر 820.التقرير المقسم.mdb.zip
-
حساب قيمة مجموع الوقت بناء على عنصر السجل المختار
jjafferr replied to hh88's topic in قسم الأكسيس Access
نعم يمكن ، ولكني في كودك لا انصح ابداً ، لأنك ما محتاج ان تقوم بهذا الشيء ، ثم انه يكون من المستحيل تعديل الكود لاحقا ، وانا هنا اضع كود "داخل مربع النص" للدعابة فقط Me.Total_Time = Int(DSum("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / 60) & ":" & Round((DSum("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / 60) - Int(DSum("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / 60) * 60) Me.Avg_Time = Int(DSum("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / DCount("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / 60) & ":" & Round((DSum("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / DCount("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / 60) - Int(DSum("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / DCount("[Minutes]", "qry_CT", "[سرعة الخدمة]='" & Me.OpenArgs & "'") / 60) * 60) واعتذر عن رفع صوتي ، ولكني اردت ان اتأكد انه وصلك جعفر -
كود او امر يكتب ويقوم بإدخال بيانات على فورم لوحده
jjafferr replied to عوض's topic in قسم الأكسيس Access
العفو اخي عوض الظاهر انك فهمت ملاحظتي بالخطأ !! انا مجرد اشرت لموضوع كسر كلمة السر وعدم تجاوزه ، وارحب بمشاركة الاعضاء في الاجابة على سؤالك بس للعلم ، التفاصيل اللي اعطيتها ليست كافية للرد على سؤالك ، فيجب ان تعطي تفاصيل اكثر ، وياريت اسم/صورة من البرنامج الاخر اللي تتكلم عنه جعفر -
السلام عليكم كود اخي ابو خليل شغّال تمام ، بشرط ان تكون اعدادات النموذج تسمح بإصطياد ازرار الكيبورد قبل الذهاب الى الكود ، هكذا: . جعفر
-
شكرا أخوي أبو خليل
-
كود او امر يكتب ويقوم بإدخال بيانات على فورم لوحده
jjafferr replied to عوض's topic in قسم الأكسيس Access
وعليكم السلام متابع من الرابط السابق ، وارجو من الاعضاء ان يكونوا على قدر المسؤولية بإلتزامهم بقوانين المنتدى ، والمُثل الاخلاقية ، فلا يرىد احدنا كسر "قفل برنامجه" عن طريق اشخاص آخرين: . جعفر -
وعليكم السلام وبدلا عن أخوي أبو خليل ، تفضل: الوحدة النمطية: Option Compare Database Option Explicit 'رمهان 'اوفيسنا Public Function fn(fld) Dim y As String Dim i As Integer Dim xx As String y = "أبجدهوزحطيكلمنسعفصقرشتثخذضظغـ ىؤءئةاآإ()><.؟}{][1234567890:,/" For i = 1 To Len(fld) If InStr(1, y, Mid(fld, i, 1)) > 0 Then xx = xx & Mid(fld, i, 1) Next i fn = xx End Function . وهذا كود النقر على الزر Private Sub Command2_Click() Me.Text5 = fn(Me.Text3) End Sub . والنتيجة . جعفر 821.delete char.accdb.zip
-
السلام عليكم اخوي ابو خليل توقيعي في آخر كل مشاركة هي: وقد اعجبتني عبارتك لدقّة معانيها ، فإذا تسمح لي بإستعمالها ودمجها في توقيعي ليصبح: جعفر
-
وعليكم السلام اهلا وسهلا بك في المنتدى ، اخي احمد هذا القسم من المنتدى هو لطرح الاسئلة البرمجية ، وليس للبرامج الجاهزة ابدا العمل على برنامجك واطرح الاسئلة ، وان شاء الله تجد الجميع يساعدك ، وقبل ان تضع اي سؤال ، استخدم خاصية البحث في المنتدى ، فهو مليء بأسإلة المبرمجين ، وهناك احتمال كبير بأن يكون سؤالك قد تمت الاجابة عليه جعفر
-
مثل ما يقول المثل: الميدان يا حميدان ارفق هالجزئية من اللي انت عملته وما صار ، الاستعلام والوحدة النمطية ، واحنا نساعدك في الحل ان شاء الله جعفر
-
جلب القيم لنموذج الاضافه من نموذج فرعي بداخل الريسيي
jjafferr replied to النجاشي's topic in قسم الأكسيس Access
-
جلب القيم لنموذج الاضافه من نموذج فرعي بداخل الريسيي
jjafferr replied to النجاشي's topic in قسم الأكسيس Access