TẠO BẢNG CHẤM CÔNG TỰ ĐỘNG THEO NGÀY, THÁNG, NĂM TRONG EXCEL SỬ DỤNG PYTHON P6 (CHẤM CÔNG CHO NHÂN VIÊN TRONG CÔNG TY NHỎ)

CÁC NỘI DUNG CHÍNH
I. YÊU CẦU ĐẦU VÀO
1. CHUẨN BỊ NỘI DUNG
2. YÊU CẦU KIẾN THỨC
3. ĐỀ BÀI VÀ YÊU CẦU ĐẶT RA
II. CÁC BƯỚC THỰC HIỆN
Xây dựng công thức cho vùng range cell từ cột AL tới cột AP
III. KẾT LUẬN
1. Trường hợp vận dụng 
2. Ưu điểm
3. Nhược điểm

I. YÊU CẦU ĐẦU VÀO

1. CHUẨN BỊ NỘI DUNG

Để bắt đầu bài học, các bạn cần có ít nhất 01 máy tính để bàn hoặc laptop, trong đó đã cài đặt:

a. Python

b. Visual Studio Code

c. Microsoft Excel từ 2007 trở lên để tối ưu việc lập trình bằng python.

d. Teamviewer hoặc Ultraviewer để được các giảng viên và trợ giảng của trang web Pyan.vn hỗ trợ 24/7 nếu các bạn bị vướng mắc trong quá trình code.

2. YÊU CẦU KIẾN THỨC

Đối với bài học này, các bạn cần nẵm vững các kiến thức sau:

a. Cách sử dụng vòng lặp FOR

b. Cách sử dụng hàm điều kiện IF

c. Cách sử dụng vòng lặp WHILE

d. Nếu chưa nắm vững kiến thức, các bạn có thể trao đổi thêm với các giảng viên và trợ giảng của trang web Pyan.vn để được hỗ trợ.

3. ĐỀ BÀI VÀ YÊU CẦU ĐẶT RA

a. Đề bài:

Tạo một bảng chấm công tự động theo ngày, tháng, năm trong excel sử dụng python.

b. Yêu cầu đặt ra:

Lần lượt xây dựng từng thành phần của bảng chấm công bằng code. Cuối cùng chỉ cần 1 click chuột là ta có 1 bảng chấm công tự động theo ngày, tháng, năm.

Bảng dữ liệu ban đầu:

Bảng dữ liệu thu được sau khi code hoàn chỉnh

II. CÁC BƯỚC THỰC HIỆN

Xây dựng công thức cho vùng range cell từ cột AL tới cột AP

Trước hết, chúng ta sẽ tạo drop down list cho các ký hiệu chấm công của bảng chấm công từ cell AL1 đến cell AL6. Đầu tiên, các bạn khai báo biến list symbol là một danh sách giá trị của các cell từ AL1 đến AL6.  Tiếp đó, chúng ta dùng hàm Map để chuyển từng phần tử trong list symbol về định dạng string. Sau đó, chúng ta dùng hàm join để nối các string này về thành một chuỗi và mỗi phần tử cách nhau bởi dấu phẩy. Ta đặt tên cho chuỗi này là list symbol join. Tiếp theo, các bạn đặt drop down list này vào trong bảng chấm công từ cell G10 đến cell A K last row ID . Các bạn tiến hành xóa các thiết lập Validation cũ trong vùng range cell thông qua việc chọn range cell từ G10 đến AK last row ID , sau đó api, tiếp đến validation và cuối cùng hàm delete. Tiếp đó, các bạn tạo drop down list thông qua hàm sht chấm range từ cell G10 đến cell A K last row ID chấm api chấm Validation chấm Add. Trong hàm Add chúng ta truyền vào 4 tham số. Giá trị của tham số loại list là 3, giá trị của tham số cảnh báo là 1, giá trị của tham số operation là 3, tham số cuối cùng là chuỗi list symbol join thông qua phương thức format f. Các bạn tiến hành thực thi code.  Kết quả là tại vùng range cell để chấm công chúng ta đã có các drop down list kí hiệu cho việc chấm công. 

Bây giờ, để tiện cho việc chấm công, chúng tôi giả định bảng chấm công đã được lấp đầy các ký hiệu. Chúng ta sẽ xây dựng công thức cho vùng range cell từ cột A L tới cột A P. Trong vòng lặp while với biến j bằng 10, j nhỏ hơn last row ID cộng 1. Chúng ta khai báo biến mai list là một list rỗng. Tiếp đó, các bạn sử dụng vòng lặp for với biến i trong range từ 7 đến 37. Trong vòng lặp for các bạn dùng phương thức append để đưa giá trị của các cell trong hàng j cột i vào trong mai list. Tiếp đó, các bạn lần lượt khai báo các biến workday, H workday, B Trip, O leave, S leave, Other W lần lượt là các tổng số các ký hiệu tương ứng với các nội dung làm hết 1 ngày công, làm hết nửa ngày công, đi công tác, đang nghỉ phép, nghỉ ốm và lý do khác. Các bạn sử dụng hàm sum để tính tổng các giá trị là 1 cho item trong my list nếu item đó có giá trị lần lượt là x, là x chia 2, B, L, S, O. Sau khi đã có được tổng số các ký hiệu, chúng ta lần lượt gán các giá trị này vào các cột tương ứng. Các bạn gán cho giá trị của range cell hàng j cột 38 là workday cộng H worday chia 2 để ra số ngày công làm việc. Tương tự, các bạn gán cho giá trị range cell của hàng j cột 39, 40, 41,42 lần lượt các giá trị là B trip, O leave, S leave và Other w.  Các bạn cho biến j tăng thêm 1 đơn vị để duyệt các phần tử tiếp theo. Các bạn thực thi code, kết quả là bảng chấm công từ cột A L đến A P đã được lấp đầy.

III. KẾT LUẬN

1. Trường hợp vận dụng

Sử dụng bảng chấm công tự động theo ngày, tháng, năm nhằm mục đích quản lý nhân sự – hành chính.

2. Ưu điểm

Sau khi đã xây dựng công thức xong thì ta chỉ cần thay các giá trị tham số mà ta dùng để so sánh như trong bài học là có thể áp dụng được.

3. Nhược điểm

Số lượng code tương đối nhiều, đối với người mới học có thể phát sinh lỗi trong quá trình code, yêu cầu sự kiên trì, tỉ mỉ.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *