Tự động chèn code vào sheet của 1 File Excel
Mình mở chủ đề này để giới thiệu cho các bạn nào quan tâm đến việc tự động chèn code vào 1 file excel nào đó.
Giả định trên file hiện tại có 1 sheet mang tên là "ABC", giờ ta muốn chèn code vào sheet này
Để phát triển thêm ta có thể thay ActiveWorkBook bằng tên của File ta cần chèn code
Sub add_code_to_existing_sheet()
Dim CodeLines As Long, sheetCode
sheetCode = ActiveWorkbook.Sheets("ABC").CodeName
With ActiveWorkbook.VBProject.VBComponents(sheetCode).CodeModule
CodeLines = .CountOfLines + 1
.InsertLines CodeLines, _
"Private Sub Worksheet_SelectionChange(ByVal Target As Range)" & Chr(13) & _
" MsgBox ""Code Created"" " & Chr(13) & _
"End Sub"
End With
End Sub
Ta cũng có thể tạo ra 1 sheet mới rồi chèn code vào sheet vừa được tạo bằng code bên dưới.
Sub add_code_to_NewSheet()
Dim CodeLines As Long
Sheets.Add
With ActiveWorkbook.VBProject.VBComponents(ActiveSheet.CodeName).CodeModule
CodeLines = .CountOfLines + 1
.InsertLines CodeLines, _
"Private Sub Worksheet_SelectionChange(ByVal Target As Range)" & Chr(13) & _
" msgbox ""Code Created"" " & Chr(13) & _
"End Sub"
End With
End Sub
Nếu cần chèn code vào WorkBook ta áp dụng code này
Sub add_code_to_thisworkbook()
Dim CodeLines As Long
With ActiveWorkbook.VBProject.VBComponents("Thisworkbook").CodeModule
CodeLines = .CountOfLines + 1
.InsertLines CodeLines, _
"Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)" & Chr(13) & _
" msgbox ""Code Created"" " & Chr(13) & _
"End Sub"
End With
End Sub
Nếu cần thêm 1 module mới rồi chèn code vào module này thì ta làm như code bên dưới.
Chú ý: Để chèn được Module thì phải vào Tools, tìm và chọn mục Microsoft Visual Basic for Appliations extensibility 5.3
Hoặc khi viết code đến dòng ActiveWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule) thì Excel sẽ tự động hỏi mình có muốn chọn mục này hay không.
Sub Add_Module_and_Code()
Dim CodeLines As Long, VBComp
Set VBComp = ActiveWorkbook.VBProject.VBComponents.Add(vbext_ct_StdModule)
With ActiveWorkbook.VBProject.VBComponents(VBComp.Name).CodeModule
CodeLines = .CountOfLines + 1
.InsertLines CodeLines, _
"Sub Add_Module_and_Code" & Chr(13) & _
" msgbox ""Code Created"" " & Chr(13) & _
"End Sub"
End With
End Sub
Hy vọng là bài viết hữu ích cho những bạn mới học VBA
www.giaiphapexcel.com/diendan/threads/t%E1%BB%B1-%C4%91%E1%BB%99ng-ch%C3%A8n-code-v%C3%A0o-sheet-c%E1%BB%A7a-1-file-excel.80149/
Khóa học Power PI – Ứng dung trong Nhân sự
TỔNG QUAN KHÓA HỌC: POWER BI CHO NGÀNH NHÂN SỰ Khóa học Power BI cho Nhân sự được thiết kế dành riêng cho các...
Xem khóa học
Bình luận