Bạn hoàn toàn có thể sử dụng đa số mã code này ngay cả khi bạn chưa từng sử dụng VBA trước đây.
Bạn đang xem: Top 12+ thư viện code vba trong excel mới nhất 2022
Đang xem: thư viện vba excel
Nhưng điều trước tiên phải biết là:
Mã Macro là gì?
Trong Excel, mã macro là 1 mã xây dựng được viết bằng ngôn từ VBA (Visual Basic for Applications).
Ý tưởng phía sau việc áp dụng mã là để tự động hóa một hành động mà nếu như không bạn đề nghị thực hiện bằng tay trong Excel.
Ví dụ, bạn cũng có thể sử dụng một mã chỉ nhằm in một phạm vi ô rõ ràng chỉ với một cú click chuột thay bởi chọn theo trang bị tự -> file Tab -> Print -> Print Select -> OK Button.
Sử dụng mã Macro vào Excel
Trước khi sử dụng những mã này, bảo đảm an toàn rằng các bạn có Developer Tab trên thanh Excel để truy vấn VB Editor.
Sau khi bạn kích hoạt Developer Tab…
… bạn cũng có thể sử dụng các bước dưới đây để dán mã VBA vào VB Editor.
Di chuyển cho developer tab của chúng ta và nhấp lựa chọn “Visual Basic”.

Phía phía bên trái trên “Project Window”, bấm chuột phải vào tên workbook của chúng ta và chèn vào một trong những module mới.

Dán mã code của công ty vào vào module đó và đóng lại.

Bây giờ, dịch rời đến developer tab và click chuột vào Macro.

Macro đang hiển thị một cửa sổ danh sách những macro có trong tệp của bạn, từ bỏ đó chúng ta có thể chạy những macro gồm trong list đó.

Basic
Formatting
Printing
Worksheet
Workbook
Pivot Table
Charts
Advanced
Formulas
BASIC CODE
Những mã code VBA này để giúp đỡ bạn triển khai một số các bước cơ phiên bản trong nháy đôi mắt mà chúng ta thường làm cho trên bảng tính.
Add Serial Numbers (đánh số thự từ bỏ tự động)
Code macro này để giúp đỡ bạn bổ sung số serial tự động hóa trên trang Excel.
Sau khi chúng ta chạy mã macro này, màn hình sẽ hiển thị input box để bạn nhập tối phần nhiều serial với sau đó, nó đã chèn các số vào cột theo sản phẩm công nghệ tự.
Sub AddSerialNumbers()
Dim i As Integer
On Error GoTo Last
i = InputBox(“Enter Value”, “Enter Serial Numbers”)
For i = 1 khổng lồ i
ActiveCell.Value = i
ActiveCell.Offset(1, 0).Activate
Next i
Last:Exit Sub
End Sub
Add Multiple Columns (chèn cột)
Sau khi chạy mã macro, màn hình hiển thị sẽ hiển thị một đầu vào box và bạn phải nhập số cột mà bạn có nhu cầu chèn.
Sub InsertMultipleColumns()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireColumn.Select
On Error GoTo Last
i = InputBox(“Enter number of columns to insert”, “Insert Columns”)
For j = 1 to lớn i
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightorAbove
Next j
Last:Exit Sub
End Sub
Add Multiple Rows (chèn dòng)
Sau lúc chạy mã macro, màn hình sẽ hiển thị một đầu vào box và các bạn phải nhập số mặt hàng mà bạn có nhu cầu chèn.
Sub InsertMultipleRows()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireRow.Select
On Error GoTo Last
i = InputBox(“Enter number of columns khổng lồ insert”, “Insert
Columns”)
For j = 1 khổng lồ i
Selection.Insert Shift:=xlToDown,
CopyOrigin:=xlFormatFromRightorAbove
Next j
Last:Exit Sub
End Sub
Auto Fit Columns (tự hễ canh các cột)
Nhanh chóng tự động hóa khớp toàn bộ các sản phẩm trong worksheet của bạn.
Mã macro này sẽ chọn tất cả các ô vào worksheet và auto khớp tức thì lập tức những cột.
Sub AutoFitColumns()
Cells.Select
Cells.EntireColumn.AutoFit
End Sub
Auto Fit Rows (tự động canh những dòng)
Bạn có thể sử dụng mã code này để auto khớp toàn bộ các hàng trong worksheet.
Khi bạn chạy mã này, nó đã chọn tất cả các ô trong worksheet và tự động khớp tức thì lập tức các hàng.
Sub AutoFitRows()
Cells.Select
Cells.EntireRow.AutoFit
End Sub
Remove Text Wrap (bỏ chế độ wrap text)
Mã code này sẽ giúp đỡ bạn xóa text wrap khỏi cục bộ worksheet với một cái nhấp chuột. Đầu tiên nó sẽ chọn tất cả các cột và tiếp đến xóa text wrap và tự động hóa khớp các hàng với cột.
Sub RemoveWrapText()
Cells.Select
Selection.WrapText = False
Cells.EntireRow.AutoFit
Cells.EntireColumn.AutoFit
End Sub
Unmerge Cells (không kết nối các ô)
Chọn các ô và chạy mã này, nó sẽ không còn sát nhập toàn bộ các ô vừa chọn với tài liệu bị mất của bạn.
Sub UnmergeCells()
Selection.UnMerge
End Sub
Open Calculator (mở máy vi tính trên excel)
Trong cửa sổ có một thiết bị tính ví dụ và sử dụng mã macro này, chúng ta có thể mở máy vi tính trực tiếp từ bỏ Excel cho vấn đề tính toán.
Sub OpenCalculator()
Application.ActivateMicrosoftApp Index:=0
End Sub
Add Header/Footer Date (thêm ngày sinh hoạt chân trang/đầu trang)
Sử dụng mã này để bổ sung ngày vào phần header cùng footer vào worksheet.
Bạn có thể điều chỉnh mã này để đổi từ header quý phái footer.
Sub dateInHeader()
With ustone.com.vnSetup
.LeftHeader = “”
.CenterHeader = “&D”
.RightHeader = “”
.LeftFooter = “”
.CenterFooter = “”
.RightFooter = “”
End With
ustone.com.vn = xlNormalView
End Sub
Custom Header/Footer (chèn đầu trang/chân trang theo ý bạn)
Nếu bạn có nhu cầu chèn header tùy chỉnh cấu hình thì đây là một mã giành riêng cho bạn.
Chạy mã này, nhập giá chỉ trị thiết lập vào input đầu vào box. Để biến hóa liên kết của header hoặc footer, chúng ta có thể điều chỉnh mã.
Sub customHeader()
Dim myText As Stringmy
Text = InputBox(“Enter your text here”, “Enter Text”)
With ustone.com.vnSetup
.LeftHeader = “”
.CenterHeader = myText
.RightHeader = “”
.LeftFooter = “”
.CenterFooter = “”
.RightFooter = “”
End With
End Sub
Formatting Codes
Những mã VBA này để giúp đỡ bạn định dạng những ô với phạm vi bằng phương pháp sử dụng một số tiêu chuẩn và điều kiện cụ thể.
Highlight Duplicates from Selection (tô màu những ô cùng quý giá trong vùng được chọn)
Mã macro này sẽ kiểm tra mỗi ô chúng ta chọn cùng làm trông rất nổi bật các giá trị trùng lặp.
Bạn cũng có thể có thể chuyển đổi màu dung nhan từ mã này.
Sub HighlightDuplicateValues()
Dim myRange As Range
Dim myCell As Range
Set myRange = Selection
For Each myCell In myRange
If ustone.com.vntIf(myRange, ustone.com.vne) > 1 Then
myCell.Interior.ColorIndex = 36
End If
Next myCell
End Sub
Highlight the Active Row và Column
Đây là những bước để tiến hành mã code này cấp tốc chóng.
Mở VBE (ALT + F11).Di chuyển đến Project Explorer (Crtl + R, If hidden).Chọn workbook của công ty và nhấp đúp con chuột vào tên một worksheet ví dụ mà bạn muốn kích hoạt mã macro.Dán mã vào kia và lựa chọn “BeforeDoubleClick” từ bỏ (event drop down menu).Đóng VBE và các bạn đã trả thành.
Hãy chú ý rằng, khi áp dụng mã macro này bạn sẽ không thể điều chỉnh ô bằng phương pháp nhấp lưu ban chuột.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range,
Cancel As Boolean)
Dim strRange As String
strRange = ustone.com.vness & “,” ustone.com.vness và “,” và _
Target.Cells.EntireRow.Address
Range(strRange).Select
End Sub
Highlight vị trí cao nhất 10 Values
Chỉ chọn 1 phạm vi và chạy mã macro này cùng nó đã làm trông rất nổi bật top 10 values với màu xanh.
Sub TopTen()
Selection.FormatConditions.AddTop10
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With ustone.com.vnatConditions(1)
.TopBottom = xlTop10Top
.Rank = 10
.Percent = False
End With
With ustone.com.vnatConditions(1).Font
.Color = -16752384
.TintAndShade = 0
End With
With ustone.com.vnatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 13561798
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False
End Sub
Highlight Named Ranges
Nếu bạn không chắc chắn bao nhiêu phạm vi được chỉ định trong worksheet của doanh nghiệp thì chúng ta có thể sử dụng mã này để làm nổi nhảy chúng.
Sub HighlightRanges()
Dim RangeName As Name
Dim HighlightRange As Range
On Error Resume Next
For Each RangeName In ustone.com.vns
Set HighlightRange = ustone.com.vnrsToRange
HighlightRange.Interior.ColorIndex = 36
Next RangeName
End Sub
Highlight Greater than Values
Sau lúc chạy mã này, nó sẽ yêu ước giá trị mà bạn muốn làm rất nổi bật các giá bán trị phệ hơn.
Sub HighlightGreaterThanValues()
Dim i As Integer
i = InputBox(“Enter Greater Than Value”, “Enter Value”)
Selection.FormatConditions.Delete
ustone.com.vn Type:=xlCellValue,
Operator:=xlGreater, Formula1:=i
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With ustone.com.vnatConditions(1)
.Font.Color = RGB(0, 0, 0)
.Interior.Color = RGB(31, 218, 154)
End With
End Sub
Highlight Lower than Values
Sau khi chạy mã này, nó đã yêu cầu giá trị mà bạn muốn làm trông rất nổi bật các quý hiếm thấp hơn.
Sub HighlightLowerThanValues()
Dim i As Integer
i = InputBox(“Enter Lower Than Value”, “Enter Value”)
Selection.FormatConditions.Delete
ustone.com.vn Type:=xlCellValue,
Operator:=xlLower, Formula1:=i
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With ustone.com.vnatConditions(1)
.Font.Color = RGB(0, 0, 0)
.Interior.Color = RGB(217, 83, 79)
End With
End Sub
Highlight Negative Numbers
Chọn một pham vi những ô và chạy mã này. Nó sẽ kiểm tra mỗi ô trong phạm vi này và làm trông rất nổi bật tất cả các ô tất cả (negative numbers).
Sub highlightNegativeNumbers()
Dim Rng As Range
For Each Rng In Selection
If ustone.com.vnmber(Rng) Then
If ustone.com.vn
Rng.Font.Color= -16776961
End If
End If
Next
End Sub
Highlight Specific Text
Giả sử các bạn có một tệp tài liệu lớn và bạn muốn kiểm tra một giá trị rứa thể. Vào trường hòa hợp này, chúng ta cũng có thể sử dụng mã này. Khi chúng ta chạy nó, màn hình sẽ hiện đầu vào box để các bạn nhập giá bán trị muốn tìm kiếm.
Sub highlightValue()
Dim myStr As String
Dim myRg As Range
Dim myTxt As String
Dim myCell As Range
Dim myChar As String
Dim I As Long
Dim J As Long
On Error Resume Next
If ustone.com.vnt> 1 Then
myTxt= ustone.com.vnessLocal
Else
myTxt= ustone.com.vnessLocal
End If
LInput: phối myRg= ustone.com.vntBox(“please select the data
range:”, “Selection Required”, myTxt, , , , , 8)
If myRg Is Nothing Then
Exit Sub
If ustone.com.vn > 1 Then
MsgBox”not tư vấn multiple columns” GoToLInput
End If
If ustone.com.vn 2 Then
MsgBox”the selected range can only contain two columns “
GoTo LInput
End If
For I = 0 lớn ustone.com.vnt-1
myStr= ustone.com.vne(“B1”).Offset(I, 0).Value
With ustone.com.vne(“A1”).Offset(I, 0)
.Font.ColorIndex= 1
For J = 1 to Len(.Text)
Mid(.Text, J, Len(myStr)) = myStrThen
.Characters(J, Len(myStr)).Font.ColorIndex= 3
Next
End With
Next I
End Sub
Highlight Cells with Comments
Để làm trông rất nổi bật tất cả những ô với việc thực hiện comments macro này.
Sub highlightCommentCells()
Selection.SpecialCells(xlCellTypeComments).Select
Selection.Style= “Note”
End Sub
Highlight Alternate Rows in the Selection
Với việc làm rất nổi bật các hàng nuốm thế, chúng ta cũng có thể dễ dàng đọc dữ liệu hơn. Và bởi điều này, chúng ta cũng có thể sử dụng mã VBA bên dưới. Mã chỉ đơn giản làm trông rất nổi bật mỗi hàng thay thế sửa chữa trong phạm vi được chọn.
Sub highlightAlternateRows()
Dim rng As Range
For Each rng In ustone.com.vn
If ustone.com.vnod 2 = 1 Then
rng.Style= “20% -Accent1”
rng.Value= rng^ (1 / 3)
Else
End If
Next rng
End Sub
Highlight Cells with Misspelled Words
Nếu bạn chạm mặt khó khăn trong bài toán kiểm tra toàn bộ các sản phẩm về lỗi chủ yếu tả thì đó là một mã dành cho bạn. Mã sẽ kiểm soát mỗi ô được lựa chọn và làm rất nổi bật ô kia khi tất cả lỗi chủ yếu tả.
Sub HighlightMisspelledCells()
Dim rng As Range
For Each rng In ustone.com.vnRange
If Not ustone.com.vnkSpelling(word:=rng.Text) Then
rng.Style= “Bad” end If
Next rng
End Sub
Highlight Cells With Error in the Entire Worksheet
Mã này sẽ giúp đỡ bạn làm khá nổi bật và đếm toàn bộ các ô bao gồm lỗi.
Chỉ câu hỏi chạy mã này và mã vẫn trả lại một thông báo có số ô lỗi với làm rất nổi bật tất cả các ô đó.
Sub highlightErrors()
Dim rng As Range
Dim i As Integer
For Each rng In ustone.com.vnRange
If ustone.com.vnror(rng) Then
i = i + 1 ustone.com.vn = “bad”
End If
Next rng
MsgBox “There are total ” & i & ” error(s) in this worksheet.”
End Sub
Highlight Cells with a Specific Text in Worksheet
Mã này sẽ giúp đỡ bạn đếm các ô có mức giá trị cụ thể mà các bạn sẽ đề cập và sau đó, mã đang làm khá nổi bật tất cả các ô đó.
Xem thêm: Phần Mềm Nội Suy 2 Chiều Bằng Excel Nội Suy Nhanh, File Excel Nội Suy 2 Chiều
Sub highlightSpecificValues()
Dim rng As Range
Dim i As Integer
Dim c As Variant
c = InputBox(“Enter Value lớn Highlight”)
For Each rng In ustone.com.vnRange
If rng = c Then
rng.Style = “Note”
i = i + 1
End If
Next rng
MsgBox “There are total ” và i &” “& c & ” in this worksheet.”
End Sub
Highlight all the Blank Cells Invisible Space
Đôi khi bao gồm ô trống tuy vậy chúng bao gồm một khoảng trống duy tốt nhất và vì chưng vậy, sẽ tương đối khó để nhận ra chúng. Mã này để giúp bạn kiểm tra toàn bộ các ô trong worksheet và làm trông rất nổi bật các ô có tầm khoảng trống độc nhất định.
Sub blankWithSpace()
Dim rng As Range
For Each rng In ustone.com.vnRange
If ustone.com.vn = ” ” Then
rng.Style = “Note”
End If
Next rng
End Sub
Highlight Max Value In The Range
Mã này sẽ kiểm tra toàn bộ các ô được chọn và làm rất nổi bật ô đó với cái giá trị mập nhất.
Sub highlightMaxValue()
Dim rng As Range
For Each rng In Selection
If rng = ustone.com.vn(Selection) Then
rng.Style = “Good”
End If
Next rng
End Sub
Highlight Min Value In The Range
Mã đã kiểm tra toàn bộ các ô được chọn và làm rất nổi bật ô đó với cái giá trị nhỏ nhất.
Sub highlightMinValue()
Dim rng As Range
For Each rng In Selection
If rng = ustone.com.vn(Selection) Then
rng.Style = “Good”
End If
Next rng
End Sub
Highlight chất lượng Values
Các mã này sẽ làm trông rất nổi bật tất cả các ô được chọn mà có giá trị duy nhất.
Sub highlightUniqueValues()
Dim rng As Range
Set rng = Selection
rng.FormatConditions.Delete
Dim uv As UniqueValues
Set uv = ustone.com.vnniqueValues
uv.DupeUnique = xlUnique
uv.Interior.Color = vbGreen
End Sub
Highlight Difference in Columns
Sử dụng mã này bạn có thể làm trông rất nổi bật sự biệt lập giữa 2 cột (các ô tương ứng).
Sub columnDifference()
Range(“H7:H8,I7:I8”).Select
Selection.ColumnDifferences(ActiveCell).Select
Selection.Style= “Bad”
End Sub
Highlight Difference in Rows
Sử dụng mã này bạn cũng có thể làm khá nổi bật sự không giống nhau giữa 2 mặt hàng (các ô tương ứng).
Sub rowDifference()
Range(“H7:H8,I7:I8”).Select
Selection.RowDifferences(ActiveCell).Select
Selection.Style= “Bad”
End Sub
Printing Codes
Những mã macro này sẽ giúp đỡ bạn auto in một số quá trình mà hoàn toàn có thể tiết kiệm rất nhiều thời gian.
Print Comments
Sử dụng mã macro này kích hoạt thiết lập để in (cell comments) nghỉ ngơi cuối trang. Ví dụ chúng ta phải in 10 trang, sau khoản thời gian sử dụng mã này các bạn sẽ nhận được toàn bộ comments sinh hoạt trang sau cùng thứ 11.
Sub printComments()
With ustone.com.vnSetup
.printComments= xlPrintSheetEnd
End With
End Sub
Print Narrow Margin
Sử dụng mã VBA này để in giấy bao gồm lề hẹp. Khi bạn chạy mã macro này, mã sẽ tự động thay thay đổi lề thành hẹp.
Sub printNarrowMargin()
With ustone.com.vnSetup
.LeftMargin= Application
.InchesToPoints(0.25)
.RightMargin= ustone.com.vnesToPoints(0.25)
.TopMargin= ustone.com.vnesToPoints(0.75)
.BottomMargin= ustone.com.vnesToPoints(0.75)
.HeaderMargin= ustone.com.vnesToPoints(0.3)
.FooterMargin= ustone.com.vnesToPoints(0.3)
End With
ActiveWindow.SelectedSheets.PrintOutCopies:=1, Collate:=True,
IgnorePrintAreas:=False
End Sub
Print Selection
Mã này để giúp đỡ bạn in phạm vi được chọn. Các bạn không nên phải dịch rời đến mục printing options và thiết đặt phạm vi in. Bạn chỉ việc lựa chọn một phạm vi cùng chạy mã này.
Sub printSelection()
Selection.PrintOutCopies:=1, Collate:=True
End Sub
Print Custom Pages
Thay vì chưng sử dụng setup từ print options, bạn cũng có thể sử dụng mã này nhằm in phạm vi trang điều chỉnh.
Ví dụ bạn có nhu cầu từ trang 5 mang đến trang10. Bạn chỉ việc chạy mã VBA này với nhập trang bắt đầu và trang kết thúc.
Sub printCustomSelection()
Dim startpageAs Integer
Dim endpageAs Integer
startpage= InputBox(“Please Enter Start Page number.”, “Enter
Value”)
If Not ustone.com.vnmber(startpage) Then
MsgBox”Invalid Start Page number. Please try again.”, “Error”
Exit Sub
End If
endpage= InputBox(“Please Enter end Page number.”, “Enter
Value”)
If Not ustone.com.vnmber(endpage) Then
MsgBox”Invalid kết thúc Page number. Please try again.”, “Error”
Exit Sub
End If
Selection.PrintOutFrom:=startpage, To:=endpage, Copies:=1,
Collate:=True
End Sub
Worksheet Codes
Những mã macro này sẽ giúp bạn kiểm soát và quản lý worksheets theo một cách đơn giản dễ dàng và ngày tiết kiệm không hề ít thời gian.
Hide all but the Active Worksheet
Ví dụ bạn muốn ẩn tất cả các worksheets trong workbook của công ty ngoài worksheet đang hoạt động. Mã macro này sẽ giúp bạn làm cho điều này.
Sub HideWorksheet()
Dim ws As Worksheet
For Each ws In ustone.com.vnsheets
If ws.Name ustone.com.vn Then
ws.Visible = xlSheetHidden
End If
Next ws
End Sub
Unhide all Hidden Worksheets
Mã này giành riêng cho việc nếu bạn muốn hiển thị toàn bộ các worksheets mà bạn đã ẩn trong nhưng mà trước.
Sub UnhideAllWorksheet()
Dim ws As Worksheet
For Each ws In ustone.com.vnsheets
ws.Visible = xlSheetVisible
Next ws
End Sub
Delete all but the Active Worksheet
Mã này khôn cùng hữu ích cho mình nếu bạn có nhu cầu xóa toàn bộ các worksheet ko kể sheet đang hoạt động.
Khi bạn chạy mã này, mã sẽ đối chiếu tên workwheet đang hoạt động với các worksheet không giống và tiếp nối xóa chúng.
Sub DeleteWorksheets()
Dim ws As Worksheet
For Each ws In ustone.com.vnsheets
If ws.name ustone.com.vn Then
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End If
Next ws
End Sub
Protect all Worksheets Instantly
Đây là mã dành cho chính mình nếu bạn có nhu cầu protect những worksheet chỉ vào một lần.
Khi chạy mã macro này, bạn sẽ nhận được một input đầu vào box để nhập password. Sau thời điểm nhập password, click OK. And make sure khổng lồ take care about CAPS.
Sub ProtectAllWorskeets()
Dim ws As Worksheet
Dim ps As String
ps = InputBox(“Enter a Password.”, vbOKCancel)
For Each ws In ustone.com.vnsheets
ws.Protect Password:=ps
Next ws
End Sub
Resize All Charts in a Worksheet.
Tạo các chart có cùng một kích cỡ. Mã macro này để giúp đỡ bạn tạo tất cả các chart gồm chung kích cỡ. Chúng ta cũng có thể thay đổi độ cao và chiều rộng của chart bằng cách thay thay đổi nó vào mã macro.
Sub Resize_Charts()
Dim i As Integer
For i = 1 to lớn ustone.com.vnt
With ustone.com.vntObjects(i)
.Width = 300
.Height = 200
End With
Next i
End Sub
Insert Multiple Worksheets
Bạn rất có thể sử dụng mã này nếu bạn muốn thêm những worksheet trong workbook của khách hàng chỉ trong một bước.
Khi chúng ta chạy mã macro này, các bạn sẽ nhận được input đầu vào box nhằm nhập toàn bô sheet mà bạn muốn nhập.
Sub InsertMultipleSheets()
Dim i As Integer
i = InputBox(“Enter number of sheets to lớn insert.”, “Enter
Multiple Sheets”)
ustone.com.vn After:=ActiveSheet, Count:=i
End Sub
Protect worksheet
Nếu bạn có nhu cầu protect worksheet, bạn cũng có thể sử dụng mã này.
Bạn chỉ cần nhập password của bạn vào vào mã.
Sub ProtectWS()
ActiveSheet.Protect “mypassword”, True, True
End Sub
Un-Protect Worksheet
Nếu bạn không thích protect worksheet, chúng ta có thể sử dụng mà lại macro này.
Bạn chỉ việc nhập password mà chúng ta đã thực hiện khi protect worksheet của bạn.
Sub UnprotectWS()
ActiveSheet.Unprotect “mypassword”
End Sub
Sort Worksheets
Mã này để giúp đỡ bạn sắp xếp worksheets trong workbook phụ thuộc tên của worksheet.
Sub SortWorksheets()
Dim i As Integer
Dim j As Integer
Dim iAnswer As VbMsgBoxResult
iAnswer = MsgBox(“Sort Sheets in Ascending Order?” & Chr(10) _
& “Clicking No will sort in Descending Order”, _
vbYesNoCancel + vbQuestion + vbDefaultButton1, “Sort
Worksheets”)
For i = 1 khổng lồ ustone.com.vnt
For j = 1 lớn ustone.com.vn – 1
If iAnswer = vbYes Then
If UCase$(Sheets(j).Name) > UCase$(Sheets(j + 1).Name) Then
Sheets(j).Move After:=Sheets(j + 1)
End If
ElseIf iAnswer = vbNo Then
If UCase$(Sheets(j).Name)
Sheets(j).Move After:=Sheets(j + 1)
End If
End If
Next j
Next i
End Sub
Protect all the Cells With Formulas
Bạn có thể sử dụng mã này để protect cell with formula chỉ cách một cú click chuột.
Sub lockCellsWithFormulas()
With ActiveSheet
.Unprotect
.Cells.Locked = False
.Cells.SpecialCells(xlCellTypeFormulas).Locked = True
.Protect AllowDeletingRows:=True
End With
End Sub
Delete all Blank Worksheets
Chạy mã này với mã đã kiểm tra toàn bộ các worksheets trong workbook đang vận động và xóa chúng nếu gồm một worksheet trống.
Sub deleteBlankWorksheets()
Dim Ws As Worksheet
On Error Resume Next
Application.ScreenUpdating= False
Application.DisplayAlerts= False
For Each Ws In ustone.com.vnsheets
If ustone.com.vntA(Ws.UsedRange) = 0 Then
Ws.Delete
End If
Next
Application.ScreenUpdating= True
Application.DisplayAlerts= True
End Sub
Unhide all Rows & Columns
Thay bởi vì hiển thị từng hàng và cột một bí quyết thủ công, chúng ta cũng có thể sử dụng mã này để thực hiện chỉ trong một bước.
Sub UnhideRowsColumns()
Columns.EntireColumn.Hidden = False
Rows.EntireRow.Hidden = False
End Sub
Save Each Worksheet as a Single PDF
mã này chỉ dễ dàng lưu tất cả worksheet vào một trong những tệp PDF riêng. Các bạn chỉ cần biến đổi tên tệp từ mã này.
Sub SaveWorkshetAsPDF()
Dimws As Worksheet
For Each ws In ustone.com.vnrtAsFixedFormat xlTypePDF,
“ENTER-FOLDER-NAME-HERE” & ws.Name và “.pdf” Nextws
End Sub
Disable Page Breaks
Bạn hoàn toàn có thể sử dụng mã này để loại bỏ hóa ngắt trang. Mã đơn giản dễ dàng chỉ loại bỏ hóa ngắt trang từ các workbook đã mở.
Sub DisablePageBreaks()
Dim wbAs Workbook
Dim wksAs Worksheet
Application.ScreenUpdating= False
For Each wbIn ustone.com.vnbooks
For Each ShtIn ustone.com.vnlayPageBreaks= False
Next Sht
Next wb
Application.ScreenUpdating= True
End Sub
Workbook Codes
Những mã này để giúp bạn tiến hành các công việc workbook một cách đơn giản dễ dàng và chưa phải tốn những công sức.
Create a Backup of a Current Workbook
Đây là trong số những mã macro hữu dụng nhất rất có thể giúp các bạn lưu một tệp hỗ trợ cho workbook của bạn.
Mã đang lưu một tệp hỗ trợ trực tiếp với tệp bây giờ được lưu với mã cũng sẽ bổ sung cập nhật ngày với tên của tệp.
Sub FileBackUp()
ThisWorkbook.SaveCopyAs Filename:=ustone.com.vn & _
“” & Format(Date, “mm-dd-yy”) & ” ” & _
ThisWorkbook.name
End Sub
Close all Workbooks at Once
Bạn sử dụng mã này nhằm đóng toàn bộ các workbook đã mở.
Đầu tiên, mã sẽ soát sổ từng workbook một với đóng bọn chúng lại. Giả dụ có bất kỳ worksheet nào không được lưu, bạn sẽ nhận được thông tin để lưu.
Sub CloseAllWorkbooks()
Dim wbs As Workbook
For Each wbs In Workbooks
wbs.Close SaveChanges:=True
Next wb
End Sub
Copy Active Worksheet into a New Workbook
Ví dụ, nếu bạn có nhu cầu sao chép worksheet đang chuyển động vào một workbook mới, bạn chỉ việc chạy mã macro và mã sẽ tiến hành cho bạn.
Điều này huyết kiệm rất nhiều thời gian.
Sub CopyWorksheetToNewWorkbook()
ustone.com.vn _
Before:=Workbooks.Add.Worksheets(1)
End Sub
Active Workbook in an Email
Sử dụng mã macro này nhằm gửi active workbook của chúng ta bằng thư điện tử một cách nhanh chóng.
Bạn có thể biến hóa tên, email, nội dung trong mã và nếu bạn có nhu cầu gửi trực tiếp e-mail này, sử dụng “.Send” thay vì “.Display”.