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

ماهي الطريقة لتحويل ملف اكسل الى قاعدة بيانات للموظفين (معدل)


ام زهراء

الردود الموصى بها

السلام عليكم ورحمه الله 

اعزائي اذا امكن مساعدتي في انشاء قاعدة بيانات للموظفين مع العلم جميع المعلومات موجودة لدي في ملفات اكسل 

القاعدة الاولى خاصة بمعلومات شاملة للموظف 

 البيانات الاساسية 

(اسم الموظف - السجل المدني - تاريخ الميلاد - مكان الميلاد - رقم الجوال - المؤهل العلمي - التخصص )

البيانات الوظيفية

جهة العمل - مقر العمل -القسم /الشعبة - تاريخ التعين -المرتبة الحالية - تاريخ التعين على المرتبة الحالية - المسمى الوظيفي -العمل الفعلي - هل مكلف من ادارة اخرى ؟ نعم / لا - الادارة المكلف منها)

 

الاحتياج من القاعدة ( إضافة - تعديل - حذف - استعلام-تقرير) ارسال رساله للموظف بالبريد الالكتروني - الوت ساب 

 

القاعدة الثانية 

انشاء قاعدة بيانات لطلب نقل موظفين 

الفكرة ارسال رابط نموذج ويتم تعبئة من قبل الموظف بالبيانات السابقة وادخال رغباته بالنقل وتحديد الجهة 

الدور لنا عمل تصفيه وفرز بموجب معاير معينه مثل الاقل غياب - الاداء الوظيفي -الاقدمية في العمل كامثال

 

شاكرة ومقدرة جهودكم واتمنى المساعدة لبدا العمل او تقديم المقترح لفكره العمل

 

رابط هذا التعليق
شارك

السلام عليكم .. لكى يفيدك احد الاخوة يجب عليكى ان تصممى القاعدة بنفسك وعند مواجهتك لأى مشكلة يمكنك فتح موضوع هنا وستجدين الحل بإذن الله , أما ان تطلبى تصميم قاعدة من الألف الى الياء فهذا غير متعارف عليه هنا .

يمكنك البدأ بتأسيس الجداول وعمل العلاقات وتنفيذ الاستعلامات المطلوبة ثم فى حالة مواجهتك مشكلة او تريدين تنفيذ فكرة ما يمكنك فتح موضوع محدد لهذا الغرض .. بالتوفيق

رابط هذا التعليق
شارك

اهلا اخي الكريم

لا اطلب مساعدة في انشاء القاعدة من الاخوان

اطلب فقط الخطوات لبدا العمل بنفسي خاصة عملي على الاكسل وارغب بنقله او انشاء من جديد في الاكسس وذلك تفادياً للخطا 

اعتذر لفهمك الطلب بهذا الشكل 

رابط هذا التعليق
شارك

40 دقائق مضت, ام زهراء said:

اعتذر لفهمك الطلب بهذا الشكل 

لا داعى للاعتذار اختى الفاضلة كلنا هنا نتعلم ونساعد بعضنا ,, بخصوص طلبك يمكننى اقتراح التالى وذلك لتأسيس القاعدة التى تريدينها :

بالنسبة للجداول (يفضل تسمية الكائنات باللغة الانجليزية لتسهيل العمل فى القاعدة) :

  • الجدول الاول : وهو جدول الموظفين ومعه ما يتعلق بهم من بيانات وليكن اسمه TblEmployees يحتوى على الحقول التالية  (كود الموظف - اسم الموظف - السجل المدني - تاريخ الميلاد - مكان الميلاد - رقم الجوال - المؤهل العلمي - التخصص - جهة العمل - مقر العمل -القسم /الشعبة - تاريخ التعين -المرتبة الحالية - تاريخ التعين على المرتبة الحالية - المسمى الوظيفي -العمل الفعلي - هل مكلف من ادارة اخرى ؟ نعم / لا - الادارة المكلف منها ) وذلك طبقاً لبياناتك المذكورة وزيادة عليها عمل كود للموظف وجعله مفتاح اساسى لعدم التكرار , اذا لم ترتاحى لدمجهم فى جدول واحد فلتقسميهم الى جدولين كما تحبين  ولكنى لا ارى دافع يجعلنا نقسمهم الى جدولين حتى الآن .
  • الجدول الثانى : جدول المؤثرات حضور و انصراف واجازات وغياب الخ .. يحتوى على الحقول (كود الموظف - التاريخ - ساعة الحضور - ساعة الانصراف - نوع الاجازة (فى حالة عدم الحضور) - ملاحظات) يتم ربط هذا الجدول بجدول الموظفين عن طريق كود الموظف والعلاقة One To Many او واحد الى متعدد بالعربى .

هذه هى البداية والباقى يأتى تباعاً طبقا لاحتياجك .. واقترح عليكى البحث فى المنتدى بكلمة شئون موظفين او حضور وانصراف موظفين وستجدين الكثير من الافكار .

بالتوفيق.

رابط هذا التعليق
شارك

الله يجزاك خيراً 

طيب يتم ادخال البيانات يدوي او يتم جلبها من ملفات اكسل الموجوده لدي ..

بخصوص الحضور لا احتاجه لوجود نظام خاصه له لدى العمل

بخصوص طلب نقل موظفين المذكوره لكم سابقاً كيف المعالجه

 

بإذن الله سيتم تطبيق تعليماتكم وارفع لكم للتقيم وابدا رئيكم 

 

شاكره جهودكم وبارك الله فيكم

رابط هذا التعليق
شارك

33 دقائق مضت, ام زهراء said:

طيب يتم ادخال البيانات يدوي او يتم جلبها من ملفات اكسل الموجوده لدي ..

يتم استيرادها من الملفات الموجودة مسبقاً اختصارا للوقت والجهد , ولكن قد تحتاج لبعض التهيئة والترتيب لاستيرادها للجدول الجديد.

 

34 دقائق مضت, ام زهراء said:

بخصوص طلب نقل موظفين المذكوره لكم سابقاً كيف المعالجه

لن تحتاجى لقاعدة جديدة لهذا الطلب يمكن عمل التالى :

  • اضافة جدول جديد باسم TblRequests مثلا ويكون به الحقول التالية (كود الموظف - رقم الطلب او الاستمارة - تاريخ تقديمه - ملاحظات )
  • نموذج لتعبئة حقول الطلب بالشكل الذى ترينه مناسباً.
  • يتم عمل التقييم المطلوب بناء على البيانات الاخرى الموجودة فى القاعدة مثل ايام الغياب - تقييم شهرى مثلا لو هناك تقييم وهكذا .

الفكرة كلها سيتم ادخال جميع البيانات اللازمة فى القاعدة الجديدة .

37 دقائق مضت, ام زهراء said:

بخصوص الحضور لا احتاجه لوجود نظام خاصه له لدى العمل

قد تحتاجيه اذا كان هناك تقييم على الاجازات والغيابات وتأخيرات الحضور الخ ... طبعاً هذا ليس مجال عملى وانت الاكثر دراية بما ستحتاجيه فى المستقبل .

 

39 دقائق مضت, ام زهراء said:

شاكره جهودكم وبارك الله فيكم

بالتوفيق

رابط هذا التعليق
شارك

21 ساعات مضت, Amr Ashraf said:
21 ساعات مضت, ام زهراء said:

طيب يتم ادخال البيانات يدوي او يتم جلبها من ملفات اكسل الموجوده لدي ..

يتم استيرادها من الملفات الموجودة مسبقاً اختصارا للوقت والجهد , ولكن قد تحتاج لبعض التهيئة والترتيب لاستيرادها للجدول الجديد.

السلام عليكم 🙂

طبعا هناك عدة طرق لهذا العمل ، ويعتمد اذا عندك ملف واحد او عدة ملفات ، واذا كانت الملفات ستتكرر لاحقا ،

وعليه يمكننا مساعدتك في استيراد اول ملف وتجهيز الجدول والكود للملفات التالية 🙂

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

بوجه عام ، في جدول الاكسس نضيف حقل اسمه القسم ، ثم نجمع جميع هذه الملفات في جدول واحد 🙂

 

بس قبل هذه الخطوة ، نحتاج الى اجابة على الاسئلة ، حتى نعرف كيف عمل الجدول/الجداول :

10 ساعات مضت, jjafferr said:

اذا عندك ملف واحد او عدة ملفات ، واذا كانت الملفات ستتكرر لاحقا

 

جعفر

رابط هذا التعليق
شارك

12 ساعات مضت, ام زهراء said:

لدي عدة ملفات تصل الى اكثر من 500 ملف 

السلام عليكم .. اختى الفاضلة هذا عدد كبير من الملفات ولذلك لدى فكرة قد تسهل عليكى اذا كانت الملفات كلها نفس التنسيق وترتيب الاعمدة مثلا يمكننا ان نتعب الاكسيل معنا قليلاً ليساعدنا 😅

انظرى الى هذا الكود , يتم عمل موديول جديد ولصق الكود التالى به

Sub LoopAllExcelFilesInFolder()

Dim wb As Workbook
Dim myPath As String
Dim myFile As String
Dim myExtension As String
Dim FldrPicker As FileDialog

'Optimize Macro Speed
  Application.ScreenUpdating = False
  Application.EnableEvents = False
  Application.Calculation = xlCalculationManual


  Set FldrPicker = Application.FileDialog(msoFileDialogFolderPicker)

    With FldrPicker
      .Title = "اختر المجلد المطلوب"
      .AllowMultiSelect = False
        If .Show <> -1 Then GoTo NextCode
        myPath = .SelectedItems(1) & "\"
    End With

'In Case of Cancel
NextCode:
  myPath = myPath
  If myPath = "" Then GoTo ResetSettings


  myExtension = "*.xls*"


  myFile = Dir(myPath & myExtension)


  Do While myFile <> ""
   
      Set wb = Workbooks.Open(Filename:=myPath & myFile)
    
      DoEvents
    
   
      Cells.Select
      Selection.Copy
      Windows("1.xlsx").Activate
      
    Dim Rng As Range
    Set Rng = Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
    Rng.Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

   '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    

      wb.Close SaveChanges:=True
      
   
      DoEvents


      myFile = Dir
  Loop


  MsgBox "تمت العملية بنجاح"

ResetSettings:

    Application.EnableEvents = True
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True

End Sub

طريقة عمل الكود : يقوم بفتح كل ملفات الاكسيل فى مجلد تقومين باختياره ويقوم بنسخ محتوياته ولصقها فى شيت اكسيل اسمه 1.xlsx ويجب ان يكون هذا الشيت مفتوح ليقوم بلصق المحتويات فيه .. عملية اللصق تكون Paste Values بمعنى انها بدون تنسيق او معادلات .

لتشغيل الكود بعد حفظه اضغطى على Alt+F8 وقومى باختيار اسمه من قائمة الماكرو واضغطى Run وبعدها اختارى المجلد الذى يحتوى على ال500 ملف المطلوبين ثم Ok وسيقوم الاكسيل بالباقى وهو تجميع ال500 ملف فى الشيت 1.xlsx

12 ساعات مضت, jjafferr said:

في جدول الاكسس نضيف حقل اسمه القسم ، ثم نجمع جميع هذه الملفات في جدول واحد

وازيدك من الشعر بيت كما قال استاذنا جعفر اذا كانت ال500 ملف بها خلية معينة بها اسم القسم يمكن تعديل الكود لكتابة اسم القسم بجانب البيانات الخاصة به وبهذا ينتج عندنا ملف واحد به كل البيانات المطلوبة ويتم لصقها فى جدول الاكسس فقط .

فى حالة عدم وضوح الفكرة يمكننى عمل شرح مصور لكى ..

بالتوفيق

رابط هذا التعليق
شارك

31 دقائق مضت, Amr Ashraf said:

طريقة عمل الكود : يقوم بفتح كل ملفات الاكسيل فى مجلد تقومين باختياره ويقوم بنسخ محتوياته ولصقها فى شيت اكسيل اسمه 1.xlsx

نعم ، هذه طريقة ، والمنتدى به الكثير من الطرق الاخرى مباشرة من الاكسس ، لإستيراد بيانات الاكسل الى الاكسس ، سواء من مجلد به ملفات اكسل مختلفة ، او من اوراق (sheet) مختلفة من نفس ملف الاكسل 🙂

 

 

31 دقائق مضت, Amr Ashraf said:

اذا كانت ال500 ملف بها خلية معينة بها اسم القسم

المهم محتاجين نعرف ان هذا الملف/الورقة للقسم الفلاني ، سواء من اسم الملف او اسم الورقة ، وبدون المساس بالملف/الورقة ، وبرمجيا نسجل القسم في جدول الاكسس 🙂

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information