نجوم المشاركات
Popular Content
Showing content with the highest reputation on 12 نوف, 2019 in all areas
-
السلام عليكم ورحمة الله وبركاتة في مووضوع سابق طرحته بالمنتدى حذرت من موضوع اخفاء الجداول المرتبطه لما يسببه من مشاكل وأخطاء تحذير من إستخدام كود إخفاء الجداول المرتبطة فأخذت افكرفي ايجاد طريقة لحماية كائنات قاعدة البيانات كافة من وصول المستخدم ومن ضمنها عدم وصول المستخدم لكلمة سر قاعدة البيانات الخلفية والتي تكون مخزنة بالجدول MsysObjects فلم أجد افضل من طريقة وضع كلمة سر لقاعدة البيانات بشرط أن تكون بصيغة accdb أو accde هنا لن يتمكن المستخدم من تفعيل الشفت ببرنامج خارجي ولن يتمكن من الوصول الى الكائنات وهذا كان سبب طرحي لموضوع هل لديك تجربه لكسر كلمة سر قاعدة بيانات ؟ وقد اكد استاذنا @jjafferr صعوبة الحصول على الرقم السري لمثل هذا النوع من قواعد البيانات فقررت وضع كلمة السر لقواعد البيانات !!!!!!! لكن ماهو الحل مع المستخدم ؟ هل سنقوم بتسليمه كلمة السر ليستخدم قاعدة البيانات اذا كأننا لمن نصنع شئ ففكرت بإيجاد وسيط نقوم بتسليمه كلمة السر ويكون هو الوسيط بين المستخدم والبرنامج ( الواجهة ) اذا الوسيط سنضعه جنب البرنامج ونأمره بفتح البرنامج للمستخدم اذا اراد استخدامه بدون أن يفصح له عن كلمة السر بالمرفق يوجد ملفين ملف قاعدة البيانات الاساس Start محمي بكلمة سر والاخر الوسيط الذي سنقوم بمن خلاله فتح البرنامج StartDatabes. بعد تمرير كلمة السر اليه والملفين تم تحويلهما الى صيغة accde بعد تنزيل المرفق اجعل الملفيين في مجلد واحد وشغل الملف StartDatabes ملاحظة من المحتمل ان تظهر لديك رسالة في بدأ التشغيل لا يمكن قراءة مشروع Vba هنا اعتقد يجب أن يكون الوندوز لديك محدث بأخر تحديث ويجب أن تكون حزمة Microsoft .NET Framework محدثة بأخر اصدار حسب لغة الوندوز ونوعه عندك او كما يوجد لدي انا عندي الحزمة Microsoft .NET Framework 4.5.1 windos 10 office10 أخر تحديث ارجو التجربه ونتمنى الاستفاده للجميع Free.rar -------------------------------------- ملاحظات جعفر 14-7-2021 : بعد ان تم حذف الملف الاصل ، اصبح من الصعب على بعض الاعضاء متابعة الموضوع ، لذا ، وبعد إذن الاخ @kaser906 فعملت ملفاته مرة اخرى وارفقتها هنا: 1. الملف Locked.zip ، وهو الملف النهائي والذي سيتم تسليمه للزبون ، وهو الملف الذي يجب ان يجربه الاعضاء ، وفيه ملفين بصيغة accde ، 2. الملف Locked_Open_Source.zip ، يحتوي على ملفات مفتوحة المصدر ، بصيغة accdb ، والتي حولناها الى ملفي رقم 1 علاه ، 3. الملف Open_Source.zip ،يحتوي على نفس ملفي رقم 2 اعلاه بصيغة accdb ، ولكن بدون تجهيزهم لتحويلهم لصيغة accde . Locked.zip Locked_Open_Source.zip Open_Source.zip5 points
-
السلام عليكم 🙂 الطريقة التي توصلت لها : 1. التقرير الرئيسي له جدول خاص به ، به رقم صفحات التقرير (سيتم عمل هذا تلقائيا) ، 2. التقرير الفرعي رقم 1 ، والتقرير الفرعي رقم 2 ، لكل تقرير فرعي مصدر بيانات خاص به (سيتم عمل هذا تلقائيا) ، ويحتوي على حقل رقم الصفحة ، 3. بيت القصيد ، ربط التقرير الرئيسي بالتقارير الفرعية عن طريق رقم الصفحة . يجب ان اقوم بتنظيف البرنامج ، واعادة عمله على اساس ما قلته اعلاه ، وللعلم فبعض بيانات التقارير الفرعية قد تم ادخالها يدويا حتى احصل على النتيجة 🙂 التقرير الذي يعمل حسب هذه الخطة هو Report2 🙂 ولا تحاول تعمل تغيير في بيانات الجداول الاصل ، فلن تتغير النتيجة في التقرير ، في هذه النسخة اخي ابا جودي ، اعتذر عن التأخير ، بس هذا كان تحدي 🙂 ورجاء ، اذا عندك اي ملاحظة او تغيير ، وبدون اي احراج ، رجاء تخبرنا عنه ، لأن العمل تقريبا انتهى 🙂 بكرة الصباح ان شاء الله اعمل البرنامج بصورته النهائية 🙂 جعفر 1135.2.Consumable Material Check List (40).accdb.zip4 points
-
وعليكم السلام -يمكنك تحميل هذا من هنا فلا يحتاج الى تفعيل https://www.4shared.com/rar/vx1cv9Hxca/KutoolsforExcel1650.html وهذا رابط اخر http://www.mediafire.com/file/xcvjc4oywbvonda/Kutools.for.Excel.16.50.rar/file3 points
-
وعليكم السلام 🙂 وبدون انزال المرفق ، رجاء جرب هذا التعديل: =Nz(DSum("[mone]";"table1";"[client]='" & [x2] & "' and [id]<>" & [id]);0) جعفر2 points
-
ولقيت الحل ، بالاكسس 🙂 بس محتاج شوي علشان اعرضه ان شاء الله 🙂 جعفر2 points
-
2 points
-
اخي الفاضل قمت بتطبيق المعادله على الخليه E9 قم بسحب المعادله اسفل او اعلا وسوف تطبق على باقي الخلايا تنسيق ارقام.xlsx2 points
-
بعد إذن أستاذنا kha9009lid أ.أيمن عبادي .. هل هذا ما تريد ؟ NR in SubForm.accdb2 points
-
كان عليك رفع ملف للمعالجة لكن بامكانك تجربة هذا الشيء Abscence.xlsx2 points
-
وعليكم السلام مثال جميل الله يعطيك العافية اخي @أحمد الفلاحجى انا كانت ملاحظتي عن المرفق الاول لاني جربت تعديله الى مفتاح اساس وعمل علاقة تقبل كل الود 😃2 points
-
2 points
-
السلام عليكم بعد اذن استاذى العزيز @essam rabea ارفق لك مثال للاستاذ رضا عقيل جزاه الله خيرا ان شاء الله تستفاد منه تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق طبتم واهتديتم إضافة الرواتب للموظفين-لسنةوشهر ومكان العمل.rar2 points
-
عندى برنامج فى حالة فتحه يظهر ليه خطأ sub من فضلكم ازاى اصحح هذا الخطأ Declare Sub CLTAPI_ChooseColor Lib "msaccess.exe" Alias "#53" _ (ByVal hwnd As Long, rgb As Long)1 point
-
العفو منكم استاذى بل انا من يستوجب عليه الاعتذار لكم استاذى القدير ومعلمى القدير و والدى الحبيب الاستاذ @jjafferr الموضوع بالنسبة لى كان تقريبا شبة مستحيل لاننى بحث على الانترنت فى المواقع برسم الجداول برمجيا من خلال الـ vba وجدت القليل جدا بهذا الصدد وما لم استطع فهمه النتيجة الان بفضل الله تعالى ثم فضلكم استاذى الجليل رائعة باقى شئ بسيط وهو انت تظهر فقط البيانات فى الجزء العلوى او السفلى بناء على شرط true بما يتم اختياره والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و والدى الحبيب استاذ @jjafferr والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و اخى الحبيب استاذ @AlwaZeeR والشكــر كل الشكر والتقدير لكم استاذى الجليل ومعلمى القدير و اخى الحبيب استاذ @essam rabea1 point
-
السلام عليكم ورحمة الله حل باستعمال الدالتين INDEX و MATCH (بالفرنسية EQUIV) في الملف المرفق... بن علية حاجي Etude.xlsx1 point
-
تعديل فقط على كود الاستاذ جعفر ليعمل بالمثال جزاك الله خيرا استاذى العزيز جعفر1 point
-
1 point
-
السلام عليكم تم إضافة معادلة أخي الكريم سليم بتصرف طفيف (حسب ما تريد) وتم أيضا التعديل على الكود ليقوم بالعمل نفسه وبالشروط نفسها (في عمود آخر) وما يبقى إلا برمجة هذا الكود ليعمل تلقائيا عند فتح الملف (وعند التعديل على البيانات)... بن علية حاجي Book1 (3).xlsm1 point
-
كفاك تشويقا أبا جعفر أبشر أبا جودى سيأتيك مطوِّع الأوفيس بالحلول العتيه .. للتقارير الفرعيه1 point
-
1 point
-
السلام عليكم اخوانى واساتذتى الافاضل جزاكم الله خيرا اساتذتى وجميع اساتذتى اللذين تعلمت واتعلم على ايديهم لكم الفضل بعد الله سبحانه وتعالى واسال الله انا يكتب لكم جميعا بكل حرف حسنه ويتقبل منكم ويبارك لكم فى جميع ما تحبون اخى العزيز استاذ @ابو ياسين المشولي ارفقت مثال لعله ما تطلب ان شاء الله فان كان ما تقصد فارجو منك فضلا لا امرا اطلع على الرابط الموضوع فى تعليق الوينرار للاستفاده منه لان به نقاش مفيد وان شاء الله يكون ما تريد استاذى الغالى استاذ خالد @kha9009lid كل الود والاحترام والحب لكم اخوانى فالله من غير الملاحظات والاخطاء والتعديلات نتعلم ونصل باذن الله لكل شىء مفيد وميسر وبصوره بسيطه وسهله ومتقنه وهذا بفضل الله سبحانه وتعالى ثم بفضل مجهودات جميع الاساتذه والاعضاء ونسال الله ان يعلمنا من فضله وان ينفعنا بما علمنا انه هو العليم الحكيم تقبلوا تحياتى وتمنياتى للجميع بالتوفيق طبتم واهتديتم ترقيم تلقائى مصلح الحريصي.rar1 point
-
1 point
-
نزل مثال عملي خلينا نجرب ونشوف ايش السبب يمكن الاكسس يحتاج الى امور ليست متوفرة على نسختك حيث يكو ن البرنامج تم عمله على نسخة احدث ويكون عندك نقص بالمكتبات1 point
-
أ.ramy145236 انا مش عارف كد انا فهمت ولا لأ .. جرب ووافنى بالنتيجة بالتوفيق final.zip1 point
-
أ.عبدالعزيز محمد هو صراحة ليس مطالب من السادة أعضاء ورواد المنتدى أن تنشئ جداول وملفات إكسيل حتى تحل لك مشكلة أنت أدرى بها وقد تفضل أخى @SEMO.Pa3x برفع مقاطع فيديو لشرح ما تريد من إستيراد جدول إكسيل الى الأكسيس .. وكان من الأحرى أن ترفق ملفاتك ليجرى العمل عليها فهناك طرق كثيرة لتنفيذ ما تفضلت وطلبته .. وبالنسبة لسرية البيانات كان يمكن التغلب عليها بإدراج 20 سجل فقط ببيانات وهمية وعموما 1- قم بربط ملف الإكسيل بالأكسيس المراد الاستيراد له (ملف الإكسيل يجب أن يحتوى على رأس جدول واحد) 2- قم بعمل إستعلام إلحاق من ملف الإكسيل المرتبط الى ملف الأكسيس إذا كان موجودا أو إستعلام إنشاء جدول من ملف الإكسيل الى إسم الجدول الجديد إن لم يكن موجودا 3- شغل الإستعلام .. مبروك جدول إكسيل تم نسخه 4- قم بحذف جدول الإكسيل المرتبط بالتوفيق1 point
-
1 point
-
1 point
-
1 point
-
كل التقدير والمحبة والاحترام لك اساتذتي الكرام الاستاذ الكبير a.kawkab والاستاذ القدير الـعيدروس وجبر الله بخاطركم دنيا وآخره وجزاكم الله عنا كل خير 🌴🌴 بارك الله بكم ودمتم لهذا الصرح العملاق1 point
-
يعني النصف العلوي لازم يكون فاضي في الصفحة الثانية والثالثة ووو ؟ جعفر1 point
-
أ.Ali Sadiq جزاك الله خير .. فعلا ملاحظة قيمة أرجو من صاحب الموضوع أن يأخذها بمحمل الجد1 point
-
1 point
-
أ.mohamed elalfy هل هذا المطلوب بالتوفيق New Microsoft Access Database2.zip1 point
-
تعديل بسيط على الكود وضع سطر اضافي بين علامات الـــ +++++ Option Explicit Dim ARR() Dim D As Worksheet, P As Worksheet, I# Sub Data_VAL() Dim K%: K = 1 Set D = Sheets("data"): Set P = Sheets("pv") For I = 1 To D.Cells(Rows.Count, 1).End(3).Row If D.Range("A" & I).Interior.Color = RGB(220, 230, 241) Then ReDim Preserve ARR(1 To K) ARR(K) = D.Range("A" & I).Value K = K + 1 End If Next With P.Range("H5").Validation .Delete .Add 3, , , Join(ARR, ",") End With End Sub '++++++++++++++++++++++++++++++++++++++++++++ Sub get_data() Dim First_Ro%, Laste_ro% Dim Copy_RG As Range Dim clas Dim m%: m = 11 Dim col: col = 2 Set D = Sheets("data"): Set P = Sheets("pv") P.Range("A11:C500").ClearContents P.Range("I11:K500").ClearContents clas = P.Range("H5").Value First_Ro = D.Range("A:D").Find(clas, after:=D.Cells(1000, 1), LOOKAT:=1).Row + 4 Laste_ro = D.Range("A" & First_Ro).End(4).Row Set Copy_RG = D.Range(Cells(First_Ro, 2), Cells(Laste_ro, 3)) For I = 1 To Copy_RG.Rows.Count '++++++++++++++++++++++++++++++ If I > P.Range("H6") Then Exit Sub '+++++++++++++++++++++++++++++++ If m = 36 Then m = 11: col = 10 With P.Cells(m, col - 1) .Value = I .Offset(, 1) = Copy_RG.Cells(I, 1) .Offset(, 2) = Copy_RG.Cells(I, 2) End With m = m + 1 Next End Sub الملف من جدبد med_SALIM_new.xlsm1 point
-
اهلا بك فى المنتدى وذلك بإستخدام هذه المعادلة =SUMIFS(INDIRECT("'"&F$1&"'!$F:$F"),INDIRECT("'"&F$1&"'!$D:$D"),$D2,INDIRECT("'"&F$1&"'!$E:$E"),$E2) نموذج1.xlsx1 point
-
جرب المرفق واعتذر ما انتبهت لاعادة رفعك للموضوع NR in SubForm.accdb1 point
-
السلام عليكم ورحمة الله أعتذر مرة أخرى للخطأ الذي وقع في ملفي المرفق الثاني، مع ملاحظة أن الخطأ مني وليس منك، وقد تم التصحيح في الملف المرفق (أرجو ذلك إن لم يظهر مشكل آخر)... ملاحظة: تم إظافة رقم حساب للبيانات المرحلة "حساب رقم 44" المذكور في اليوم الثالث وغير موجود في جدول الترحيل... بن علية حاجي ترحيل بيانات من شيت رئيسي الي شيت آخر ( بمعادلات او اكواد ) المهم 1النتيجة - ا-بن عليه.xls1 point
-
ما هي دي نفس المعادلات شغالة زي الفل في الملف المرفق book_s.xls1 point
-
هذا ماكرو اخر يعتمد على المصفوفات (يجب ان يكون اسرع بكثير خاصة اذا كانت البيانات كثيرة ) لا وجد لاي معادلة Option Explicit Sub get_val_BY_ARRYS() Dim My_Sh As Worksheet Dim ARR, S#, T#, R#, I#, k As Byte Set My_Sh = Sheets("Sheet1") R = My_Sh.Cells(Rows.Count, 3).End(3).Row My_Sh.Range("E4").Resize(R - 3, 4).ClearContents For I = 4 To R With My_Sh.Range("D" & I) If Not IsNumeric(.Value) Then GoTo next_i Select Case .Value Case Is < 100: ARR = Array(.Value, "", "") Case Is < 200: ARR = Array(100, .Value - 100, "") Case Is > 200: ARR = Array(100, 100, .Value - 200) End Select .Offset(, 1).Resize(, 3).Value = ARR For k = LBound(ARR) To UBound(ARR) If IsNumeric(ARR(k)) Then T = ARR(k) * Range("L4").Offset(, k) Else T = 0 End If: S = S + T Next .Offset(, 4) = S: S = 0 End With next_i: Next End Sub1 point
-
ممكن الاستفاده بهذا الفورم استخدام صفحة اساسية للطباعه ومصدر البيانات ممكن تشير له عبر الفورم والاساس جلب البيانات لصفحة الطباعه يحتاج تغير المصدر بكل مااردت تغير مصدر البيانات للطباعه في الدالات الموجود بصفحة الطباعه والفورم شاهد المرفق عدلت بحيث تحط المعطيات في بداية الكود بيان الحالة3.xlsm1 point
-
بعد اذن الاستاذ هذا الكود يطبع جميع الشيتات باستثناء شيت DATA ويمكنك تعديله حسب المدى المطلوب sub test 'كود طباعة جميع الشيتات dim ws as worksheet dim sh as worksheet: set sh = sheets("DATA") ' الشيت المستثنى من الطباعة Dim lr As Long For Each ws In Sheets lr = ws.Range("a" & Rows.Count).End(xlUp).Row If ws.Name = "DATA" Then GoTo 1 ' الشيت داتا سميه ما شئت ولك غيره في السطر الثاني و السادس ws.Range("a1:g" & lr).PrintOut 1: Next ws end sub1 point
-
1 point
-
تفضل لك ما طلبت على الرغم انى افضل العمل على ملف الإكسيل مباشرة دون العمل على الفورم Followup patients.xlsm1 point
-
هذه المعادلة في الحلية C4 واسحب نزولاً =MAX($A$4:$A$10000)+ROWS($C$4:C4)1 point
-
1 point
-
1 point
-
1 point
-
استبدل هذا: Expr1: DSum("[Rest_leave]","vacations","[EmpID]=" & [EmpID] & "") بهذا: Expr1: Nz(DSum("[Rest_leave]","Vacations","Nz([EmpID],0)=" & Nz([EmpID],0) & "AND Nz([ID],0)<=" & Nz([ID],0)),0) اجازات الموظفين.rar1 point