در هر سازمان، شرکت یا کسبوکاری، مدیریت دقیق اطلاعات کارکنان یکی از حیاتیترین وظایف بخش منابع انسانی و مدیریت داخلی است. نگهداری سوابق در فایلهای پراکنده کاغذی یا شیتهای نامنظم، خطر خطای انسانی و از دست رفتن دادهها را بهشدت افزایش میدهد. با استفاده از قابلیتهای استاندارد اکسل، میتوان یک دیتابیس ساختارمند و فرممحور برای مدیریت پرونده الکترونیک کارکنان پیادهسازی کرد.
به تعریف دانشنامه ویکیپدیا: «پایگاه داده (Database) به مجموعهای از دادههای مرتبط و سازمانیافته گفته میشود که دسترسی، مدیریت، بهروزرسانی و تحلیل آنها با ساختاری منطقی امکانپذیر باشد.»
مبانی طراحی پایگاه داده پرسنلی در اکسل
برای ایجاد یک سیستم یکپارچه و جلوگیری از خطای ورود اطلاعات، تفکیک دادههای خام از بخش نمایش (داشبورد پرونده) الزامی است. معماری استاندارد این سیستم شامل دو کاربرگ (Sheet) اصلی است:
- کاربرگ پایگاه داده (Master Data): ثبت اطلاعات هویتی، شغلی و مالی به صورت سطری.
- کاربرگ پرونده الکترونیک (Profile Dashboard): فرم نمایش و جستجوی اطلاعات هر پرسنل بر اساس کد پرسنلی یا کد ملی.
[A clear, high-resolution screenshot of a Microsoft Excel workbook showing two distinct tabs named 'Database' and 'Employee_Profile', with the Database tab containing structured tabular employee data including Personnel ID, Full Name, National ID, Department, Job Title, and Phone Number.]
مرحله اول: ساخت جدول اطلاعات پایه و اعتبارسنجی دادهها
در شیت Database، ستونهای اطلاعاتی زیر را ایجاد کنید:
- کد پرسنلی (
Personnel_ID) - نام و نام خانوادگی (
Full_Name) - کد ملی (
National_ID) - واحد سازمانی (
Department) - سمت شغلی (
Job_Title) - شماره تماس (
Phone_Number) - تصویر پرسنلی (
Photo_Path)
محدوده دادهها را انتخاب کرده و با فشردن کلیدهای Ctrl + T آن را به یک جدول رسمی به نام tbl_Employees تبدیل کنید. برای کنترل صحت دادهها، روی ستون کد ملی از ابزار Data Validation استفاده کنید تا طول کاراکترها دقیقاً روی ۱۰ رقم تنظیم شود.
مرحله دوم: طراحی فرم پرونده الکترونیک (داشبورد پرسنلی)
در شیت Employee_Profile، یک کارت پرسنلی منظم طراحی کنید. در بالاترین بخش، سلول C3 را برای انتخاب یا ورود کد پرسنلی در نظر بگیرید.
با اعمال Data Validation از نوع List روی این سلول و ارجاع به ستون کد پرسنلی جدول اصلی، یک منوی کشویی ایجاد کنید.
مرحله سوم: فراخوانی خودکار اطلاعات با توابع جستجو
برای نمایش خودکار اطلاعات از شیت پایگاه داده به فرم پرونده، از تابع قدرتمند XLOOKUP (یا ترکیب INDEX و MATCH) استفاده کنید.
=XLOOKUP(C3, tbl_Employees[Personnel_ID], tbl_Employees[Full_Name], "یافت نشد")
برای ستونهای دیگر نیز فرمول را با تغییر بردار خروجی تکرار کنید:
// Fetch Department
=XLOOKUP(C3, tbl_Employees[Personnel_ID], tbl_Employees[Department], "ثبت نشده")
// Fetch Job Title
=XLOOKUP(C3, tbl_Employees[Personnel_ID], tbl_Employees[Job_Title], "ثبت نشده")
مرحله چهارم: فراخوانی پویای تصویر پرسنلی
برای اتصال عکس به کد پرسنلی:
- تصاویر کارکنان را داخل یک پوشه مشخص ذخیره و مسیر فایل را در ستون
Photo_Pathوارد کنید. - از تب Developer و بخش فرمهای VBA، قطعهکد زیر را برای بارگذاری خودکار تصویر به شیت پروفایل اختصاص دهید:
' Event trigger on cell change to update employee picture
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$3" Then
Dim photoPath As String
Dim employeePic As Picture
' Retrieve photo file path based on selection
photoPath = Application.WorksheetFunction.XLookup(Target.Value, Range("tbl_Employees[Personnel_ID]"), Range("tbl_Employees[Photo_Path]"), "")
' Delete existing profile picture if present
On Error Resume Next
Me.Pictures("ProfilePhoto").Delete
On Error GoTo 0
' Insert new picture if path exists
If photoPath <> "" And Dir(photoPath) <> "" Then
Set employeePic = Me.Pictures.Insert(photoPath)
With employeePic
.Name = "ProfilePhoto"
.Left = Range("G3").Left
.Top = Range("G3").Top
.Width = 100
.Height = 120
End With
End If
End If
End Sub
نظرات کاربران (0)