چگونه به استفاده از VBA آرایه در اکسل برای ایجاد یک ساده فهرست کارکنان

[ad_1]

یکی از خسته کننده ترین و وقت گیر شغل در یک دفتر می تواند ایجاد فهرست کارکنان. با ثابت درخواست برای تغییرات به دلیل تعطیلات و مناسبت های خاص و یا کارکنان غیبت اکثر مدیران بیش از حد شلوغ ایجاد فهرست اسامی به فکر کردن در مورد در حال توسعه یک سیستم بهتر.

با چند خط کد VBA ما're رفتن به ایجاد پایه و اساس یک فهرست کارکنان سیستم که لیست هر روز از هفته و در دسترس کارکنان برای کار در آن روز.

مطابق با آرایه ها برای ایجاد یک فهرست

همه ما نیاز به یک لیست از اعضای هیات جزئیات آن روز آنها در دسترس هستند برای کار; سپس ما مطابقت این با هر روز از هفته را برای تولید یک لیست از کارکنان و آن روز مشغول به کار هستند.

  Joe Esposito, Mon Tue Wed 
Maria Costello, Thu Fri Sat

لیست کارکنان روز در دسترس ما'خواهید نگه دارید در یک کاربرگ به نام “کارکنان” و ما کد را به سادگی مسابقه تا هر روز از هفته را با ثبت در دسترس برای هر یک از کارکنان:

  'create a roster collection to record each day of the week and who is available 

Dim roster As New Collection

'define the sheet and select the employee available days
Sheets ("employees"). Activate
Range ("a2"). CurrentRegion.Columns (2) .Select

اگر شما're با استفاده از یک حائل برای ایجاد آرایه های یک انتخاب خوب است که همیشه “|” و یا لوله ، یک کاما می توانید ایجاد کنید مشکلات به دلیل واقعی داده ها ممکن است شامل کاما که ناراحت می توانید آرایه.

  'create an array of the days of the week 
days = Split ("mon | tue | wed | thu | fri | sat | sun", "|")

'Compare each day of the week to the days each employee is available
for x = 0 To UBound (days)
workers = ""

'if the day of the week matches the employees availability, add it to the list of workers for that day
For Each c In Selection

If InStr (trim (c.Value), days (x))> 0 Then

workers = workers & c.Offset (0, -1) .Value & ","

End If
Next
workers = days (x) & ":" & Mid (workers, 1, Len (workers) - 1)

ما've در حال حاضر یک لیست از کارگران در دسترس برای روز جاری و ما'll آنها اضافه کردن به فهرست مجموعه قبل از حرکت به روز بعد از هفته است.

  roster.Add workers 
Next

کد خروجی
تنها چیزی که از چپ به کار است چاپ فهرست مجموعه است که یک لیست از کارگران در دسترس برای هر روز از هفته است. گام بعدی خواهد بود به ارائه لیست در یک قالب کاربر پسند برای توزیع.

  mon: Joe Eposito, Peter Fargo, Lily Markham 
tue: Joe Eposito, Lily Markham, Iain Malcolm
wed: Joe Eposito, Lily Markham, Iain Malcolm
thu: Maria Costello, Peter Fargo, Lily Markham, Iain Malcolm
fri: Maria Costello
sat: Maria Costello
sun: Peter Fargo, Lily Markham

پیشرفت های کد VBA
در حال توسعه یک فهرست کارکنان می تواند یک کار پیچیده اما آن's مهم برای شروع بشه. هنگامی که یک پایه سیستم در محل است که در آن پس از آن می تواند اضافه شده به بدون از دست دادن بینایی از هدف اصلی. برخی از پیشنهادات ممکن است شامل:

  • با استفاده از اعداد تصادفی برای تولید فهرستی از روز هنگامی که تعداد کارکنان کم
  • برجسته کردن روز هفته که نیاز به توجه
  • فعال کردن کارکنان به رتبه پشتیبان گیری روز که در آن آنها ممکن است خواسته شود به کار

خلاصه
یک فهرست کارکنان باید یک ساختار متفاوت برای تقریبا هر سازمان است. اما با برخی از برنامه ریزی و آگاهی از اکسل و VBA آن را تقریبا همیشه ممکن است برای تولید یک فرایند است که یک بهبود در روش فعلی.

[ad_2]

Source by Andy L Gibson