TẠO BẢNG EXCEL MẪU SỬ DỤNG PYTHON (MAKE SAMPLE EXCEL USING PYTHON)

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
II.a. Định dạng màu sắc cho hàng chẵn và hàng lẻ
II.b. Tô đậm hàng tiêu đề, căn chỉnh chiều rộng của cột và chiều cao của hàng.
II.c. Tạo viền cho vùng dữ liệu, thay đổi hình dạng và độ dày đường viền.
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. 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:

Có 1 vùng dữ liệu excel thể hiện các thông tin của nhân viên trong 1 công ty (nội dung như trong hình ở dưới)

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

Sử dụng lập trình Python để thực hiện thay đổi vùng dữ liệu thành định dạng một bảng dữ liệu mẫu trong excel.

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

Bảng dữ liệu thu được sau khi code:     

 

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

II.a. Định dạng màu sắc cho hàng chẵn và hàng lẻ

 Đầu tiên, chúng ta sử dụng hàm for để định dạng màu sắc cho hàng chẵn và hàng lẻ trong vùng dữ liệu. Trong vòng lặp for, biến i sẽ chạy từ dòng 1 tới dòng 17. Chúng ta dùng điểu kiện If để kiểm tra xem biến i có chia hết cho 2 không, nếu có tức là biến i là giá trị hàng chẵn, thì hàng đó sẽ được fill color thành màu xanh lá cây đậm có mã RGB là 141, 224, 154. Nếu không thì hàng đó là hàng lẻ, sẽ được fill color màu trắng, có mã RGB là 255, 255, 255. Chúng ta thực thi code, kết quả trả về là vùng dữ liệu cho trước đã được chia thành các vùng màu xanh lá cây và màu trắng. Các bạn lưu ý, nếu các bạn muốn lựa chọn các màu sắc không phải là màu xanh lá cây đậm, các bạn có thể tìm kiếm thông tin bảng mã RGB trên trang web google.com và lựa chọn màu sắc mà các bạn mong muốn.

II.b. Tô đậm hàng tiêu đề, căn chỉnh chiều rộng của cột và chiều cao của hàng.

Từ ô B2 tới ô G2, chúng ta sử dụng hàm Bold để tô đậm hàng đầu tiên. Các bạn thực thi code, kết quả là thanh tiêu đề của vùng dữ liệu đã được tô đậm. Sau đó, chúng ta tiến hành căn chỉnh hàng ngang và hàng dọc của vùng dữ liệu sao cho hợp lý. Tại cột B , các bạn sử dụng hàm column width để căn chỉnh chiều rộng của cột này có giá trị là 5. Tại các cột từ cột C tới cột G là các cột chứa nội dung của vùng dữ liệu, các bạn sử dụng hàm column width để căn chỉnh chiều rộng các cột này có giá trị là 10. Trong khoảng từ hàng 1 tới hàng 17, các bạn sử dụng hàm row height để căn chỉnh chiều cao các hàng có giá trị là 25. Chúng ta thực thi code. Kết quả là vùng dữ liệu đã được căn chỉnh theo khoảng cách của các hàng và các cột mà chúng ta lựa chọn. Các bạn lưu ý, các giá trị về chiều rộng cột và chiều cao hàng mà chúng ta lựa chọn có thể thay đổi sao cho phù hợp với vùng dữ liệu cho trước. Trong bài học này, chúng tôi sử dụng hàm WarpText với cột C, các bạn chọn giá trị của hàm WarpText tại cột này là True. Chúng ta thực hiện code, kết quả là các giá trị trong cột C đã được hiển thị đầy đủ.

II.c. Tạo viền cho vùng dữ liệu, thay đổi hình dạng và độ dày đường viền.

Tiếp theo, chúng tôi sẽ hướng dẫn các bạn tạo viền cho vùng dữ liệu cho trước. Để tạo viền cho một vùng dữ liệu cho trước, chúng ta sử dụng hàm Border. Với các giá trị tham số khác nhau của hàm Border sẽ trả về các khu vực viền được tạo khác nhau. Tại vùng dữ liệu từ ô B2 đến ô G17, chúng ta sử dụng hàm Border có giá trị tham số hàm là 7, sử dụng hàm Linestyle có giá trị tham số bằng 1 để tạo viền ngoài cùng bên trái của vùng dữ liệu. Các bạn thực thi code, kết quả là đường viền ngoài cùng bên trái của vùng dữ liệu chúng ta lựa chọn đã được tạo. Tương tự, các bạn thay thế tham số của hàm Border lần lượt bằng các giá trị 8, 9, 10, 11 và 12. Kết quả trả ra sẽ lần lượt là border phía trên cùng, border phía dưới cùng, border phía ngoài cùng bên phải, border theo chiều dọc và border theo chiều ngang. Các bạn thực thi code, kết quả là một bảng dữ liệu hoàn chỉnh đã được tạo. Tiếp đó, nếu các bạn muốn xóa 1 border mà các bạn vừa tạo, ví dụ như border ngoài cùng bên trái, các bạn thay thế tham số của hàm LineStyle từ 1 thành None. Các bạn thực thi code, kết quả là border ngoài cùng bên trái đã bị xóa. Các border khác các bạn làm tương tự. Các bạn lưu ý, hàm LineStyle là hàm định dạng cho hình dạng của border. Với giá trị tham số hàm LineStyle bằng 1 sẽ cho ra Border là đường đơn nét. Tương tự, với giá trị tham số hàm LineStyle bằng 2, 3, 4, 5 sẽ lần lượt trả ra kết quả là các đường viền khác nhau. Chúng tôi sẽ cung cấp cho các bạn các giá trị tham số trong file script python mẫu, các bạn có thể tải về để xem cho rõ hơn. Tiếp đó, chúng tôi sẽ hướng dẫn các bạn dùng hàm Weight để thay đổi độ dày của đường viền. Chúng ta sẽ tiền hành zoom vùng dữ liệu lại để nhìn cho rõ hơn. Tại giá trị tham số Border là 7 tương ứng với đường viền ngoài cùng bên trái, chúng ta lần lượt dùng hàm Weight có giá trị là 2, 3, 4. Các bạn thực thi code, kết quả là với các giá trị hàm Weight lớn hơn, đường viền sẽ dày hơn. Tùy theo nhu cầu sử dụng mà các bạn lựa chọn độ dày đường viền cho hợp lý. Đối với các đường viền khác, các bạn cũng làm tương tự. 

III. KẾT LUẬN

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

Dùng để tạo định dạng cho vùng dữ liệu để làm bản báo cáo, theo dõi, quản lý số liệu.

2. Ưu điểm

Sau khi đã xây dựng công thức xong thì ta chỉ cần copy công thức để sử dụng.

3. Nhược điểm

Do bài học này mang tính chất giới thiệu công thức nên công thức thể hiện trong bài tương đối dài, nếu đã quen dùng vòng lặp for, đối với mục II.b và II.c, bạn chỉ cần 2 dòng code cho mỗi mục để thể hiện công thức.

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 *