-
Posts
4237 -
تاريخ الانضمام
-
Days Won
180
Foksh last won the day on نوفمبر 16
Foksh had the most liked content!
السمعه بالموقع
2381 Excellentعن العضو Foksh

- تاريخ الميلاد 07/02/1982
البيانات الشخصية
-
Gender (Ar)
ذكر
-
Job Title
فني صيانة موبايل وكمبيوتر
-
البلد
الأردن ♥
-
الإهتمامات
برمجة وصيانة الموبايل والكمبيوتر
اخر الزوار
9579 زياره للملف الشخصي
-
لايتم ادراج صفوف مع ترقيم تلقائي في حال كانت الورقة محمية . هل من حل؟
Foksh replied to سك بابك's topic in منتدى الاكسيل Excel
وعليكم السلام ورحمة الله وبركاته.. لم أطلع على المرفق ، ولكن خطر ببالي استخدام التالي للسماح للماكرو او المعادلة بالاستمرار بالترقيم وعدم السماح بالتعديل من خلال:- UserInterfaceOnly:=True -
3 سجلات بناءً على ماذا ؟؟؟؟؟؟؟؟؟ انظر لنتيجة الشرط على سبيل المثال 936/2025 من الجدول الأول :- TAB1 innow oprate note_E Awarding SERR 2025-05-22 9:56:02 AM 936/2025 جارى الدراسة 2025.05.28 7071 سجل واحد . والجدول الثاني لنفس الفلترة :- TAB2 innow nooprat oprate MRNo Date Of Recipt id 2025-05-22 9:56:58 AM 2200021005 936/2025 1264/2025 2025.05.22 8222 2025-05-22 10:06:07 AM 2200021007 936/2025 1265/2025 2025.05.22 8223 سجلين اثنين . والجدول الثالث بنفس الفلترة :- TAB3 inday orderNO elcNO oprate id 2025-05-27 7:29:01 AM 5594/2025 5300221097 936/2025 8629 2025-05-27 7:29:55 AM 5595/2025 5300221100 936/2025 8630 2025-05-27 7:30:25 AM 5596/2025 5300221102 936/2025 8631 3 سجلات . فما هو الشرط الذي سيتم عرض 3 سجلات فقط ( بناءً على معرفتك بالسجلات وماهيتها ) ؟؟؟؟؟؟؟؟ فهم السؤال بالنسبة لي = الجواب كاملاً وليس نصفه . جربت هذا الإستعلام :- SELECT TAB1.innow, TAB1.oprate, TAB1.note_E, TAB1.Awarding, TAB1.SERR, TAB2.innow AS T2_innow, TAB2.nooprat, TAB2.MRNo, TAB2.[Date Of Recipt], TAB2.id AS T2_id, NULL AS inday, NULL AS orderNO, NULL AS elcNO, NULL AS T3_id FROM TAB1 INNER JOIN TAB2 ON TAB1.oprate = TAB2.oprate WHERE TAB1.oprate = '936/2025' UNION ALL SELECT TAB1.innow, TAB1.oprate, TAB1.note_E, TAB1.Awarding, TAB1.SERR, NULL AS T2_innow, NULL AS nooprat, NULL AS MRNo, NULL AS [Date Of Recipt], NULL AS T2_id, TAB3.inday, TAB3.orderNO, TAB3.elcNO, TAB3.id AS T3_id FROM TAB1 INNER JOIN TAB3 ON TAB1.oprate = TAB3.oprate WHERE TAB1.oprate = '936/2025'; والذي كانت نتيجته كمثال على نفس الفلترة = Query2 innow oprate note_E Awarding SERR T2_innow nooprat MRNo Date Of Recipt T2_id inday orderNO elcNO 2025-05-22 9:56:02 AM 936/2025 جارى الدراسة 2025-05-28 7071 2025-05-22 9:56:58 AM 2200021005 1264/2025 2025-05-22 9:56:59 AM 8222 2025-05-22 9:56:02 AM 936/2025 جارى الدراسة 2025-05-28 7071 2025-05-22 10:06:07 AM 2200021007 1265/2025 2025-05-22 10:06:07 AM 8223 2025-05-22 9:56:02 AM 936/2025 جارى الدراسة 2025-05-28 7071 2025-05-27 7:29:01 AM 5594/2025 5300221097 2025-05-22 9:56:02 AM 936/2025 جارى الدراسة 2025-05-28 7071 2025-05-27 7:29:55 AM 5595/2025 5300221100 2025-05-22 9:56:02 AM 936/2025 جارى الدراسة 2025-05-28 7071 2025-05-27 7:30:25 AM 5596/2025 5300221102 ومع ذلك لم أفهم شرطك أو المطلوب .
-
Foksh started following فتح نموذج عن طريق جدول , استعلام من ثلاث جداول , نموذج فرعي داخل صفحة رئيسية بقائمة جانبية و 1 اخر
-
وعليكم السلام ورحمة الله وبركاته .. كمطلب أول :- جرب هذا الإستعلام .. SELECT TAB1.innow, TAB1.oprate, TAB1.note_E, TAB1.Awarding, TAB1.SERR, TAB2.innow AS T2_innow, TAB2.nooprat, TAB2.MRNo, TAB2.[Date Of Recipt], TAB2.id AS T2_id, TAB3.inday, TAB3.orderNO, TAB3.elcNO, TAB3.id AS T3_id FROM (TAB1 LEFT JOIN TAB2 ON TAB1.oprate = TAB2.oprate) LEFT JOIN TAB3 ON TAB1.oprate = TAB3.oprate WHERE (((TAB1.oprate)=[أدخل قيمة للفلترة]));
-
شكراً للمشاركة الخفيفة .. ولي تعليقان ، قد يكون الأول سهواً أو خطأ مطبعي . وهو أن الإستدعاء ليس صحيحاً باسم الدالة المرفقة . ثانياً الدالة ستقوم بفتح التقرير ، ولكن ليس هناك أي أمر طباعة . وأفترض أنه قد يكون التعديل الصحيح للفكرة :- Public Function PrintMultipleCopies(strReportName As String, _ bytNumberOfCopies As Byte) Dim i As Integer For i = 1 To bytNumberOfCopies DoCmd.OpenReport strReportName, acViewNormal Next i End Function والإستدعاء :- Call PrintMultipleCopies("اسم التقرير", 2) حيث هنا عدد النسخ المطلوب طباعتها = 2
-
أخي الكريم بداية ، أهلاً بك مرة أخرى في المنتدى ،، ثانياً لتلافي حذف أي موضوع ، ليس عليك تكرار فتحه بموضوع جديد مستقل ، بل يكفي ان تستخدم اسلوب النداء "للرفع" أو "Up" . ثالثاً ، ولضيق الوقت ، سأرفق لك ملف من مكتبتي ، جربته ولعله تستفيد منه بالشكل الصحيح . Menu-1.zip
-
Private Sub detaché_AfterUpdate() On Error GoTo Err_detaché_Click If IsNull(Me.TxtMonth) Then MsgBox "اختر الشهر" Exit Sub End If Dim Titles1 As Variant Dim Titles2 As Variant Titles1 = Array("مصالح البلدية", "متعاقدين 8 سا", "عمال متعاقدين 5 سا", "حراس متعاقدين 5 سا", "اعوان النظافة والتطهير") Titles2 = Array("للعمال الموظفين", "للعمال المتعاقدين بالتوقيت الكامل", "للعمال المتعاقدين بالتوقيت الجزئي", "للحراس المتعاقدين بالتوقيت الجزئي", "للعمال اعوان النظافة والتطهير") Dim idx As Long idx = Me.detaché.ListIndex If idx < 0 Then Exit Sub Me.Reporte_Title.Visible = False Me.Reporte_Title = Titles1(idx) Me.Report_Title = Titles2(idx) Dim Copies As Long Copies = 3 ' يمكن ربطه بمربع نص في النموذج أو وضع رقم ثابت DoCmd.OpenReport "rptDiscount", acPreview, , , , "qry_rptD|" & Copies Exit Sub Err_detaché_Click: If Err.Number = 2501 Then Resume Next End Sub واعتذر عن المتابعة ، لأسباب صحية
-
هدية .. حضور وانصراف الموظفين .. بسيط مختصر .. وجاهز للعمل
Foksh replied to ابوخليل's topic in قسم الأكسيس Access
فشلت محاولتي في ضبط الوقت والتاريخ الآلي من خلال آكسيس ، فالأفكار التي كانت لدي تعتمد على تشغيل آكسيس كمسؤول . وهذا ما لا يمكن تقييد المستخدم به . سأحاول بطريقة أخرى -
التعليق الموجود بجانب السطر الذي ظهر عنده الخطأ . تركته لك لتمكينك وتخييرك بإدخال قيمة عدد النسخ بشكل يدوي من خلال مربع نص ، أو تستبدل الجزء بقيمة رقمية ثابتة لعدد النسخ . على العموم ، استبدل الجزء بأي رقم تريده ليكون عدد النسخ ، فقط لا غير .
-
لو أنك قرأت التعليق أخي طاهر .. استبدل الجزء :- Nz(Me.txtCopies, 1) برقم يمثل عدد النسخ التي تريد طباعتها .
-
تفضل Prin3.zip
-
جرب هذا التعديل الجذري :- Private Sub detaché_AfterUpdate() On Error GoTo Err_detaché_Click If IsNull(Me.TxtMonth) Then MsgBox "اختر الشهر" Exit Sub End If Dim Titles1 As Variant Dim Titles2 As Variant Titles1 = Array("مصالح البلدية", "متعاقدين 8 سا", "عمال متعاقدين 5 سا", "حراس متعاقدين 5 سا", "اعوان النظافة والتطهير") Titles2 = Array("للعمال الموظفين", "للعمال المتعاقدين بالتوقيت الكامل", "للعمال المتعاقدين بالتوقيت الجزئي", "للحراس المتعاقدين بالتوقيت الجزئي", "للعمال اعوان النظافة والتطهير") Dim idx As Long idx = Me.detaché.ListIndex If idx < 0 Then Exit Sub Me.Reporte_Title.Visible = False Me.Reporte_Title = Titles1(idx) Me.Report_Title = Titles2(idx) Dim Copies As Long Copies = Nz(Me.txtCopies, 1) ' يمكن ربطه بمربع نص في النموذج أو وضع رقم ثابت DoCmd.OpenReport "rptDiscount", acPreview, , , , "qry_rptD|" & Copies Exit Sub Err_detaché_Click: If Err.Number = 2501 Then Resume Next End Sub وداخل التقرير ، في حدث عند الفتح :- Private Sub Report_Open(Cancel As Integer) Dim Args As Variant Dim QryName As String Dim Copies As Long Dim i As Long If Not IsNull(Me.OpenArgs) Then Args = Split(Me.OpenArgs, "|") QryName = Args(0) If UBound(Args) >= 1 Then Copies = Val(Args(1)) Else Copies = 1 End If For i = 2 To Copies DoCmd.PrintOut acPages, 1, 1 Next i End If End Sub
-
هدية .. حضور وانصراف الموظفين .. بسيط مختصر .. وجاهز للعمل
Foksh replied to ابوخليل's topic in قسم الأكسيس Access
امممم ، وجهة نظر سليمة . طيب سنحاول ضبط الأمور بشكل مختلف كلياً غداً إن شاء الله ، بحيث نحاول ضبط وتصحيح الوقت والتاريخ في الكمبيوتر الى الوقت والتاريخ الفعلي من الانترنت عندما يكون غير صحيح ( ما رأيك ؟؟ ) . بحيث يتم اعتماد الوقت من الكمبيوتر بدلاً من جلبه كل عملية توقيع . -
وعليكم السلام ورحمة الله وبركاته .. بدايةً لا تقترف خطأ كبيراً بتسمية المكونات بأسماء محجوزة لآكسيس مثل ، Form أو Group . ثم ان الفكرة بسيطة جداً .. انظر الفكرة التالية في المرفق :- FAST_CA.zip
-
هدية .. حضور وانصراف الموظفين .. بسيط مختصر .. وجاهز للعمل
Foksh replied to ابوخليل's topic in قسم الأكسيس Access
ولهذا قمت بتقسيم الحدث إلى موضعين ، مع الإضافة التي ذكرتها . حيث تم منع الجمود كلياً ، لأننا سنعتمد على التحديث المحلي كل ثانية على الوقت الحقيقي من الانترنت الذي تم جلبه بدايةً . -
هدية .. حضور وانصراف الموظفين .. بسيط مختصر .. وجاهز للعمل
Foksh replied to ابوخليل's topic in قسم الأكسيس Access
وهذا بالضبط ما شعرت به عند تعيين قيمة 1000 في المؤقت بدلاً من 10000 ، وكمحاولة بسيطة للإيجاد حل يمنع حالة الجمود في النموذج عند جلب الوقت الحقيقي في النموذج . وقد خطر ببالي تجزئة الأحداث لموقعين بدلاً من حدث عند الوقت للنموذج ، بحيث يكون التعديل كالتالي .. Private Sub Form_Load() If IsInternetConnected() Then varGeneralDate = InternetTime(1) Else varGeneralDate = Now() End If End Sub Private Sub Form_Timer() Me.TimeLbl.Caption = Format(varGeneralDate + (Now() - Date), "hh:nn:ss AM/PM") End Sub عند السطر :- Me.TimeLbl.Caption = Format(varGeneralDate + (Now() - Date), "hh:nn:ss AM/PM") فأنت تجمع بين الوقت الذي جلبته من الإنترنت والمقدار الذي يمثل الساعات والدقائق والثواني التي مرت منذ منتصف الليل للوقت المحلي ، لأن Now يعطي التاريخ والوقت معاً بينما Date يعطي التاريخ فقط ، والفرق بينهما هو الوقت الحالي على جهازك . بإضافة هذا الفرق إلى الوقت المرجعي القادم من الإنترنت ، يصبح لديك ساعة تتحرك لحظياً باستخدام ساعة النظام ولكن أساسها هو الوقت الحقيقي من الانترنت ، وبذلك يظهر للمستخدم الوقت الصحيح من الإنترنت بشكل مستمر دون الحاجة إلى إعادة الاتصال كل ثانية .