اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

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

  1. ياسر العربى

    ياسر العربى

    الخبراء


    • نقاط

      8

    • Posts

      1,510


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      7

    • Posts

      9,756


  3. عادل حنفي

    عادل حنفي

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


    • نقاط

      3

    • Posts

      2,490


  4. رمهان

    رمهان

    الخبراء


    • نقاط

      2

    • Posts

      2,390


Popular Content

Showing content with the highest reputation on 05 ديس, 2016 in all areas

  1. السلام عليكم اخي الكريم ناصر سعيد الحمد الله نحن في تمام الصحة لكم كل الشكر والتقدير على اهتمامكم انت والاخ الكريم طائع وفقنا الله واياكم ونتمنى عودة جميع الاحبة الى التفاعل داخل هذا المنتدى العظيم مرة اخرى تقبلوا فائق احترامي وتقديري
    3 points
  2. وعليكم السلام همم ، طيب ايش رايك في هذين الرابطين: و جعفر
    2 points
  3. تفضل لعله المطلوب بيانات الموظفين - Copy.rar
    2 points
  4. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته اخوتي / اخواتي لي الشرف ان انظم الى هذا الصرح العلمي ، سائلاً المولى جل وعلا ان يوفقني لما فيه الخير للجميع 🙂 في اول مشاركة لي ، اضع بين يديكم برنامج مسقط التقارير (مسمى صانع التقارير متداول كثيرا ، لذا احببت ان اسمي برنامجي بإسم مميز ، إسم مسقطنا الحبيبة 🙂 ). البرنامج في نسخته الاولى ، لذا ، فلا تتوقعوا الكثير منه 🙂 في احد المشاريع التي عملت عليها قريبا ، كان العمل لسجلات شؤون الموظفين ، ولم يكن بالامكان عمل تقرير محدد ، حيث كانت التقارير المطلوبة من الادارة بشتى انواع البيانات ، طولا وعرضا. لذا اضطررت العمل على صانع للتقارير (في الواقع مسقط التقارير يعتبر برنامجا بحد ذاته ، فالعمل كان ، برنامج في برنامج 🙂 ). مع ان البرنامج بسيط في طريقة عمله (وطبعا عندي الكثير من الاشياء الاخرى التي اود ان اضيفها ، لكن في وقتها ان شاء الله ، وبما ان البرنامج مفتوح المصدر ، فانا ارحب بمن يضيف عليه خصائص جديدة 🙂 ) ، فمع بساطة البرنامج ، إلا ان نتائجه مرضية 🙂 العمل على البرنامج ابسط بكثير من شرحه 🙂 يمكنك نقل هذه الكائنات السته الى برنامجك الخاص ، ومسقط التقارير سيعمل بدون الحاجة الى اي تغيير او كود: مسقط التقارير يعمل على الجداول والاستعلامات فقط ، واليكم طريقة العمل: جدول او استعلام: اختر من ايهم تريد ان تعمل تقريرك ، جدول او استعلام ، الاسم: على اساس الاختيار السابق ، ستظهر لك قائمة بجداولك او استعلاماتك ، وعندما تختار اسم جدول او استعلام ، فان النموذج الفرعي الذي اسفل الاسم سوف يمتلئ باسماء الحقول من الجدول او الاستعلام ، وكلها عليها اشارة اخفي (اي كلها ستكون مخفية من الظهور في النموذج الفرعي الذي بالاسفل) ، احذف اشارة الاخفاء عن الحقول/الخانات التي تريدها ، وستظهر لك في النموذج الفرعي الذي في اسفل النموذج. هذا النموذج هو شكل مبسط من التقرير ، فكما ترى الحقول وعرضها ، وعدد السجلات ، ستراها في التقرير. هناك خطان فوق النموذج الفرعي ، باللون الاصفر والاخضر ، اذا كانت بياناتك اقل من الخط الاصفر ، سيكون التقرير بالطول ، وإلا فانه سيكون بالعرض ، وهناك خطان صفر ، فالمسافة بينهم ستكون للترقيم التلقائي للتقرير (لاحظ ان التقرير لبيانات النموذج ادناه سيكون بالعرض ، لأننا تخطينا الخط الاصفر 🙂 يمكننا ان نمسك الحقول/الخانات بالزر الايسر من الفأرة ونغير ترتيبها يمينا ويسارا ، كما ان البرنامج يحترم عرض الحقل الذي تقوم بتعديله ، (لاحظ ان التقرير لبيانات النموذج سيكون بالطول ، لأننا في حدود الخط الاصفر 🙂 وهذا هو التقرير لبيانات النموذج السابق ، ولاحظ ان البرنامج يقوم بتغيير ارتفاع الصف تلقائيا ، حتى يمكن مشاهدة جميع بيانات الحقل. اذا قررت ان تتعدى الخط الاصفر ، فنفس شروط الخط الاصفر تنطبق على الخط الاخضر ، وهنا نرى باننا اضفنا عنوان لراس صفحة التقرير ، واضفنا معلومات عن موضوع التقرير ، بالاضافة الى معلومات في ذيل التقرير: وهذا هو تقرير لبيانات النموذج السابق ، ولاحظ ان البرنامج يوسع عمود الترقيم التلقائي ليسد المسافة: بعد اختيار الحقول التي نريدها في التقرير ، نستطيع ان نفرز الحقول بالطريقة التي نريد: وكذلك تصفية البيانات حسب الحاجة: وهذا هو تقرير لبيانات النموذج السابق ، لاحظ عدد السجلات قد تغير ، لأني طلبت ان ارى السجلات التي مبالغها اكبر من 500: البرنامج لا يحفظ التقارير (نعم ، عمل طريقة لحفظ اسم لكل تقرير ، على قمة قائمة التحديثات ان شاء الله 🙂 ) ارجوا ان تتقبلوا مني هذا العمل المتواضع 🙂 اسئلة/اقتراحات ، سأحاول الرد على قدر استطاعتي ان شاء الله 🙂 جعفر ملاحظة1: عمود المجموع لا يعمل ، وكان يجب ان اخفيه 😞 ملاحظة2: في الاساس كان عندي كمية كبيرة من صور الشرح ، إلا ان المنتدى لا يسمح بأكثر من 10 مرفقات ، فاختزلت الموضوع 🙂 ملاحظة3: ادراج فيديو لطريقة عمل التقرير: Muscat_Reports.zip
    1 point
  5. كنترول شيت إعدادي ..الدورين معا ..اصدار4 كلمة سر الدخول : 1111 كلمة سر محرر الاكواد : 11223344 كلمة سر صفحة الصلاحيات :6666 كلمة سر تصفير الشيت: 6666 رابط التحميل كنترول شيت اعدادى 2017 و كنترول شيت ابتدائى..الدورين معا ..اصدار4 كلمة سر الدخول : 1111 كنترول شيت ابتدائى 2017
    1 point
  6. بداية الغيث قطرة.. وفر وقتك في كتابة الكودات، طريقة رائعة في إدراج الأزرار برمجياً وربطها بالماكرو بشكل تلقائي.. تحتاج لمسات العباقرة. إضافة أزرار برمجياً2.rar
    1 point
  7. { بسم الله الرحمن الرحيم } اخواني واساتذتي واعضاء منتدى اوفيسنا .... لاحظت ان هنالك الكثير من الأخوة يريدون يومية مبيعات ومصاريف و ان يكون هنالك ترحيل يومي حسب التاريخ وطباعة للصفحه احببت ان اضيف البرنامج ويوجد بداخله علم فلسطين وبداخل العلم يوجد ترحيل لمجموع المبيعات و ترحيل لمجموع المصاريف وترحيل لصفحة حسب التاريخ وزر مسح البيانات بعد الترحيل وزر طباعة الصفحه لمن اراد ان يستفيد وهو مفتوح وجاهز لكل من احب ان يعدل عليه .... واي استفسار احبتي انا جاهز .... لا تنسوني من صالح دعائكم بظهر الغيب هدية لمنتدى اوفيسنا.rar
    1 point
  8. http://www.mediafire.com/file/9zrp65trxah4m4x/بيانات+الموظفين+-+Copy.rar رابط اخر للمحترم ياسر العربي
    1 point
  9. شرح مبسط للكود Sub Test_Yasser() 'متغير واي ونستخدمه في الحلقة التكرارية الاولى ليرمز لرقم الشيت 'متغير اكس وهو خاص بالحلقة التكرارية الثانية ويقوم بعد عدد الاسطر الموجود باه بيانات لمقارنة كل بيان بصفحته 'المتغير اس تي ار متغير من نوع نصى ليشير الى اسم الشيت وهو يساوي العمود الخاص بأسماء الصفحات Dim Y, X, str As String 'هنا المتغير واي يبدأ من 2 الى 4 وهي عدد الصفحات من بعد الاولي حتى الاخيرة For Y = 2 To 4 'هنا يتم المرور على كل الشيتات المحددة في الحلقة بخلاف الشيت الاول ومسح محتوياتهم تمهيدا لجلب المحتوى الجديد Sheets(Y).Range("C6:F" & Sheets(Y).Cells(Rows.Count, 3).End(xlUp).Row).ClearContents Next 'هناحلقة تكرارية تبدأ بأول صف بيانات وهو 6 حتى نهاية البيانات بالصفحة الرئيسية For X = 6 To Cells(Rows.Count, 3).End(xlUp).Row 'المتغيرالخاص بخليه اسم الشيت حتى يتم نسخ البيانات اليه str = Cells(X, 6) 'هنا يتم نسخ كل صف داخل الحلقة التكرارية ووضعه في الشيت المذكور اسمه بجانب البيانات 'بفرض في هذا المثال ان المتغير اكس بيساوي 6 في اول حلقة له يبقي السطر البرمجي يصبح هكذا ' Range("C6:F6").Copy Sheets("الشركة").Range("C" & Sheets("الشركة").Cells(Rows.Count, 3).End(xlUp).Row + 1) Range("C" & X & ":F" & X).Copy Sheets(str).Range("C" & Sheets(str).Cells(Rows.Count, 3).End(xlUp).Row + 1) Next MsgBox "Done........", 64 End Sub
    1 point
  10. ابو صلاح برهومه تحياتى و جزاك الله خيرا و تمنياتنا بمزيد من البرامج
    1 point
  11. جرب هذا استاذ ابا خليل xf = "C:\abcd\" xid = 2 xt = 10 x = Shell("SoundRecorder.exe /file " & xf & xid & ".wav /Duration 00:00:" & xt, 4) طبعا لابد من وجود المسار ويسمح بالكتابة عليه تحياتي
    1 point
  12. اخى ياسر كل التحيه كود جميل وبسيط تقبل تحياتى
    1 point
  13. الوقت اصعب من كل شي يا حبيبي اتفضل عملت استعلامين استعلام q2 هم اللي حصل على الدورات للسنة 2015 او 2016 واستعلام اخر اللي لم يحصل الى الدورات في ذاك السنين مع تقدير training.rar
    1 point
  14. 1 point
  15. جرب استخدام الباراميترز للامر file و duration x = Shell("SoundRecorder.exe /file C:\1.wav /Duration 00:00:10 ", 4) المدة عشر ثواني والمكان c واسم الملف 1 بالتوفيق
    1 point
  16. 1 point
  17. لا والله ما نسيت ، ولكني انشغلت بمواضيع المنتدى ومحاولة مساعدة الباقين
    1 point
  18. وعليكم السلام كذا لن تجد من يساعدك وقبل هذا انت خرقت جميع قوانين المشاركة من قوانين المشاركة التي وضعت اساسا لخدمة الاعضاء 1- اختيار عنوان مناسب يصف الموضوع 2- الاكتفاء بسؤال او استفسار واحد ايضا لا يوجد شيء اسمه عدلوا لي على البرنامج عندك مشكلة معينة لم تتمكن من حلها اعرضها هنا ولا بأس ان ترفق مثالا بسيطا يساعدك على تطبيق المسألة . آمل ان تعذرنا وتتقبل غلق الموضوع بصدر رحب يغلق ،،،
    1 point
  19. الأستاذ محمد حسن المحمد والأستاذ أكرم جلال هذا بعض من علمكم وعلم الأحبة في منتدانا الغالي تجودون علينا بعلمكم ونحن نجود بعلمكم على غيرنا وتقبلوا تحياتي
    1 point
  20. تحية شكر وتقدير لكل من شارك في هذا العمل الإبداعي وخصوصاً للأخ الفاضل الزباري ونتمنى المزيد
    1 point
  21. اخى الزبارى ماشاء الله عليك اكواد جميله بارك الله فيك فى انتظار المزيد تقبل تحياتى
    1 point
  22. السلام عليكم الاخ الحبيب ابراهيم ابو ليله اريد مدى الداتا ومدخلاته كما في ملفك الاصلي لمعرفة اعمدة البيانات كما واقع ملفك وخلايا ادخال الشروط ونتائج البحث في اي مكان
    1 point
  23. السلام عليكم اخي الكريم اليك الحل db3.rar
    1 point
  24. السلام عليكم لاحظت تكرار بعض البيانات ، فاليك النسخة المعدلة 275.1.ImportDegrees.accdb.zip
    1 point
  25. السلام عليكم . هذا صحيح ، ولكن في نهاية الدالة تستطيع تختار النطاق Range او الورقة/sheet ، فعليه يمكنك ان تعيد الامر اكثر من مرة ، كل مرة لورقة اكسل اخرى (لاحظ اسماء الـSheet): DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tbl_Sheets", Me.txtPath, False, "Sheet1$" DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tbl_Sheets", Me.txtPath, False, "Sheet2$" DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tbl_Sheets", Me.txtPath, False, "Sheet3$" . ولكن هذا الامر يتطلب منا ان نعرف عدد الاوراق/Sheets ، واسمائها ------------------------------------------------------------------------------------------------------------------------ والآن لشرح ما عملته انا: 1. عملت جدول اسمه tbl_Sheets ، لإدخال جميع المعلومات في جميع الاوراق/Sheets: . وعن طريق الكود (الكود سيكون في نهاية الموضوع) ، يأخذ البيانات ، فيصبح: . ثم يأتي الكود مرة اخرى ، فيملئ حقل ID لكل علامة: . ثم عملت استعلام جدولي CrossTab ، والذي به نستطيع ان نجعل بيانات احد الاعمدة عبارة عن اعمدة متفرقة ، يعني الحقل F1 ، اردنا ان نجعل كل مادة عبارة عن عمود مستقل): . وهذه نتائجه: . والان الى عمل استعلام آخر ، لجمع كل هذه السجلات: . فاصبحت: . الآن وقد اصبحت البيانات جاهزة لإلحاقها بالجدول النهائي Degrees ، نعمل استعلام الحاقي: . والكود الذي يقوم بكل العمل: Private Sub ImportData_Click() 'DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tbl_Sheets", Me.txtPath, False, "Sheet1$" 'DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tbl_Sheets", Me.txtPath, False, "Sheet2$" 'DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, "tbl_Sheets", Me.txtPath, False, "Sheet3$" Dim blnHasFieldNames As Boolean, blnEXCEL As Boolean, blnReadOnly As Boolean Dim lngCount As Long Dim objExcel As Object, objWorkbook As Object Dim colWorksheets As Collection Dim strPathFile As String, strTable As String Dim strPassword As String ' Establish an EXCEL application object On Error Resume Next Set objExcel = GetObject(, "Excel.Application") If Err.Number <> 0 Then Set objExcel = CreateObject("Excel.Application") blnEXCEL = True End If Err.Clear On Error GoTo 0 ' Change this next line to True if the first row in EXCEL worksheet ' has field names blnHasFieldNames = False ' Replace C:\Filename.xls with the actual path and filename strPathFile = Me.txtPath ' "C:\Filename.xls" ' Replace tablename with the real name of the table into which ' the data are to be imported strTable = "tbl_Sheets" '"tablename" ' Replace passwordtext with the real password; ' if there is no password, replace it with vbNullString constant ' (e.g., strPassword = vbNullString) strPassword = vbNullString '"passwordtext" blnReadOnly = True ' open EXCEL file in read-only mode ' Open the EXCEL file and read the worksheet names into a collection Set colWorksheets = New Collection Set objWorkbook = objExcel.Workbooks.Open(strPathFile, , blnReadOnly, , _ strPassword) For lngCount = 1 To objWorkbook.Worksheets.Count colWorksheets.Add objWorkbook.Worksheets(lngCount).Name Next lngCount ' Close the EXCEL file without saving the file, and clean up the EXCEL objects objWorkbook.Close False Set objWorkbook = Nothing If blnEXCEL = True Then objExcel.Quit Set objExcel = Nothing ' Import the data from each worksheet into the table For lngCount = colWorksheets.Count To 1 Step -1 DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, _ strTable, strPathFile, blnHasFieldNames, colWorksheets(lngCount) & "$" Next lngCount ' Delete the collection Set colWorksheets = Nothing '--------------------------------- ' importing is finished 'now organize the table, by adding the ID to all the group Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From tbl_Sheets") rst.MoveLast: rst.MoveFirst RC = rst.RecordCount For i = 1 To RC If rst!F1 = "رقم الهوية" Then 'And Len(rst!ID & "") = 0 Then myID = rst!F2 rst.Edit rst!ID = myID rst.Update Else rst.Edit rst!ID = myID rst.Update End If rst.MoveNext Next i rst.Close: Set rst = Nothing 'append the data DoCmd.SetWarnings False DoCmd.OpenQuery "qry_Append_Sheets" DoCmd.SetWarnings True MsgBox "Done" ' Uncomment out the next code step if you want to delete the ' EXCEL file after it's been imported ' Kill strPathFile End Sub . . ولكن ، يجب عليك ان تحذف بيانات الجداول Degree و tbl_Sheets قبل ان تقوم بأي عمل جعفر 275.ImportDegrees.accdb.zip
    1 point
  26. السلام عليكم اخواني الملف بعد تعديل عدة اخطاء تحياتي Last Add Remove copy قائمة منسدله.rar
    1 point
  27. السلام عليكم نظرا لطلب احد الاخوة اضافة خاصية النسخ تم اضافة هذه الخاصيه ارجو الملاحظات تحياتي Last Add Remove copy قائمة منسدله.rar
    1 point
  28. السلام عليكم اخي الفاضل skyblue If Target.Address = Range("kh_test").Cells(MyRows - 2, 1).Address و هذا يعني انه ادا كان عنوان الخلية المحددة = عنوان الصف ما قبل الاخير للمدي kh_test فلنفرض ان المدي kh_test هو من A1:A8 فلخلية المقصوده هنا هي A6 Range("kh_test").Cells(MyRows - 1, 1).EntireRow.Insert و هذا معناه ان يتم ادراج صف قبل الصف الاخير لعدد الصفوف للمدي kh_test Target.Resize(1, 4).Interior.ColorIndex = xlNone Target(2, 1).Resize(1, 4).Interior.ColorIndex = 36 وهذان السطران مرتبطان ببعضهما حيث ان السطر الاول لازالة الالوان من صف الخلية المحددة و الي العمود الرابع منها و السطر الثاني لاعطاء لون للصف الذي يلي الخليه المحددة و الي العمود الربع منها ارجو ان اكون وفقت في الشرح خالص تحياتي
    1 point
×
×
  • اضف...

Important Information