CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc
ĐƠN YÊU CẦU CÔNG NHẬN
SÁNG KIẾN HOẶC PHẠM VI ẢNH HƯỞNG
VÀ HIỆU QUẢ ÁP DỤNG CỦA SÁNG KIẾN
Kính gửi: Hội đồng xét cơng nhận phạm vi ảnh hưởng và hiệu quả áp
dụng sáng kiến ở cấp cơ sở
Tơi ghi tên dưới đây:
Số
TT
1
Họ và tên
Phạm Ngọc Hồng
Ngày
Nơi cơng tác
thángnăm
(hoặc nơi
sinh
thường trú)
29/04/1991
Chức
danh
Trường Tiểu Giáo
học xã Pắc Ta viên
Trình độ Tỷ lệ (%)
chun
đóng góp
mơn
vào việc
Cao đẳng
tạo ra
100%
Là tác giả tác giả đề nghị xét công nhận phạm vi ảnh hưởng và hiệu quả
áp dụng sáng kiến ở cấp cơ sở: Một số giải pháp để tạo phần mềm quản lý học
sinh trường tiểu học xã Pắc Ta bằng ngôn ngữ VBA trong microsoft Excel.
* Chủ đầu tư tạo ra sáng kiến: Trường Tiểu học xã Pắc Ta.
* Lĩnh vực áp dụng sáng kiến: Công nghệ thông tin.
* Ngày sáng kiến được áp dụng lần đầu hoặc áp dụng thử: 12/09/2020
* Sự cần thiết, mục đích của sáng kiến:
VBA có sẵn trong tất cả các ứng dụng Microsoft Office, bao gồm Excel.
Excel là một trong những chương trình phổ biến nhất trên thế giới và được sử
dụng trong nhiều lĩnh vực, nơi làm việc khác nhau, tất cả đều có quy trình làm
việc và trường hợp sử dụng riêng.
Tự động hóa với VBA Excel có thể thực hiện các nhiệm vụ tương tự với
tốc độ nhanh như chớp của máy tính.
Sử dụng VBA cho phép người dùng tập trung vào các công việc quan
trọng hơn, làm việc hiệu quả, năng suất, chất lượng hơn.
Lập trình VBA trong Excel là việc viết ra các câu lệnh để máy tự động
Ghi
chú
2
thực hiện những thao tác người dùng muốn trong Excel. Vì vậy, khi muốn thực
hiện một chức năng nào đó, chỉ cần gọi câu lệnh đã được lập trình sẵn bằng
VBA thì Excel tự động thực hiện các thao tác đó một cách nhanh chóng và tiết
kiệm rất nhiều thời gian so với việc thao tác thủ công bằng tay trên Ecxel.
Phần lớn người đi làm vẫn sử dụng Excel để xử lý dữ liệu và phân tích
báo cáo mặc dù ngày nay, hầu hết các doanh nghiệp đều đã xây dựng và phát
triển những hệ thống phần mềm kế toán và quản trị rất tốt như Oracle, SAP, …
hoặc các ngân hàng sử dụng Core Banking như T24, Flexcube, ….
Chính vì vậy, VBA trong Excel là một trong những công cụ cực kỳ hữu
hiệu nâng cao năng suất làm việc của người đi làm trong thời buổi công nghệ
ngày nay.
Mô tả giải pháp trước khi tạo ra sáng kiến
Giải pháp 1: Sử dụng các bảng thống kê thủ công trên giấy.
Mục tiêu:
Lưu trữ thông tin học sinh của lớp giảng dạy
Thực hiện tìm kiếm thơng tin học sinh khi cần sử dụng.
Cách thực hiện:
Hằng năm, mỗi giáo viên thường có bảng thơng kê học sinh của lớp mình
giảng dạy. Mỗi giáo viên thường tạo các bảng với các số liệu được lưu trong các
quyển sổ để thực hiện lưu trữ và tìm kiếm thơng tin học sinh khi cần thiết.
Ưu điểm:
Lưu trữ được thơng tin học sinh của lớp
Tìm kiếm được các thơng tin có trong bảng.
Nhược điểm:
Việc lưu trữ và tìm kiếm cần nhiều thời gian để thực hiện.
Trong q trình thực hiện có thể có nhiều sai sót dẫn đến số liệu thống kê
khơng chính xác.
- Việc thực hiện thủ cơng dẫn đến nhiều sai sót trong q trình thực hiện.
Giải pháp khắc phục:
Cần áp dụng cơng nghệ thơng tin trong q tình quản lý học sinh để tiết
3
kiệm thời gian, tính chính xác cao hơn.
Giải pháp 2: Sử dụng các hàm (Function) có sẵn trong phần mềm
Microsoft Excel.
Mục tiêu:
Thực hiện các phép tính hoặc các hàm liên quan được sử dụng trong biểu excel.
Cách thực hiện:
Trong các biểu Excel, để tính các số liệu có trong biểu người dùng phải sử
dụng các hàm để tính
Ưu điểm:
Việc sử dụng các hàm (Function) trong Excel giúp người dùng lọc, tìm
kiếm và tổng hợp được các số liệu.
Nhược điểm:
Cần nhiều thời gian trong việc sử dụng các hàm.
Với những biểu cần sử dụng số lượng lớn các hàm sẽ dễ xảy ra sai sót khi
sử dụng các hàm.
Do sử dụng các hàm nên người dùng phải hiểu rõ chức năng của từng hàm
và cách sử dụng trong từng điều kiện.
Việc sử dụng nhiều hàm làm dung lượng các tệp lớn gây chậm quá trình
khởi động tệp và xử lý số liệu với những máy cấu hình thấp.
Giải pháp khắc phục:
Áp dụng VBA sẽ tiết kiệm được thời gian, giảm dung lượng tệp.
Mô tả giải pháp khi áp dụng sáng kiến
Sự khác biệt của giải pháp mới so với giải pháp cũ.
Đối với các giải pháp cũ,người dùng phải sử dụng từng hàm riêng biệt đối
với từng cột và hàng trong Excel.
Với VBA, người dùng có thể tổng hợp số liệu một cách nhanh nhất bằng
các câu lệnh. Như vậy sẽ tiết kiệm được thời gian khi tổng hợp số liệu.
Những lý do nên sử dụng VBA
Ẩn/ hiện các Sheet một cách linh hoạt
Với những file Excel có rất nhiều Sheet, việc di chuyển giữa các Sheet trở
4
nên rất khó khăn. VBA có thể giúp người dùng thực hiện việc đó.Bằng việc có
thể kết hợp đồng thời thao tác Chọn Sheet + Ẩn / hiện Sheet.Làm việc với Sheet
nào thì mở ẩn Sheet đó ra.Khi khơng cần làm việc nữa, sẽ tự động ẩn
Sheet đó đi.
Tự động hóa các báo cáo bằng VBA
Chỉ với một cú click chuột, toàn bộ báo cáo phức tạp của người dùng
được cập nhật hoàn toàn tự động. Người dùng hoàn toàn có thể tự làm được điều
này trong Excel khi kết hợp với VBA. Bạn có thể khiến chức năng Advanced
Filter – một cơng cụ trích lọc dữ liệu rất mạnh trong excel – trở nên tự động mỗi
khi bạn thay đổi điều kiện báo cáo. Khi đó tồn bộ kết quả báo cáo sẽ được cập
nhật lại theo điều kiện mới.
Tự động lọc danh sách khơng trùng
Người dùng cũng có thể tự động hóa cho các thao tác lọc danh sách không
trùng bằng Advanced Filter, hay Remove Duplicates. Bằng cách ghi lại các thao
tác này với chức năng Record Macro.Như vậy, sẽ dễ dàng có được các đoạn mã
code trong VBA. Chỉ cần một click chuột để chạy đoạn mã đó, danh sách của
bạn đã được tự động lọc bỏ các giá trị trùng.
Tự động thay đổi hình ảnh theo tên được chọn trong một danh sách
Người dùng có một danh sách học sinh.Khi muốn tra cứu thông tin của
học sinh, bao gồm cả thơng tin và hình ảnh.Mỗi khi chọn tên một người, lập tức
những thông tin liên quan tới người đó tự động được hiện ra. Những điều này
hồn tồn có thể làm được khi bạn biết cách dùng VBA
Trích xuất dữ liệu từ Excel ra PDF mà có quá nhiều trang:
Với VBA, những thao tác như in ấn, trích xuất, lưu trữ… hồn tồn có
thể được thực hiện một cách tự động chỉ với mộtclick chuột. Thay vì mất hàng
giờ để trích xuất/ in ấn tài liệu theo từng trang, người dùng chỉ cần viết một đoạn
code và để Excel tự động làm việc đó cho bạn. Như vậy đã tiết kiệm được rất
nhiều thời gian và công sức.
Cách thực hiện
Để tạo phần mềm quản lý học sinh trường tiểu học xã Pắc Ta bằng ngôn
5
ngữ VBA trong microsoft Excel. Với kinh nghiệm của bản thân, tôi mạnh dạn
đưa ra một số giải pháp như sau:
Giải pháp 1: Viết Code “Tạo Form đăng nhập”
Điểm mới:
Giúp người dùng bảo mật được số liệu trong bảng Excel.
Tạo sự chuyên nghiệp trong sử dụng.
Nội dung và cách thực hiện:
Bước 1: Thiết kế giao diện
Để tạo form đăng nhập, cần có ảnh của giao diện như hình
Trên giao diện cần có:
Mục 1,2 là hai textbox để nhập tài khoản và mật khẩu: Text box của
“account” và text box của “password”
Mục 3, 4 là hai CommandButton:CommandButton (OK) và Command
Button (EXIT).
Mục 6,7 là 2 label: Label 1: là mục “Account” và Label 2: là “Password”
Để tạo được giao diện trên, tôi sử dụng các công cụ trong hộp công cụ
toolbox (mục 5) của VBA.
Bước 2: Viết code cho các công cụ
6
Viết code cho CommandButton (OK)
Nháy đúp chuột vào CommandButton (OK)
Thực hiện viết code:
Tại đây, tôi sẽ đặt tên tài khoản là “admin”, mật khẩu là “pacta”
Private Sub cmdOK_Click()
Dim username, password As String
username = txtUser.Text
password = txtPass.Text
If username = "admin" And password = "pacta" Then
loginForm.Hide
Else
msgFalse.Show
End If
End Sub
Viết code cho CommandButton (Exit)
Nháy đúp chuột vào CommandButton (Exit), thực hiện viết lệnh sau:
Private Sub cmdExit_Click()
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Giải pháp 2: Thiết kế giao diện hiển thị các thơng tin chính
Điểm mới:
- Hiển thị các thơng tin của học sinh có trong bảng
- Dễ quan sát các số liệu có trong bảng
- Tạo sự logic khi cần tìm các số liệu.
Nội dung và cách thực hiện:
Trong phần mềm Micorosoft Excel, thực hiện tạo một bảng tính với các
cột và các hàng với dữ liệu như sau:
7
Với các ô D4,D6,D8,G4,G6,G8 lần lượt nhập dữ liệu là: Họ và tên, Ngày
sinh, Giới tính, Dân tộc, Địa chỉ, Lớp.
Với các ơ E4,E6,E8,H4,H6,H8 lần lượt là vị trí nhập số liệu tương ứng
cho các ô đã đặt tên trên
Sau đó, tạo bảng để hiển thị số liệu đã nhập tương ứng của các ô trên.
Sau khi đã tạo xong giao diện như trên, thực hiện thêm 4 nút lệnh “Thêm
học sinh”, “Xóa học sinh”, “Lưu”, “Bỏ qua” như giao diện dưới đây.
Hai nút lệnh “Lưu” và “Bỏ qua” được xếp sau nút lệnh “Thêm học sinh”
và “Xóa học sinh”
Như vậy, đã thực hiện được việc thiết kế giao diện hiển thị các thơng tin
chính. Việc tiếp theo là viết code VBA để các thông tin được nhập trong các ô
sẽ tự động hiển thị trong bảng với các số liệu tương ứng.
Giải pháp 3: Viết code VBA cho “chương trình chính”
Chương trình chính là nội dung quan trọng nhất của một bảng tính được
viết bằng ngơn ngữ VBA ( Visual Basic for Applications). Để thực hiện viết code
8
VBA có thể sử dụng phím tắt Alt+F11.
Điểm mới:
- Giúp người sử dụng thực hiện các thao tác nhanh hơn, chính xác hơn.
- Thể hiện tính chuyên nghiệp trong việc quản lý các bảng tính trong
phần mềm Microsoft Excel.
Nội dung và cách thực hiện:
Viết code cho Sheet1
Nháy đúp chuột chọn mục “Sheet1” tại của sổ VBAProject
Tại mục 1: chọn Worksheet. Mục 2: Chọn SelectionChange và thực hiện viết
code sau:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("D12:I1000")) Is Nothing And Range("D" &
Target.Row).Value <> Empty Then
Range("B3").Value = Target.Row
getcustom
End If
End Sub
Viết code cho nút lệnh “Thêm học sinh”
Sub themHS()
With Sheet1
.Shapes("Themhocsinh").Visible = msoFalse
.Shapes("Xoahocsinh").Visible = msoFalse
.Shapes("Luu").Visible = msoCTrue
.Shapes("Bo qua").Visible = msoCTrue
.Range("E4,E6,E8,H4,H6,H8").ClearContents
9
End With
End Sub
Sau khi thực hiện viết xong code. Chuột phải vào mục thêm học sinh – Assign
Macro – ThemHS
Viết code cho nút lệnh “Xóa học sinh”
Sub XoaHS()
With Sheet1
If MsgBox("Ban co chac chan muon xoa khong?", vbYesNo, "Xoahocsinh") =
vbNo Then Exit Sub
If .Range("B3").Value = "" Then Exit Sub
.Rows(.Range("B3")).EntireRow.Delete
End With
End Sub
Sau khi thực hiện viết xong code. Chuột phải vào mục “Xóa học sinh” –
Assign Macro – XoaHS
Viết code cho nút lệnh “Lưu”
Sub luu()
Dim lastrow As Double
With Sheet1
Lastrow = .Range("D10000").End(xlUp).Row
If .Range("E4").Value = Empty Then
MsgBox "Ban chua nhap ten"
10
Exit Sub
End If
If Excel.WorksheetFunction.CountIfs(.Range("D:D"), .Range("E4")) > 0 Then
MsgBox "Da ton tai hoc sinh nay"
Exit Sub
End If
.Cells(lastrow + 1, 4) = .Range("E4").Value
.Cells(lastrow + 1, 5) = .Range("E6").Value
.Cells(lastrow + 1, 6) = .Range("E8").Value
.Cells(lastrow + 1, 7) = .Range("H4").Value
.Cells(lastrow + 1, 8) = .Range("H6").Value
.Cells(lastrow + 1, 9) = .Range("H8").Value
End With
End Sub
Sau khi thực hiện viết xong code. Chuột phải vào mục “Lưu” – Assign
Macro – Luu
Viết code cho nút lệnh “Bỏ qua”
Sub boqua()
With Sheet1
.Shapes("Themhocsinh").Visible = msoCTrue
.Shapes("Xoahocsinh").Visible = msoCTrue
.Shapes("Luu").Visible = msoFalse
.Shapes("Bo qua").Visible = msoFalse
End With
End Sub
Sau khi thực hiện viết xong code. Chuột phải vào mục “Bỏ qua” – Assign
Macro – boqua
Với các dòng lệnh trên, khi click chuột “thêm học sinh”, nút lệnh “thêm
học sinh” và “xóa học sinh” sẽ ẩn.Nút lệnh “Lưu” và “Bỏ qua” sẽ hiển thị.
Ngược lại, khi nhập dữ liệu và chọn “Lưu” hoặc chọn “Bỏ qua” thì hai nút lệnh
11
“Lưu” và “Bỏ qua” sẽ ẩn, hai nút lệnh “Thêm học sinh” và “Xóa học sinh” sẽ
hiển thị.
Khi hồn thành xong tồn bộ code cho chương tình, người dùng ấn phím
F5 trên bàn phím để chạy macro (Run Macro)
Như vậy, sau khi viết xong các câu lệnh sẽ được một module hoàn chỉnh
như ảnh sau
12
Lợi ích thu được do áp dụng sáng kiến
Lợi ích kinh tế:
Với các phiên bản tiếp theo. Các tính năng được nâng cấp nhiều
hơn.Người dùng có thể quản lý, tìm kiếm được nhiều số liệu.Như vậy, có thể
thay thế được các phần mềm quản lý học sinh, thống kê số liệu.
Chi phí mua phần mềm thống kê, quản
lý học sinh
Sử dụng ngôn ngữ VBA để tạo
phần mềm quản lý học sinh
Khoảng 4 triệu đồng/năm
trong Excel
0 đồng/năm
Thời gian làm phần mềm quản lý học
Thời gian làm phần mềm quản lý
sinh bằng hàm (Function)
học sinh bằng VBA
Khoảng 3 ngày/biểu khoảng 30 sheet
1 ngày với biểu khoảng 30 sheet
Như vậy, từ bảng số liệu trên việc sử dụng ngôn ngữ VBA để tạo phần
mềm quản lý học sinh trong Excel sẽ tiết kiệm được rất nhiều ngân sách cho đơn
vị trường.
13
Sau khi áp dụng sáng kiến, giáo viên trường Tiểu học xã Pắc Ta rất thuận
tiện trong việc quản lý thông tin của học sinh. Như vậy, việc báo cáo số liệu với
cấp trên từ đó cũng chính xác và tiết kiệm thời gian hơn.
Lợi ích kỹ thuật
Người dùng có thể dễ dàng tiếp cận được với các nút lệnh của phần mềm
do giao diện phần mềm sau khi thực hiện xong hoàn toàn bằng Tiếng Việt.
Đối với một giáo viên Tin học có kĩ năng về máy tính.Dựa vào các giải
pháp trong sáng kiến kinh nghiệm. Giáo viên có thể sử dụng ngôn ngữ VBA để
tạo phần mềm quản lý học sinh trong Excel và mở rộng them nhiều tính năng,
nút lệnh mới trong phần mềm.
Lợi ích xã hội
Với việc sử dụng ngôn ngữ VBA trong tạo phần mềm quản lý học sinh
giúp người dùng tiếp cận với một ngơn ngữ lập trình mới.Mang lại nhiều tiện ích
hơn. Với giao diện làm việc hoàn toàn bằng Tiếng Việt các đồng chí giáo viên,
cán bộ quản lý có thể sử dụng để quản lý các thông tin của học sinh của lớp và
đơn vị trường.
Khả năng áp dụng của sáng kiến
Đối với sáng kiến trên, có thể áp dụng vào trong việc quản lý học sinh đối
với tất cả các đơn vị trường học. Ngồi ra, có thể sử dụng để quản lý thông tin cán
bộ công chức, viên chức với các cơ quan ngoài ngành giáo dục trong toàn huyện.
Những thông tin cần bảo mật: Không
Các điều kiện cần thiết để áp dụng sáng kiến đề nghị công nhận sáng
kiến hoặc phạm vi ảnh hưởng và hiệu quả áp dụng: Đối với đội ngũ giáo
viên chỉ cần sử dụng thành thạo sử dụng máy tính, biết sử dụng cơ bản về phần
mềm Microsoft Excel.
Kết luận và kiến nghị
Kết quả của việc áp dụng sáng kiến
Với sáng kiến trên, việc áp dụng tại đơn vị trường mang lại nhiều lợi ích
cho giáo viên trong việc thực hiện công tác thống kê, theo dõi và quản lý số
lượng, thông tin học sinh
14
Tiết kiệm thời gian trong quá trình tổng hợp số liệu.
Những kết luận trong quá trình nghiên cứu triển khai sáng kiến
Trong quá trình nghiên cứu triển khai sáng kiến, tôi thấy việc thực hiện sáng
kiến giúp tôi và giáo viên trong đơn vị trường thực hiện tốt việc quản lý, thống kê
số lượng học sinh. Rút ngắn được thời gian làm việc với các biểu thống kê
Kiến nghị đề xuất: Không
Trên đây là nội dung, hiệu quả của sáng kiến kinh nghiệm “Một số giải
pháp để tạo phần mềm quản lý học sinh trường tiểu học xã Pắc Ta bằng ngơn
ngữ VBA trong microsoft Excel.” do chính tơi thực hiện.
Tôi xin cam đoan mọi thông tin nêu trong đơn là trung thực, đúng sự thật
và hoàn toàn chịu trách nhiệm trước pháp luật.
Pắc Ta, ngày........tháng.....năm 2021
Người đăng ký
Phạm Ngọc Hoàng
15
MỤC LỤC SÁNG KIẾN
Mô tả giải pháp trước khi tạo ra sáng kiến.......................................................2
Giải pháp 1: Sử dụng các bảng thống kê thủ công trên giấy................................2
Giải pháp 2: Sử dụng các hàm (Function) có sẵn trong phần mềm Microsoft
Excel..................................................................................................................3
Mơ tả giải pháp khi áp dụng sáng kiến.............................................................3
Những lý do nên sử dụng VBA........................................................................3
Giải pháp 1: Viết Code “Tạo Form đăng nhập”...............................................5
Giải pháp 2: Thiết kế giao diện hiển thị các thông tin chính...........................6
Giải pháp 3: Viết code VBA cho “chương trình chính”...................................7
Lợi ích thu được do áp dụng sáng kiến...........................................................12
Khả năng áp dụng của sáng kiến.....................................................................13
Kết luận và kiến nghị........................................................................................13
Tài liệu đính kèm...............................................................................................14