نجوم المشاركات
Popular Content
Showing content with the highest reputation since 12/12/25 in all areas
-
4 points
-
اعرض الملف إجعل مربع القائمة يتناسق مع بقية تنسيقات النموذج بإستخدام أداة مربع القائمة المخصص {سلسلة الأدوات المساعدة المخصصة} كما يعلم الجميع فإن عنصر التحكم (مربع القائمة) القياسي من عناصر التحكم التي لاتمنحنا خيارات أوسع في التنسيق كمحاذاة النص أو تغيير لون الخط أو لون التحديد وغيرها من التنسيقات التي تجعله يتماشى مع بقية عناصر التحكم بإستخدام هذه الأداة سنحصل على مربع قائمة مخصص يقوم بمنحنا خيارات تنسيق واسعة مرفق لكم مجلد يحتوي على - نسخة توضيحية لوظائف الأداة (أرجو أن يتم فتح هذا الملف في البداية) - مستند وورد يحتوي على تعليمات (يرجى قرائتها بتركيز وتطبيق الخطوات كما وردت) يحتوي هذا المستند في نهايته على تلميحات مهمة ستساعدكم في حال ظهور بعض الأخطاء أثناء العمل - نسخة بإسم القالب والتي وكما تعودنا بأنها ستحتوي على الكائنات الضرورية لعمل الأداة - ملف مضغوط يحتوي على نسخة تدريبية ليتم تطبيق الخطوات الواردة في التعليمات عليها الملاحظة التي أود تقديمها هنا أنه في البداية قد يواجه البعض صعوبة في العمل مع الإداة والذي يمكن تجاوزها بقراءة وتنفيذ التعليمات أكثر من مرة لذلك تم وضع النسخة التدريبية في ملف مضغوط حتى يمكنكم الحصول على نسخة فارغة جديدة في حال أردتم إعادة تطبيق التعليمات للتدرب تحياتي صاحب الملف منتصر الانسي تمت الاضافه 01/09/26 الاقسام قسم الأكسيس3 points
-
Version 1.0.0
15 تنزيل
كما يعلم الجميع فإن عنصر التحكم (مربع القائمة) القياسي من عناصر التحكم التي لاتمنحنا خيارات أوسع في التنسيق كمحاذاة النص أو تغيير لون الخط أو لون التحديد وغيرها من التنسيقات التي تجعله يتماشى مع بقية عناصر التحكم بإستخدام هذه الأداة سنحصل على مربع قائمة مخصص يقوم بمنحنا خيارات تنسيق واسعة مرفق لكم مجلد يحتوي على - نسخة توضيحية لوظائف الأداة (أرجو أن يتم فتح هذا الملف في البداية) - مستند وورد يحتوي على تعليمات (يرجى قرائتها بتركيز وتطبيق الخطوات كما وردت) يحتوي هذا المستند في نهايته على تلميحات مهمة ستساعدكم في حال ظهور بعض الأخطاء أثناء العمل - نسخة بإسم القالب والتي وكما تعودنا بأنها ستحتوي على الكائنات الضرورية لعمل الأداة - ملف مضغوط يحتوي على نسخة تدريبية ليتم تطبيق الخطوات الواردة في التعليمات عليها الملاحظة التي أود تقديمها هنا أنه في البداية قد يواجه البعض صعوبة في العمل مع الإداة والذي يمكن تجاوزها بقراءة وتنفيذ التعليمات أكثر من مرة لذلك تم وضع النسخة التدريبية في ملف مضغوط حتى يمكنكم الحصول على نسخة فارغة جديدة في حال أردتم إعادة تطبيق التعليمات للتدرب تحياتي3 points -
3 points
-
لدي هذا التطبيق يقوم باختبارات ادارية متنوعة ارجو ان تبدو رأيكم فيه مع جزيل الشكر Administrative_Tests.rar3 points
-
ممكن يكون طلبك هنا https://www.youtube.com/watch?v=M1DhpzkT8kA او جرب هذا الكود: Sub Observer_FullSystem() Dim ws As Worksheet, wsReport As Worksheet Dim NamesArr() As Variant Dim UsedRow As Object, UsedCol As Object, UsedAll As Object Dim lrNames As Long, lrRows As Long, lrCols As Long Dim r As Long, c As Long, i As Long Dim Available() As String Dim cnt As Long, MaxAllowed As Long, TotalCells As Long Dim TryCount As Long Dim MainCols As Long: MainCols = 2 ' عدد الأعمدة الأساسية Set ws = ActiveSheet Application.ScreenUpdating = False Randomize ' ===== Backup ===== ws.Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = "Backup_" & Format(Now, "ddmmyy_hhmmss") ws.Activate ' ===== قراءة الأسماء ===== lrNames = ws.Cells(ws.Rows.Count, 2).End(xlUp).Row NamesArr = ws.Range("B3:B" & lrNames).Value ' ===== حدود الجدول ===== lrRows = ws.Cells(ws.Rows.Count, 3).End(xlUp).Row lrCols = ws.Cells(2, ws.Columns.Count).End(xlToLeft).Column ws.Range(ws.Cells(3, 4), ws.Cells(lrRows, lrCols)).ClearContents ' ===== الحد الأقصى ===== TotalCells = (lrRows - 2) * (lrCols - 3) MaxAllowed = Application.WorksheetFunction.RoundUp(TotalCells / (lrNames - 2), 0) Set UsedAll = CreateObject("Scripting.Dictionary") ' ===== التوزيع ===== For r = 3 To lrRows Set UsedRow = CreateObject("Scripting.Dictionary") For c = 4 To lrCols TryCount = 0 RetryCell: TryCount = TryCount + 1 If TryCount > 300 Then GoTo NextCell Set UsedCol = CreateObject("Scripting.Dictionary") For i = 3 To r - 1 If ws.Cells(i, c).Value <> "" Then UsedCol(ws.Cells(i, c).Value) = 1 Next i cnt = 0 ReDim Available(1 To UBound(NamesArr, 1)) For i = 1 To UBound(NamesArr, 1) If Not UsedRow.exists(NamesArr(i, 1)) _ And Not UsedCol.exists(NamesArr(i, 1)) Then If Not UsedAll.exists(NamesArr(i, 1)) _ Or UsedAll(NamesArr(i, 1)) < MaxAllowed Then cnt = cnt + 1 Available(cnt) = NamesArr(i, 1) End If End If Next i If cnt > 0 Then ws.Cells(r, c).Value = Available(Int(Rnd * cnt) + 1) UsedRow(ws.Cells(r, c).Value) = 1 UsedAll(ws.Cells(r, c).Value) = UsedAll(ws.Cells(r, c).Value) + 1 Else GoTo RetryCell End If NextCell: Next c Next r ' ===== تقرير ===== On Error Resume Next Set wsReport = Sheets("تقرير") On Error GoTo 0 If wsReport Is Nothing Then Set wsReport = Sheets.Add wsReport.Name = "تقرير" Else wsReport.Cells.Clear End If wsReport.Range("A1:D1") = Array("الاسم", "الإجمالي", "أساسي", "احتياطي") For i = 3 To lrNames wsReport.Cells(i - 2, 1) = ws.Cells(i, 2) wsReport.Cells(i - 2, 2) = Application.CountIf(ws.Range(ws.Cells(3, 4), ws.Cells(lrRows, lrCols)), ws.Cells(i, 2)) wsReport.Cells(i - 2, 3) = Application.CountIf(ws.Range(ws.Cells(3, 4), ws.Cells(lrRows, 3 + MainCols)), ws.Cells(i, 2)) wsReport.Cells(i - 2, 4) = wsReport.Cells(i - 2, 2) - wsReport.Cells(i - 2, 3) Next i wsReport.Columns.AutoFit Application.ScreenUpdating = True MsgBox "تم التوزيع + إنشاء نسخة احتياطية + تقرير كامل ?", vbInformation End Sub3 points
-
اعلم هذا وواضح بالملف وعملت في قطاع التعليم التقني والتوجيه الفني 39 سنة واعلم جيدا كيف عمل اللجان لم يكن الامر يتطلب كل هذا على كل حال عودة للملف اليك الملف بالتعديل الاخير مراقبة_ تحويل اللجان الى أسماء.xlsm3 points
-
3 points
-
3 points
-
وعليكم السلام ورحمة الله وبركاته خمل المرفق به مثال لتحويل نطاق نطاق معين محدد بالماوس الى pdf pdf1.xlsb3 points
-
السلام عليكم لم توضخ خلية البحث G1 لها علاقة بالتوزيع ام لا فيكون التوزيع فردي ام للكل على كل حال الملف فيه عدد 2 شيت الاول شيت DATA يقوم بالتوزيع الفردي للمراقب وذلك بالاختيار من الخلية G1 الثاني شيت DATA1 به كود يقوم بتوزيع اللجان على كل المراقبين جرب الملف المرفق متمنيا ان يكون فيه طلبك ملاحظة1_2026.xlsm3 points
-
السلام عليكم ورحمة الله وبركاته الان وضحت الفكرة بارك الله فيك تم عمل كمبوبوكس به اسماء الموظفين الازار المرقمة قي القورم اكوادها موحودة كما هي اعتقد بعد الكمبوبوكس لم تعد في حاجة اليها ان اردت الغائها فابلعنى جرب الملف وان كنت تحتاج الى تعديل في الفورم فابشر تحياتى لك حضور وخروج موظفين.xlsm 4495.xlsm3 points
-
المصدر هو الاستعلام والتعديل في الاستعلام .. بدل اخذ Nr من جدول TblDetaché تم اخذه من جدول tbl_Loans2 points
-
2 points
-
2 points
-
تفضل الملف باستخدام الصيغ مع عمل تنسيق شرطي للتأكد من التكرار كشاف دخول اللجان2.xlsm2 points
-
وعليكم السلام ورحمة الله وبركاته InputBox في VBA لا يدعم إخفاء النصوص أو إظهارها كنجوم بشكل مباشر. الحل هو استخدام UserForm مع TextBox خاصية PasswordChar طباعة.xlsm2 points
-
2 points
-
اذا كنت تقصد عمل كلمة مرور للزر في الفورم يمنع الدخول الى ملف الاكسل اليك طلبك كلمة المرور 1234 يمكنك تعديلها من الكود طباعة2.xlsm2 points
-
وعليكم السلام ورحمة الله وبركاته ،، جرب هذا التعديل الذي تم على الجمل الشرطية داخل الاستعلام عند التوزيع .. لجان الامتحانات.zip2 points
-
تفضل استاذ @figo82eg طلبك حسب ما فهمت . ووافني بالرد . الرقم القومى-1.rar2 points
-
2 points
-
2 points
-
2 points
-
2 points
-
اهلا اخي العزيز صاحب الموضوع مشغول .. ولا اخفيك الفكرة راقت لي .. وعملت اضافات .. منها دالة لاختيار رقم عشوائي لذا دعنا نعمل عليه انت وأنا كبرنامج اختبار وقياس قابل لأكثر من رغبة سوف افتح موضوعا جديدا واطرح آخر تعديل ثم انتظر اضافاتك ولمساتك وهكذا حتى يخرج بثوب مناسب ما رأيك ؟2 points
-
بارك الله فيك .. وللمرة المليون أسف على تعب حضرتك وجعله في ميزان حضرتك ... وهذا أملنا في هذا المنتدى العظيم بأساتذته2 points
-
2 points
-
شكراً لك معلمي الفاضل 🤗.. إن شاء الله جاري العمل على التنفيذ بحيث يتم الإخراج من خلال تقرير، ولكن بعد الإنتهاء من بعض التعديلات بحيث سيتم اسناد جدول او استعلام كمصدر سجلات للتقرير ، مع ضم مربعات النص الي حقول بدلاً من الإدخال اليدوي للبيانات المتغيرة مثل الاسم او الدرحة ..... الخ . مع إتاحة التصدير كملف PDF طبعاً . وغيرها من الإضافات 😇 .2 points
-
السلام عليكم تحية صباحية طيبة وبعد، عزيزي الفاضل، اعلم أن هدفك هو تحويل الأرقام إلى أسماء، وهو موجود من عنوان مشاركتك وردودك المتتابعة. لكنني أواجه صعوبة في المضي قدماً؛ لأنك لم تحدد المعايير الدقيقة لعملية التحويل، ولم تتفضل بالإجابة عن الأسئلة التي طرحتها عليك في الردود السابقة. أقر بعجزي عن استيعاب فكرة التحويل بوضوح، وربما تكون سنواتي الـ 63 قد جعلتني أجد صعوبة في استيعاب هذا الأمر. لذلك، أعتذر عن عدم قدرتي على إفادتك في هذا الطلب. أتمنى من الأخوة الأعضاء والخبراء الذين استوعبوا آلية العمل أن يقدموا المساعدة اللازمة لك. مع خالص التقدير.2 points
-
رائع جدا هذه صورة لعملية الاعداد الجميل والشكل النهائي اتمنى اخي ان يتاح الاخراج عبر تقرير .. لما له من المزايا العديدة المفيدة2 points
-
وعليكم السلام ورحمة الله وبركاته .. جرب في زر فتح التقرير الحدث التالي :- DoCmd.OpenReport "تقرير تصفية", acViewPreview, , _ "[اسم_المستفيد] Like '*" & Forms!Index!s & "*' " & _ "OR [رقم/اسم المبنى] Like '*" & Forms!Index!s & "*' " & _ "OR [الادارة] Like '*" & Forms!Index!s & "*'" 100.zip2 points
-
السلام عليكم نصيحه لك وبما انك عضو مميز اهتم بتسميات الجداول والحقول باللغه الانجليزيه حتى تسهل عليك العمل وكتابه الاكواد تفضل بطريقه بسيط عملت لك نموذج المشتريات وتركت لك الاخر لتعمله كى تتعلم بالتوفيقمخزن_1.accdb2 points
-
وعليكم السلام ورحمة الله وبركاته اليك الحل بطريقتين الاولى - بالتنسيق الشرطي Sheet1 اللون الاحمر =AND(A1<>""; OR(A2=""; A2=0)) اللون الاخضر =AND(A1<>""; A2<>""; A2<>0) الثانية - كود في حدث الورقة SHEET2 Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A2:ZZ2")) Is Nothing Then Dim r As Range For Each r In Intersect(Target, Range("A2:ZZ2")) If r.Offset(-1, 0).Value <> "" Then If r.Value <> "" And r.Value <> 0 Then r.Offset(-1, 0).Interior.Color = vbGreen Else r.Offset(-1, 0).Interior.Color = vbRed End If Else r.Offset(-1, 0).Interior.ColorIndex = xlNone End If Next r End If End Sub الملف sa1.xlsb2 points
-
السلام عليكم ورحمة الله تم التعديل أيضا (دائما بواسطة المعادلات) على ورقة "جداول الحراسة" التي تحتوي الجداول الفردية للحراس (معذرة لم أنتبه لها إلا الآن)... الحراسة2026 للتصحيح.xlsm2 points
-
السلام عليكم حقيقة الدحول الى الموقع اصبح بالصدفة قليل ما تجدة يعمل الكود سليم والمشكلة في تنسيق الأرقام قي صفخة table في العمودين b& e اذا اردتها بالأرقام العربية حسب ملفك فقم بتنسيقها الى [$-,201]# وان اردتها بالأرقام الغربية اجعل النتسيق رفم بدون خانات عشرية ملف بتنسيق الارقام العربية [$-,201]# مراقبة ثانوية 2026.xlsm ملف بتنسيق الارقام الغربية مراقبة ثانوية1 2026.xlsm1 point
-
1 point
-
1 point
-
1 point
-
انا لم أقم بتعديل أي شيئ كل ما قمت به هو تصحيح الكود الخاص بك كالتالي السطر الأول كان هكذا Set rstE = db.OpenRecordset("SELECT * FROM Employee WHERE Nr <= 5", dbOpenDynaset) وكان يحتوي الأخطاء التالية - كنت تتعامل مع الحقل Nr في الجدول Employee على أنه حقل رقمي ولكنه حقل نصي - أعتقد أنك تظن أن هذا الحقل يحتفظ برقم الوظيفة إلا أنك مخطئ فهو يحتفظ بإسم الوظيفة والصورة التالية ستوضح لك ما أقصده مما سبق يتضح لنا أنه لن يتم تحقيق معيار التصفية Nr <= 5 لذلك قمت بتعديله إلى السطر التالي Set rstE = db.OpenRecordset("SELECT *,TblDetaché.Nr as NrE FROM Employee INNER JOIN TblDetaché ON Employee.detach = TblDetaché.detach WHERE (((TblDetaché.Nr) <= 5));", dbOpenDynaset) حيث سيتم ربط الجدول Employee مع الجدول TblDetaché وسنأخذ قيمة Nr من الجدول TblDetaché لأنه رقمي وقمنا بتسمية الحقل هذا بإسم NrE أما التعديلات التالية كلها تخص الحقل EmpID فأنت تتعامل معه كحقل نصي وهو حقل رقمي لذلك قمت بإزالة علامة الإقتباس المفردة التي قيل وبعد EmpID فمثلا 'تم تعديل هذه العبارة EmployeeID='" & EmpID & "' 'بهذه العبارة EmployeeID = " & EmpID & " اخر تعديل ونظرا لأنه وكما سبق توضيحه بخصوص الحقل Nr تم تعديل السطر التالي 'إستبدلنا هذا السطر rst!Nr = rstE!Nr 'بهذا السطر rst!Nr = rstE!NrE حتى يتم أخذ قيمة Nr من الحقل الذي قمنا بتسميته بالإسم NrE في جملة Sql أعلاه هذه هي كل التعديلات التي قمت بها فهل هذا سيؤثر على طريقة احتساب القروض؟1 point
-
تم عمل التعديلات على النحو التالي : - اضافة جدول وسيط يحمل درجة الاجابة - تغيير كود الحاق الاجابة واستبداله باستعلام الحاق - اضافة بعض الضوابط مثل : الاغلاق بعد الحفظ منع اعادة الاختبار ( آلية مرنة يمكن للمسؤول تمكينه من اعادة الاختبار حيث اضفت حقل نعم/لا يمكن التحكم من خلاله) بعض اللمسات على نموذج الاجابة ....................................................... لترتيب هذا العمل .. مهم جدا العمل على آخر مثال تم التعديل عليه من قبل الاخوة الكرام وحبذا يراعى في الامثلة الترتيب الرقمي .. فالمرفق الجديد سميته Exam1 فيا ليت يكون التالي Exam2 .. وهكذا ... انتظر منكم الملاحظات او اي تعديلات قبل الانتقال للخطوة والمطلب التالي Exam1.rar1 point
-
1 point
-
السلام عليكم ورحمة الله وبركاته أخانا الفاضل، بلانك ملاحظة وُدّية بسيطة بخصوص عنوان مشاركتكم ، ونثق تمامًا أنها صدرت عن غير قصد. (عذراً للإخوة المشرفين على هذا التنويه، ولكن لمّا كان الأمر يخصّني قمت به من باب حرصنا على أن نكون أسرة واحدة في هذا المنتدى.) كل التقدير لتفهّمكم وتعاونكم المثمر دائمًا. قواعد المشاركة https://www.officena.net/Tips/Questions.htm بالنسبة للملف حقيقة لم افهم فكرة تحويل اللجان الى اسماء المراقبين بعد لذلك نأمل منكم : * اخفاء اي عمود ليس له علاقة بالتحويل وهل العمود N في الجدول الايسر والذي به اسماء المراقبين له علاقة بالتحويل ام ان العمود O والذي به ارقام اللجان هو المعتمد للتوزيع . * قم بارفاق ملف به عدد اربع او خمسة اسطر مكتوبة يدويا كاملة للفترات 9 بالجدول الايسر لفهم فكرة تحويل اللجان الى اسماء المراقبين . *اعتقد ان شيت DATA1 هو المطلوب فيه التحويل واعتقد ان القائمة المنسدلة ليس لها علاقة بالتحويل ارجو تاكيد الامر او نفيه. لك كل التقدير والاحترام1 point
-
انقر على الملف بالماوس زر يمين ، واختر خصائص ، ثم فك الحظر او حمل هذا الملف وفك الضغط عنه هتلاقي ملف ريجيستري اضغط عليه دبل كليك واختر yes ثم ok اي ملفات هتحملها بعد كده مش هتحتاج تعمل فك الحظر Disable_blocking_of_downloaded_files.zip وكل الشكر لأخي الأستاذ @حسونة حسين ، على مشاركتي الملف لإرفاقه ومشاركته1 point
-
ليس مفتوح بل هو مقيد بفترة محددة لذا ينطبق عليه ما ينطبق على حالة الفترة التجريبة .. لأن الكل مقيد بفترة محددة المفتوح هو الكامل بدون اشتراك لفترة محددة .. وحتى لو كانت الفترة سنة او سنتين ثم لماذا العميل يقدم او يؤخر التاريخ ؟ مادام عمله نظامي فلن تؤثر عليه هذه القيود . ............................................................. كلامي اعلاه بصفة عامة فيما لو كانت النسخة التجريبية والدائمة واحدة .. فقط اذا انتهت فترة التجربة نرسل له كود تفعيل الاشتراك ......................................................... ولكني سأخالف هذا النظام .. بحيث تكون النسخة التجريبية هي فقط للتجربة واذا اراد العميل الاشتراك نرسل له النسخة المرنة .. ( ملف تنصيب يتم استبدال القديم بالجديد ) السبب : حسب الخبرة .. التسويق للمنتج يجب ان يكون جاذبا للعميل ومن الاشياء الجاذبة ان تشتمل نسخة التجربة على بيانات كافية حقيقة وفي الوقت نفسه وهمية بحيث يمكن للعميل تصفحها وعرضها ورؤية النتائج والتقارير عرض هذه البيانات والتعامل معها بالتعديل كتغيير الشعارات والتعديل على البيانات يسهل عليه فهم البرنامج .. وهي بحد ذاتها تجربة .. لأنها طبق الاصل من بياناته التي سوف يدخلها وهنا التجربة لن تستغرق شهرا .. بل جلسة واحدة .. وربما جلستين للتشاور واخذ الرأي1 point
-
آآآآآآه الآن فهمت ملاحظتك صحيحة : سوف يعمل عندما يتم ارجاع تاريخ الجهاز الى تاريخ عمل الفترة تم الاصلاح ,,, ولكن بشرط ان تكون الفترة منتهية فعلا .. فلو تم تقديم التاريخ والفترة في الاصل فعالة .. فستظهر الرسالة بانتهاء الاشتراك .. ولكن عند تصحيح تاريخ الجهاز سوف يعمل لانه فعلا يعمل .. ومثل ذلك لو تم تأخير التاريخ بمعنى ان تحريك تاريخ الجهاز لا يعني شيئا للبرنامج .. فمنظومته داخلية جزيت خيرا1 point
-
نسيت متابعتي معك ، واعتذر لكن هل جربت استبدال Date باسم مربع النص الذي يحتوي التاريخ الذي تريد إضافة يوم عليه ؟؟؟1 point
-
اداة رائعه ومجهود واضح وكبير وافكار جميله ويشرفني اكون اول المعلقين1 point
-
االرجاء الانتظار الى الانتهاء من باقى التعديلات CertificateCustomization.zip1 point