اذهب الي المحتوي
أوفيسنا

نجوم المشاركات

  1. عبدالله بشير عبدالله
  2. kanory

    kanory

    الخبراء


    • نقاط

      3

    • Posts

      2310


  3. كمال النحال

    كمال النحال

    المشرفين السابقين


    • نقاط

      3

    • Posts

      268


  4. Foksh

    Foksh

    الخبراء


    • نقاط

      2

    • Posts

      2982


Popular Content

Showing content with the highest reputation on 01/24/25 in all areas

  1. وعليكم السلام ورحمة الله تعالى وبركاته Option Explicit Sub CopyData() Dim ColArr() As Variant, Irow&, lr& Dim OnRng As Range, f As Worksheet Dim WS As Worksheet: Set WS = Sheets("ملخص") Application.ScreenUpdating = False WS.Range("A2:Q" & WS.Rows.Count).ClearContents For Each f In ThisWorkbook.Sheets If f.Name <> WS.Name Then Irow = f.Cells(f.Rows.Count, "D").End(xlUp).Row If Irow > 2 Then If WS.Cells(2, 1).Value = "" Then WS.Range("A2:Q2").Value = f.Range("A2:Q2").Value End If Set OnRng = f.Range("A3:Q" & Irow) ColArr = OnRng.Value lr = WS.Cells(WS.Rows.Count, "A").End(xlUp).Row + 1 WS.Cells(lr, "A").Resize(UBound(ColArr, 1), UBound(ColArr, 2)).Value = ColArr End If End If Next f Application.ScreenUpdating = True End Sub Book1 v2.xlsb
    2 points
  2. وعليكم السلام ورحمة الله وبركاته الكود Sub تجميع_البيانات() Dim wsSummary As Worksheet Dim ws As Worksheet Dim lastRow As Long Dim summaryLastRow As Long Dim dataRange As Range On Error Resume Next Set wsSummary = ThisWorkbook.Sheets("ملخص") On Error GoTo 0 If wsSummary Is Nothing Then Set wsSummary = ThisWorkbook.Sheets.Add wsSummary.Name = "ملخص" End If wsSummary.Rows("3:" & wsSummary.Rows.Count).ClearContents summaryLastRow = 3 For Each ws In ThisWorkbook.Sheets If ws.Name <> wsSummary.Name Then lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row If lastRow >= 3 Then Set dataRange = ws.Range("A3:Q" & lastRow) wsSummary.Cells(summaryLastRow, "A").Resize(dataRange.Rows.Count, dataRange.Columns.Count).Value = dataRange.Value summaryLastRow = summaryLastRow + dataRange.Rows.Count End If End If Next ws MsgBox "تم تجميع البيانات !", vbInformation End Sub الملف Book1.xlsb
    2 points
  3. السلام عليكم ورحمة الله وبركاته ، أخواني وأساتذتي ومعلمينا ( دون استثناء ) 📌 اليوم سأقدم لكم فكرة لإنشاء ساعة رقمية مشابهة لألواح الإعلانات المضيئة ، ولكن بطريقة و نكهة مختلفتين كالعادة ▫▪◽◾◻◼ . صورة للنتيجة .. المرفق مفتوح المصدر دون إطالة BackLight2.accdb
    1 point
  4. من فورم استاذ @Foksh خذ النتائج لمربعات التقرير هكذا المربع الاول نص6 مصدرالبيانات =[Forms]![Form1]![Te1] وهكذا باقي المربعات ............
    1 point
  5. صديقي العزيز ، التقرير لعرض البيانات وليس لإضافة بيانات وقيم في مربعات النص ، تستطيع الاستدعاء في حدث عند التحميل للتقرير 😅 .
    1 point
  6. بعد نسخ الشيفرة ولصقها في النموذج لديك استدعي كود الفتح بهذه الصورة Private Sub Compact_Click() Dim path As String path = "E:\Auto\ddbee$" ' مسار قاعدة البيانات call CompactAndRepairDatabase Shell "MSACCESS.EXE " & path, vbNormalFocus End Sub
    1 point
  7. اولا هل تقوم بإجراء نسخ احتياطية لبياناتك قبل الضغط والإصلاح لان لاي سبب حصل خطأ قد تفقد بياناتك ... على كل حال هذه الشيفرة تقوم باللازم اقصد الضغط والإصلاح Sub CompactAndRepairDatabase() Dim dbPath As String Dim tempDbPath As String ' المسار الكامل لقاعدة البيانات الأصلية dbPath = "E:\Auto\dbbee.accdb" ' إنشاء مسار مؤقت لقاعدة البيانات بعد الإصلاح tempDbPath = "E:\Auto\dbbee_temp.accdb" ' تأكد من أن قاعدة البيانات الأصلية موجودة If Dir(dbPath) <> "" Then ' إجراء عملية Compact and Repair On Error Resume Next Application.CompactRepair SourceFile:=dbPath, DestinationFile:=tempDbPath, LogFile:=False If Err.Number = 0 Then ' استبدال قاعدة البيانات الأصلية بالنسخة الجديدة Kill dbPath ' حذف قاعدة البيانات الأصلية Name tempDbPath As dbPath ' إعادة تسمية النسخة المؤقتة إلى الأصلية MsgBox "تم إصلاح قاعدة البيانات بنجاح!", vbInformation Else MsgBox "حدث خطأ أثناء الإصلاح: " & Err.Description, vbCritical End If On Error GoTo 0 Else MsgBox "قاعدة البيانات غير موجودة في المسار المحدد!", vbExclamation End If End Sub
    1 point
  8. دالة DoCmd.OpenDataAccessPage تُستخدم لفتح صفحات الوصول إلى البيانات (Data Access Pages) وليس لفتح قاعدة بيانات خارجية. لفتح قاعدة بيانات أخرى، يمكنك استخدام دالة Application.OpenCurrentDatabase أو دالة Shell Application.OpenCurrentDatabase "E:\Auto\dbbee.accdb" إذا كنت تريد تشغيل قاعدة البيانات كملف منفصل باستخدام Shell Dim path As String path = "E:\Auto\dbbee.accdb" ' مسار قاعدة البيانات Shell "MSACCESS.EXE " & path, vbNormalFocus
    1 point
  9. يعني انت تريد بعد العمليات السابقة حذف السعر المدخل سابقا وتريد نقل السعر الموجود في التوزيع ليحل محل السعر السابق ... انظر الصورة
    1 point
  10. اولا الشكر لك على هذه التحفة الفنية ..... ثانيا ان سمحت لي باقتباس هذه الساعة ... اريد تحويرها لارقام طلب الدور للعملاء والمطاعم وغيرها ان سمحت لي ...
    1 point
  11. اخي العزيز إضافة العمود المساعد لتحسين قابلية التعامل مع البيانات باستخدام المعادلات العادية (بدلاً من الصفيفية). عندما نريد تصفية البيانات (مثل ملفك)، يمكننا استخدام معادلات مثل INDEX وMATCH لتحديد الصفوف المطلوبة. ومع ذلك، هذه المعادلات تحتاج إلى طريقة لمعرفة الصفوف التي تحقق الشرط. العمود المساعد يعمل كـ "علامة" تحدد الصفوف التي تحقق الشرط (J9 < D2) وتُظهر رقم الصف الخاص بها. وإذا لم يتحقق الشرط، يُظهر العمود قيمة فارغة ("") القيم الموجودة في العمود X هي رقم الصف الذي ينحقق به الشرط في D2 طبعا يمكن الاستغناء على العمود المساعد باستخدام معادلات صفيفية أو حلول برمجية (مثل VBA) والعمود المساعديساعد على تحسين الأداء في النسخ القديمة من Excel مثل 2010 النسخ الحديثة 2019 وما فوق يمكن استخذام دالة FILTER وحقيقة انا لا املك في جهازي الا اصدار 2016 فلا يمكننى التجربة واخير يبقى الكود افضل مم سبق دكره واسرع ويمكن ان يكون تلقائيا بدون زر اليك ملف به حلات اخران الاول بمعادلات عادية بدون عمود مساعد والاخ على اليسار بالمعادلات الصفيفية 1شيت.xlsx حل اخر ويعنبر افضلهم بدون معادلات وبدون زر .عند الكنابة في D2 تتم الفلترة للدرجات ولا تنسى تمكين الماكرو شيت1.xlsb اتمنى فيما دكر بعض الفائدة نحياتي
    1 point
  12. وعليكم السلام ورحمة الله وبركاته طريقتان واختاري ما يتاسبك الاولى ان يكون الملفان مفتوحان في نفس الوقت ونفس المجلد وبنفس الاسم تحديث عدد الطلاب2 ( يمكن تعديله من الكود) ملف الطلاب الاصل.xlsb الثانية الملف مقفول وبأي اسم بمعنى عند الضغط على زر تحديث البيانات تظهر واجهة نخنار الملف المراد اخد البيانات منه ملف الطلاب الاصل2.xlsb اتمنى ان يكون طلبك في احد الملفين لك كل التقدير والاحترام
    1 point
  13. رووووووووعة ما شاء الله تبارك الرحمن 😊👌🌹 الفكرة بحد ذاتها جميلة وعبقرية .. 🙂 ومشاركة مني عملت منها نسخة مصغرة عشان يسهل وضعها في النماذج .. ساعة رقمية للمهندس فادي.accdb
    1 point
  14. من الجماليات في البرامج .. توحيد الشكل العام من حيث الألوان .. بحيث تكون بلون واحد .. سواء كانت الخلفيات او التسميات او الازار اماكن الأزار .. والعناوين تكون متشابهة تماما . المصمم المحترف لا يتعب كثيرا .. فقط يتعب على النموذج الأول وبقية النماذج تكون نسخة طبق الأصل منه
    1 point
  15. أخواني وأخواتي الأعضاء السلام عليكم ورحمة الله وبركاته أعرض عليكم برنامج إدارة الحسابات بعد جهد كبير وعلى مدار عدة شهور من البحث والفكر والتعب والسهر في تحليل ودراسة النظام ، استطعت وبحمد الله عمل هذا البرنامج المحاسبي المتواضع وهو : برنامج بسيط وسهل الاستخدام ويعتمد على القيد المحاسبي المزدوج ، حيث يهتم في المقام الأول بعمل البلديات لأنه يعتمد على التقارير الخاصة بعمل البلديات ، وهذا لا يعني أنه لا يمكن استخدامه في المؤسسات الأخرى. ويتكون من عدة شاشات أهمها :- 1. شاشة تعريف المؤسسة يجب تعريف المؤسسة ، لأن اسم المؤسسة سيظهر في معظم التقارير كترويسة للتقرير. 2. شاشة إدخال الحسابات ألفت انتباه أخواني الأعضاء بأن رقم الحساب عبارة عن عدة مستويات المستوى الأول خانة واحدة والمستوى الثاني خانة واحدة والثالث خانة واحدة والرابع خانة أو خانتين ، والمقصود بالمستويات هو الآباء والأبناء ، وهذه الشاشة يوجد بداخلها شجرة للحسابات مرتبة حسب المستويات مثال ذلك : 7 الإيرادات 71 الضرائب والرسوم 711 الضرائب 7111 ضريبة عامة 7112 ضريبة مباني .... 712 الرسوم 7121 رسوم نظافة 7122 رسوم خرائط وشهادات ... أما ترتيب هذه الحسابات يعتمد على كود يضرب 7 *1000 وممكن 7*10000 هذا يعتمد على أكبر رقم حساب موجود ي دليل الحسابات ، فمثلاً رقم حساب الإيرادات يكون الترتيب الخاص فيه هو 7000 ورقم الضرائب والرسوم 7100 أما رقم حساب الضريبة العامة فيبقى كما هو 7111. ومن الملاحظ أن اسم الأب يتم التعرف عليه من خلال رقم الحساب المدخل وكذلك أرقام حسابات الآباء هي حسابات رئيسية ، أما حسابات الأبناء هي حسابات فرعية. 3. شاشة التعديل هي للتعديل ومن هذه الشاشة يمكن تعديل أسماء الحسابات والموازنة ونوع الحساب وصفة الحساب. 4. شاشة إدخال القيود اليومية يتم إدخال تاريخ القيد المحاسبي فيتم تلقائياً إدخال رقم القيد وهو السجل الأخير + 1 وعند إدخال القيود يكون فقط رقم الحساب الابن في كمبو أرقام الحسابات ، أما مدين ودائن القيمة الافتراضية تكون لهما صفر ، وعند إدخال قيمة في خانة مدين لا يمكن إدخال قيمة في خانة دائن وفي نفس السجل والعكس صحيح ، أما خانة شرح القيد عند تسجيل السجل الأول والكتابة فيه لأول مرة والانتقال إلى السجل الثاني فيتم تلقائياً إدخال شرح القيد ويوجد بهذه الشاشة مفتاح للتخزين حيث يتم تغيير حقل منطقي الى نعم والانتقال إلى تسجيل قيد جديد ، ومفتاح خروج وفي حال عدم التخزين يتم حذف القيد كلياً لأنه يعتمد على الحقل المنطقي إذا كان لا يتم حذف القيد. ولا يقبل التخزين بدون أن يكون القيد متوازن ولا يمكن الخروج من البرنامج إلا بحذف القيد. 5. شاشة تعديل القيود المحاسبية يتم من خلال هذه الشاشة عرض رقم القيد وتاريخه ، وعند تعديل قيد معين ضع المؤشر داخل القيد المراد تعديله واضغط على مفتاح تعديل فيتم فتح القيد للتعديل ويتم الخروج من هذه الشاشة بتوازن القيد وإلا لا يمكنك الخروج من هذه الشاشة. 6. شاشة طباعة التقارير 7. حيث توجد عدة تقارير تعتمد في التصفية على التعليمات الموجود ة والتي تظهر أثناء اختيار التقرير. البيانات الموجودة في البرنامج هي لشهر يناير وفبراير ومارس 2008 ACCOUNT101.rar
    1 point
  16. السلام عليكم أخي العزيز يبدو انني استخدمت خاصية في 2010 ليست موجودة في 2003 عدل تلك الكود كله إلي Sub PV_Table() LR = [A60000].End(xlUp).Row Range("K3:IV" & LR).Select Selection.FillDown [A1:J1].Select Range(Selection, Selection.End(xlDown)).Select ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _ "Sheet1!R1C1:R" & LR & "C10").CreatePivotTable TableDestination:="R4C11", TableName:="PivotTable1" With ActiveSheet.PivotTables("PivotTable1") .PivotFields("كود الصنف").Orientation = xlColumnField .PivotFields("كود الصنف").Position = 1 .PivotFields("كود الصنف").PivotItems("(blank)").Visible = False .AddDataField ActiveSheet.PivotTables("PivotTable1").PivotFields("الكمية بالكجم"), "Count of الكمية بالكجم", xlCount End With With ActiveSheet.PivotTables("PivotTable1").PivotFields("Count of الكمية بالكجم") .Caption = "Sum of الكمية بالكجم" .Function = xlSum .NumberFormat = "#,##0" End With ActiveWorkbook.ShowPivotTableFieldList = False Range([J3], [J3].End(xlToRight)).EntireColumn.AutoFit [J3].Select End Sub
    1 point
  17. أحبائي الاعزاء مليون تحية طيبة وبعد ،،،،،،،،،،،،، عاشق الفردوس مازن7 عاشق النور بروجان r2power osamanouri hotmail.com@ waleed600 أشكركم جميعا على مروركم الطيب وبارك الله فيكم اللهم آمييييييييييييييييييييييييييييييين وحول سؤال الاخ / osamanouri أين البرنامج فهو على الرابط التالي مشاركة رقم #1 , ومشاركة رقم #8. http://www.officena.net/ib/index.php?showtopic=23487 ============ مزيد الاحترام والتقدير ============
    1 point
  18. أحبائي الأعزاء تحية طيبة وبعد ،،،،،،،،،،، ألف مليون شكر على مروركم الطيب وتعليقاتكم كما أخبركم بأنه تم بحمدالله الاصدار الثاني من برنامجكم المحاسبي يمكنكم تحميله من الرابط التالي : http://www.officena.net/ib/index.php?showtopic=24842 حيث يعتمد في عمل القيود المحاسبية على الجداول المؤقتة وعند التخزين يتم نقل القيود الى الجداول الاصلية وبعد ذلك يتم حذفها من الجداول المؤقتة وأتمنى عليكم أن تبدوا رأيكم في البرنامج حتى أستطيع تطوير البرنامج ليكون فائدة للجميع وبارك الله فيكم. وتقبلوا أجمل تحياتي
    1 point
  19. فكرة جميلة جدا وشكرا لتعب حضرتك معلش أنا كنت عايزها في تقرير اضع الرقم في مربع النص ( 0te ) يتم التقسيم اوتماتيك في المربعات
    0 points
×
×
  • اضف...

Important Information