Hướng dẫn macro excel huu dung nhat - macro excel này dung nhat

8/28/2019

Bạn có thể sử dụng những mã code này ngay cả khi bạn chưa từng sử dụng VBA trước đây.

Nhưng điều đầu tiên phải biết là:

Mã Macro là gì?

Trong Excel, mã macro là một mã lập trình được viết bằng ngôn ngữ VBA [Visual Basic for Applications].

Ý tưởng đằng sau việc sử dụng mã là để tự động hóa một hành động mà nếu không bạn phải thực hiện thủ công trong Excel.

Ví dụ, bạn có thể sử dụng một mã chỉ để in một phạm vi ô cụ thể chỉ với một cú nhấp chuột thay vì chọn theo thứ tự -> File Tab -> Print -> Print Select -> OK Button.

Sử dụng mã Macro trong Excel

Trước khi sử dụng những mã này, đảm bảo rằng bạn có Developer Tab trên thanh Excel để truy cập VB Editor.

Sau khi bạn kích hoạt Developer Tab…

… bạn có thể sử dụng các bước dưới đây để dán mã VBA vào VB Editor.

  • Di chuyển đến developer tab của bạn và nhấp chọn “Visual Basic”.nhấp chọn “Visual Basic”.

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

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

  • Bây giờ, di chuyển đến developer tab và nhấp chuột vào Macro.

  • Macro sẽ hiển thị một cửa sổ danh sách các macro có trong tệp của bạn, từ đó bạn có thể chạy các macro có trong danh sách đó.

Những mã code VBA này sẽ giúp bạn thực hiện một số công việc cơ bản trong nháy mắt mà bạn thường làm trên bảng tính.

  1. Add Serial Numbers [đánh số thự tự tự động]

Code macro này sẽ giúp bạn bổ sung số serial tự động trên trang Excel.

Sau khi bạn chạy mã macro này, màn hình sẽ hiển thị input box để bạn nhập tối đa số serial và sau đó, nó sẽ chèn các số vào cột theo thứ tự.

Sub AddSerialNumbers[]

Dim i As Integer

On Error GoTo Last

i = InputBox["Enter Value", "Enter Serial Numbers"]

For i = 1 To i

ActiveCell.Value = i

ActiveCell.Offset[1, 0].Activate

Next i

Last:Exit Sub

End Sub

  1. Add Multiple Columns [chèn cột]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số cột mà bạn muốn 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 i

Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightorAbove

Next j

Last:Exit Sub

End Sub

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn 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 to insert", "Insert         Columns"]

Columns"]

For j = 1 To i

Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightorAbove

CopyOrigin:=xlFormatFromRightorAbove

Next j

Last:Exit Sub

End Sub                 

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn chèn.

Sub InsertMultipleRows[]

i = InputBox["Enter number of columns to insert", "Insert

Cells.Select

Cells.EntireColumn.AutoFit

End Sub

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn chèn.

Sub InsertMultipleRows[]

i = InputBox["Enter number of columns to insert", "Insert

Cells.Select

Cells.EntireRow.AutoFit

End Sub

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn chèn.

Sub InsertMultipleRows[]

Cells.Select

i = InputBox["Enter number of columns to insert", "Insert

Cells.EntireRow.AutoFit

Cells.EntireColumn.AutoFit

End Sub

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn chèn.

Sub InsertMultipleRows[]

Selection.UnMerge

End Sub

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn chèn.

Sub InsertMultipleRows[]

i = InputBox["Enter number of columns to insert", "Insert

End Sub

  1. Add Multiple Rows [chèn dòng]

Sau khi chạy mã macro, màn hình sẽ hiển thị một input box và bạn phải nhập số hàng mà bạn muốn chèn.

Sub InsertMultipleRows[]

i = InputBox["Enter number of columns to insert", "Insert

Selection.Insert Shift:=xlToDown,

End Sub                 

Auto Fit Columns [tự động canh các cột]

Nhanh chóng tự động khớp tất cả các hàng trong worksheet của bạn.

Mã macro này sẽ chọn tất cả các ô trong worksheet và tự động khớp ngay lập tức các cột.

Sub AutoFitColumns[]

Auto Fit Rows [tự động canh các dòng]

Bạn có thể sử dụng mã code này để tự động khớp tất cả các hàng trong worksheet.

Khi bạn chạy mã này, nó sẽ chọn tất cả các ô trong worksheet và tự động khớp ngay lập tức các hàng.

End Sub

  1. Custom Header/Footer [chèn đầu trang/chân trang theo ý bạn]

Nếu bạn muốn chèn header tùy chỉnh thì đây là một mã dành cho bạn.

Chạy mã này, nhập giá trị tùy chỉnh vào input box. Để thay đổi liên kết của header hoặc footer, bạn có thể điều chỉnh mã.

Sub customHeader[]

Dim myText As Stringmy

Text = InputBox["Enter your text here", "Enter Text"]

With ActiveSheet.PageSetup

.LeftHeader = ""

.CenterHeader = myText

.RightHeader = ""

.LeftFooter = ""

.CenterFooter = ""

.RightFooter = ""

End With

End Sub   

Những mã VBA này sẽ giúp bạn định dạng các ô và phạm vi bằng cách sử dụng một số tiêu chuẩn và điều kiện cụ thể.

  1. Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

Mã macro này sẽ kiểm tra mỗi ô bạn chọn và làm nổi bật các giá trị trùng lặp.    

Bạn cũng có thể thay đổi màu sắc từ mã này.

Sub HighlightDuplicateValues[]

Dim myRange As Range

Dim myCell As Range

Set myRange = Selection

For Each myCell In myRange

If WorksheetFunction.CountIf[myRange, myCell.Value] > 1 Then

myCell.Interior.ColorIndex = 36

End If

Next myCell

End Sub

  1. Highlight the Active Row and Column

Đây là những bước để thực hiện mã code này nhanh chóng.

  1. Mở VBE [ALT + F11].
  2. Di chuyển đến Project Explorer [Crtl + R, If hidden].
  3. Chọn workbook của bạn và nhấp đúp chuột vào tên một worksheet cụ thể mà bạn muốn kích hoạt mã macro.
  4. Dán mã vào đó và chọn “BeforeDoubleClick” từ [event drop down menu].
  5. Đóng VBE và bạn đã hoàn thành.

Hãy lưu ý rằng, khi áp dụng mã macro này bạn sẽ không thể điều chỉnh ô bằng cách nhấp đúp chuột.

Private Sub Worksheet_BeforeDoubleClick[ByVal Target As Range,

Cancel As Boolean]

Dim strRange As String

strRange = Target.Cells.Address & "," Target.Cells.EntireColumn.Address & "," & _

Target.Cells.EntireRow.Address

Range[strRange].Select

End Sub

  1. Highlight Top 10 Values

Chỉ chọn một phạm vi và chạy mã macro này và nó sẽ làm 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 Selection.FormatConditions[1]

.TopBottom = xlTop10Top

.Rank = 10

.Percent = False

End With

End Sub 

Những mã VBA này sẽ giúp bạn định dạng các ô và phạm vi bằng cách sử dụng một số tiêu chuẩn và điều kiện cụ thể.

Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

End With

End Sub 

Những mã VBA này sẽ giúp bạn định dạng các ô và phạm vi bằng cách sử dụng một số tiêu chuẩn và điều kiện cụ thể.

Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

End With

End Sub 

End Sub

  1. Những mã VBA này sẽ giúp bạn định dạng các ô và phạm vi bằng cách sử dụng một số tiêu chuẩn và điều kiện cụ thể.

Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

Mã macro này sẽ kiểm tra mỗi ô bạn chọn và làm nổi bật các giá trị trùng lặp.    

Bạn cũng có thể thay đổi màu sắc từ mã này.

Sub HighlightDuplicateValues[]

Dim myRange As Range

Dim myCell As Range

Set myRange = Selection

For Each myCell In myRange

If WorksheetFunction.CountIf[myRange, myCell.Value] > 1 Then

End Sub

  1. myCell.Interior.ColorIndex = 36

End If

Next myCell

Highlight the Active Row and Column

Đây là những bước để thực hiện mã code này nhanh chóng.

Selection.FormatConditions.Delete

Mở VBE [ALT + F11].

Di chuyển đến Project Explorer [Crtl + R, If hidden].

Selection.FormatConditions[Selection.FormatConditions.Count].S

tFirstPriority

With Selection.FormatConditions[1]

.TopBottom = xlTop10Top

.Rank = 10

End With

End Sub

  1. End Sub 

Những mã VBA này sẽ giúp bạn định dạng các ô và phạm vi bằng cách sử dụng một số tiêu chuẩn và điều kiện cụ thể.

Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

Highlight the Active Row and Column

Đây là những bước để thực hiện mã code này nhanh chóng.

Selection.FormatConditions.Delete

Mở VBE [ALT + F11].

Di chuyển đến Project Explorer [Crtl + R, If hidden].

Selection.FormatConditions[Selection.FormatConditions.Count].S

tFirstPriority

With Selection.FormatConditions[1]

.TopBottom = xlTop10Top

.Rank = 10

End With

End Sub

  1. End Sub 

Những mã VBA này sẽ giúp bạn định dạng các ô và phạm vi bằng cách sử dụng một số tiêu chuẩn và điều kiện cụ thể.

Highlight Duplicates from Selection [tô màu các ô cùng giá trị trong vùng được chọn]

Mã macro này sẽ kiểm tra mỗi ô bạn chọn và làm nổi bật các giá trị trùng lặp.    

Bạn cũng có thể thay đổi màu sắc từ mã này.

Sub HighlightDuplicateValues[]

Dim myRange As Range

Dim myCell As Range

End If

End If

Next myCell

End Sub

  1. Highlight the Active Row and Column

Đây là những bước để thực hiện mã code này nhanh chóng.

Mở VBE [ALT + F11].

Di chuyển đến Project Explorer [Crtl + R, If hidden].

Chọn workbook của bạn và nhấp đúp chuột vào tên một worksheet cụ thể mà bạn muốn kích hoạt mã macro.

Dán mã vào đó và chọn “BeforeDoubleClick” từ [event drop down menu].

Dim myCell As Range

Set myRange = Selection

For Each myCell In myRange

If WorksheetFunction.CountIf[myRange, myCell.Value] > 1 Then

Dim myRange As Range

Dim myCell As Range

myTxt= ActiveWindow.RangeSelection.AddressLocal

Else

myTxt= ActiveSheet.UsedRange.AddressLocal

End If

LInput: Set myRg= Application.InputBox["please select the data

range:", "Selection Required", myTxt, , , , , 8]

If myRg Is Nothing Then

Exit Sub

If myRg.Areas.Count > 1 Then

MsgBox"not support multiple columns" GoToLInput

End If

LInput: Set myRg= Application.InputBox["please select the data

range:", "Selection Required", myTxt, , , , , 8]

If myRg Is Nothing Then

End If

LInput: Set myRg= Application.InputBox["please select the data

range:", "Selection Required", myTxt, , , , , 8]

If myRg Is Nothing Then

Exit Sub

If myRg.Areas.Count > 1 Then

MsgBox"not support multiple columns" GoToLInput

If myRg.Columns.Count 2 Then

MsgBox"the selected range can only contain two columns "

GoTo LInput

For I = 0 To myRg.Rows.Count-1

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["A1"].Offset[I, 0]

.Font.ColorIndex= 1

For J = 1 To Len[.Text]

Selection.SpecialCells[xlCellTypeComments].Select

Mid[.Text, J, Len[myStr]] = myStrThen

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

Else

End If

End Sub

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

End Sub

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["A1"].Offset[I, 0]

.Font.ColorIndex= 1

For J = 1 To Len[.Text]

Mid[.Text, J, Len[myStr]] = myStrThen

Mid[.Text, J, Len[myStr]] = myStrThen

.Characters[J, Len[myStr]].Font.ColorIndex= 3

.Characters[J, Len[myStr]].Font.ColorIndex= 3

Next

End With

End If

End Sub

Highlight Cells with Comments

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

.Characters[J, Len[myStr]].Font.ColorIndex= 3

Next

End With

Next I

End If

End Sub

Highlight Cells with Comments

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

End If

End Sub

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

End If

End Sub

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

End If

End Sub

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["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

rng.FormatConditions.Delete

Next

End With

Next I

End Sub

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["A1"].Offset[I, 0]

.Font.ColorIndex= 1

For J = 1 To Len[.Text]

Range["H7:H8,I7:I8"].Select

Selection.ColumnDifferences[ActiveCell].Select

Mid[.Text, J, Len[myStr]] = myStrThen

myStr= myRg.Range["B1"].Offset[I, 0].Value

  1. With myRg.Range["A1"].Offset[I, 0]

.Font.ColorIndex= 1

For J = 1 To Len[.Text]

Range["H7:H8,I7:I8"].Select

Selection.RowDifferences[ActiveCell].Select

Mid[.Text, J, Len[myStr]] = myStrThen

myStr= myRg.Range["B1"].Offset[I, 0].Value

With myRg.Range["A1"].Offset[I, 0]

  1. .Font.ColorIndex= 1

For J = 1 To Len[.Text]

Sub printComments[]

With ActiveSheet.PageSetup

.printComments= xlPrintSheetEnd

End With

End Sub

  1. Print Narrow Margin

Sử dụng mã VBA này để in giấy có lề hẹp. Khi bạn chạy mã macro này, mã sẽ tự động thay đổi lề thành hẹp.

Sub printNarrowMargin[]

With ActiveSheet.PageSetup

.printComments= xlPrintSheetEnd

.InchesToPoints[0.25]

End With

End Sub

Print Narrow Margin

Sử dụng mã VBA này để in giấy có lề hẹp. Khi bạn chạy mã macro này, mã sẽ tự động thay đổi lề thành hẹp.

Sub printNarrowMargin[]

End With

End Sub

IgnorePrintAreas:=False

End Sub

  1. Print Narrow Margin

Sử dụng mã VBA này để in giấy có lề hẹp. Khi bạn chạy mã macro này, mã sẽ tự động thay đổi lề thành hẹp.

Sub printNarrowMargin[]

.LeftMargin= Application

End Sub

  1. Print Narrow Margin

Sử dụng mã VBA này để in giấy có lề hẹp. Khi bạn chạy mã macro này, mã sẽ tự động thay đổi lề thành hẹp.

Sub printNarrowMargin[]

.LeftMargin= Application

.RightMargin= Application.InchesToPoints[0.25]

.TopMargin= Application.InchesToPoints[0.75]

.BottomMargin= Application.InchesToPoints[0.75]

Value"]

.HeaderMargin= Application.InchesToPoints[0.3]

.FooterMargin= Application.InchesToPoints[0.3]

ActiveWindow.SelectedSheets.PrintOutCopies:=1, Collate:=True,

Print Selection

Mã này sẽ giúp bạn in phạm vi được chọn. Bạn không cần phải di chuyển đến mục printing options và cài đặt phạm vi in. bạn chỉ việc chọn một phạm vi và chạy mã này.

Value"]

Sub printSelection[]

Selection.PrintOutCopies:=1, Collate:=True

ActiveWindow.SelectedSheets.PrintOutCopies:=1, Collate:=True,

Print Selection

Mã này sẽ giúp bạn in phạm vi được chọn. Bạn không cần phải di chuyển đến mục printing options và cài đặt phạm vi in. bạn chỉ việc chọn một phạm vi và chạy mã này.

Collate:=True

End Sub

Print Narrow Margin

  1. Sử dụng mã VBA này để in giấy có lề hẹp. Khi bạn chạy mã macro này, mã sẽ tự động thay đổi lề thành hẹp.

Sub printNarrowMargin[]

.LeftMargin= Application

.RightMargin= Application.InchesToPoints[0.25]

.TopMargin= Application.InchesToPoints[0.75]

.BottomMargin= Application.InchesToPoints[0.75]

.HeaderMargin= Application.InchesToPoints[0.3]

Print Selection

Mã này sẽ giúp bạn in phạm vi được chọn. Bạn không cần phải di chuyển đến mục printing options và cài đặt phạm vi in. bạn chỉ việc chọn một phạm vi và chạy mã này.

End Sub

  1. Sub printSelection[]

Selection.PrintOutCopies:=1, Collate:=True

Print Custom Pages

.RightMargin= Application.InchesToPoints[0.25]

.TopMargin= Application.InchesToPoints[0.75]

.BottomMargin= Application.InchesToPoints[0.75]

Mã này sẽ giúp bạn in phạm vi được chọn. Bạn không cần phải di chuyển đến mục printing options và cài đặt phạm vi in. bạn chỉ việc chọn một phạm vi và chạy mã này.

End Sub

  1. Sub printSelection[]

Selection.PrintOutCopies:=1, Collate:=True

Print Custom Pages

Thay vì sử dụng cài đặt từ print options, bạn có thể sử dụng mã này để in phạm vi trang điều chỉnh.

.RightMargin= Application.InchesToPoints[0.25]

.TopMargin= Application.InchesToPoints[0.75]

.BottomMargin= Application.InchesToPoints[0.75]

.HeaderMargin= Application.InchesToPoints[0.3]

ws.Delete

.FooterMargin= Application.InchesToPoints[0.3]

Print Selection

Mã này sẽ giúp bạn in phạm vi được chọn. Bạn không cần phải di chuyển đến mục printing options và cài đặt phạm vi in. bạn chỉ việc chọn một phạm vi và chạy mã này.

End Sub

  1. Sub printSelection[]

Selection.PrintOutCopies:=1, Collate:=True

Print Custom Pages

Thay vì sử dụng cài đặt từ print options, bạn có thể sử dụng mã này để in phạm vi trang điều chỉnh.

.RightMargin= Application.InchesToPoints[0.25]

.TopMargin= Application.InchesToPoints[0.75]

.BottomMargin= Application.InchesToPoints[0.75]

.TopMargin= Application.InchesToPoints[0.75]

.BottomMargin= Application.InchesToPoints[0.75]

Mã này sẽ giúp bạn in phạm vi được chọn. Bạn không cần phải di chuyển đến mục printing options và cài đặt phạm vi in. bạn chỉ việc chọn một phạm vi và chạy mã này.

End Sub

  1. Sub printSelection[]

Selection.PrintOutCopies:=1, Collate:=True

Print Custom Pages

Thay vì sử dụng cài đặt từ print options, bạn có thể sử dụng mã này để in phạm vi trang điều chỉnh.

Ví dụ bạn muốn từ trang 5 đến trang10. Bạn chỉ cần chạy mã VBA này và nhập trang bắt đầu và trang kết thúc.

Sub printCustomSelection[]

Dim startpageAs Integer

Dim endpageAs Integer

End With

startpage= InputBox["Please Enter Start Page number.", "Enter

End Sub

  1. If Not WorksheetFunction.IsNumber[startpage] Then

MsgBox"Invalid Start Page number. Please try again.", "Error"

Exit Sub

Sub InsertMultipleSheets[]

Dim i As Integer

i = InputBox["Enter number of sheets to insert.", "Enter

Multiple Sheets"]

Sheets.Add After:=ActiveSheet, Count:=i

End Sub

  1. Protect worksheet

Nếu bạn muốn protect worksheet, bạn có thể sử dụng mã này.

Bạn chỉ cần nhập password của bạn vào trong mã.

Sub ProtectWS[]

ActiveSheet.Protect "mypassword", True, True

End Sub

  1. Protect worksheet

Nếu bạn muốn protect worksheet, bạn có thể sử dụng mã này.

Bạn chỉ cần nhập password của bạn vào trong mã.

Sub ProtectWS[]

ActiveSheet.Protect "mypassword", True, True

End Sub

  1. Protect worksheet

Nếu bạn muốn protect worksheet, bạn có thể sử dụng mã này.

Bạn chỉ cần nhập password của bạn vào trong mã.

Dim i As Integer

Sub ProtectWS[]

ActiveSheet.Protect "mypassword", True, True

Un-Protect Worksheet

Nếu bạn không muốn protect worksheet, bạn có thể sử dụng mà macro này.

Bạn chỉ cần nhập password mà bạn đã sử dụng khi protect worksheet của bạn.

Worksheets"]

Sub UnprotectWS[]

ActiveSheet.Unprotect "mypassword"

Sort Worksheets

Mã này sẽ giúp bạn sắp xếp worksheets trong workbook dựa vào tên của worksheet.

Sub SortWorksheets[]

Dim j As Integer

Dim iAnswer As VbMsgBoxResult

iAnswer = MsgBox["Sort Sheets in Ascending Order?" & Chr[10] _

Sub SortWorksheets[]

Dim j 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", _

  1. vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort

For i = 1 To Sheets.Count

For j = 1 To Sheets.Count - 1

If iAnswer = vbYes Then

.Unprotect

If UCase$[Sheets[j].Name] > UCase$[Sheets[j + 1].Name] Then

Sheets[j].Move After:=Sheets[j + 1]

End If

ElseIf iAnswer = vbNo Then

End Sub

  1. Protect worksheet

Nếu bạn muốn protect worksheet, bạn có thể sử dụng mã này.

Bạn chỉ cần nhập password của bạn vào trong mã.

Sub ProtectWS[]

ActiveSheet.Protect "mypassword", True, True

Un-Protect Worksheet

Nếu bạn không muốn protect worksheet, bạn có thể sử dụng mà macro này.

Bạn chỉ cần nhập password mà bạn đã sử dụng khi protect worksheet của bạn.

Sub UnprotectWS[]

Ws.Delete

Dim j As Integer

Dim iAnswer As VbMsgBoxResult

iAnswer = MsgBox["Sort Sheets in Ascending Order?" & Chr[10] _

& "Clicking No will sort in Descending Order", _

End Sub

  1. vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort

For i = 1 To Sheets.Count

For j = 1 To Sheets.Count - 1

If iAnswer = vbYes Then

If UCase$[Sheets[j].Name] > UCase$[Sheets[j + 1].Name] Then

End Sub

  1. Sheets[j].Move After:=Sheets[j + 1]

End If

ElseIf iAnswer = vbNo Then

If UCase$[Sheets[j].Name] < UCase$[Sheets[j + 1].Name] Then

Next j

Next i

End Sub

  1. End Sub          

Protect all the Cells With Formulas

Bạn có thể sử dụng mã này để protect cell with formula chỉ với một cú click chuột.

Sub lockCellsWithFormulas[]

With ActiveSheet

Un-Protect Worksheet

Nếu bạn không muốn protect worksheet, bạn có thể sử dụng mà macro này.

Bạn chỉ cần nhập password mà bạn đã sử dụng khi protect worksheet của bạn.

Sub UnprotectWS[]

ActiveSheet.Unprotect "mypassword"

iAnswer = MsgBox["Sort Sheets in Ascending Order?" & Chr[10] _

& "Clicking No will sort in Descending Order", _

vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort

  1. For i = 1 To Sheets.Count

For j = 1 To Sheets.Count - 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

ThisWorkbook.name

End Sub

  1. ElseIf iAnswer = vbNo Then

If UCase$[Sheets[j].Name] < UCase$[Sheets[j + 1].Name] Then

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ỉ với một cú click chuột.

ActiveSheet.Unprotect "mypassword"

End Sub

  1. Sort Worksheets

Mã này sẽ giúp bạn sắp xếp worksheets trong workbook dựa vào tên của worksheet.

Sub SortWorksheets[]

Dim j As Integer

Dim iAnswer As VbMsgBoxResult

Before:=Workbooks.Add.Worksheets[1]

End Sub

  1. iAnswer = MsgBox["Sort Sheets in Ascending Order?" & Chr[10] _

& "Clicking No will sort in Descending Order", _

vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort

For i = 1 To Sheets.Count

For j = 1 To Sheets.Count - 1

If iAnswer = vbYes Then

If UCase$[Sheets[j].Name] > UCase$[Sheets[j + 1].Name] Then

Sheets[j].Move After:=Sheets[j + 1]

With OutMail

.to = ""

.Subject = "Growth Report"

.Body = "Hello Team, Please find attached Growth Report."

.Attachments.Add ActiveWorkbook.FullName

.display

End With

Set OutMail = Nothing

Set OutApp = Nothing

End Sub

  1. Add Workbook to a Mail Attachment

Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Application.Dialogs[xlDialogSendMail].Show

End Sub

  1. Add Workbook to a Mail Attachment

Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Welcome Message

file."

End Sub

  1. Add Workbook to a Mail Attachment

Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Welcome Message

excelchamps.com"

End Sub

  1. Add Workbook to a Mail Attachment

Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Welcome Message

Bạn có thể sử dụng auto_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “auto_open”.

Sub auto_open[]

MsgBox "Welcome To ExcelChamps & Thanks for downloading this

Closing Message

Bạn có thể sử dụng close_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “close_open”.

Sub auto_close[]

MsgBox "Bye Bye! Don't forget to check other cool stuff on

End Sub

Add Workbook to a Mail Attachment

  1. Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Welcome Message

Bạn có thể sử dụng auto_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “auto_open”.

Sub auto_open[]

MsgBox "Welcome To ExcelChamps & Thanks for downloading this

Closing Message

Bạn có thể sử dụng close_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “close_open”.

Sub auto_close[]

MsgBox "Bye Bye! Don't forget to check other cool stuff on

Count Open Unsaved Workbooks

Bạn có thể sử dụng close_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “close_open”.

Sub auto_close[]

MsgBox "Bye Bye! Don't forget to check other cool stuff on

Count Open Unsaved Workbooks

Ví dụ bạn đang mở 5-10 workbook, bạn có thể sử dụng mã này để biết được số workbook chưa được lưu.

End Sub

  1. Add Workbook to a Mail Attachment

Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Welcome Message

Bạn có thể sử dụng auto_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “auto_open”.

Sub auto_open[]

MsgBox "Welcome To ExcelChamps & Thanks for downloading this

Closing Message

End Sub

  1. Add Workbook to a Mail Attachment

Sau khi chạy mã này, mã sẽ mở ứng dụng thư mặc định của bạn và active workbook sẽ được đính kèm với mail.

Sub OpenWorkbookAsAttachment[]

Welcome Message

Bạn có thể sử dụng auto_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “auto_open”.

Sub auto_open[]

MsgBox "Welcome To ExcelChamps & Thanks for downloading this

Closing Message

Bạn có thể sử dụng close_open để thực hiện công việc mở một tệp tin và bạn chỉ cần chỉ định mã macro “close_open”.

Sub auto_close[]

MsgBox "Bye Bye! Don't forget to check other cool stuff on

Count Open Unsaved Workbooks

Ví dụ bạn đang mở 5-10 workbook, bạn có thể sử dụng mã này để biết được số workbook chưa được lưu.

Sub VisibleWorkbooks[]

Dim book As Workbook

Dim i As Integer

For Each book In Workbooks

Data_Sheet.Activate

If book.Saved = False Then

i = i + 1

End If

Next book

MsgBox i

Các mã này sẽ giúp bạn quản lý và thực hiện một số thay đổi trong pivot table chỉ trong nháy mắt.

Hide Pivot Table Subtotals

Bạn chỉ cần chạy mã này để ẩn tất cả các subtotal.

Đầu tiên, bạn chọn một ô từ pivot table. Sau đó, thực hiện chạy mã này.

Sub HideSubtotals[]

Pivot_Sheet.PivotTables[PivotName].RefreshTable

Dim pt As PivotTable

Pivot_Sheet.Activate

Dim pf As PivotField

End Sub

  1. On Error Resume Next

Set pt = ActiveSheet.PivotTables[ActiveCell.PivotTable.name]

If pt Is Nothing Then

MsgBox "You must place your cursor inside of a PivotTable."

Exit Sub

End Sub

For Each pf In pt.PivotFields

pf.Subtotals[1] = True

End Sub

pf.Subtotals[1] = False

  1. Next pf

Refresh All Pivot Tables

Đây là một phương pháp để làm mới các pivot table nhanh chóng.

Chỉ cần chạy mã này, các pivot table trong workbook của bạn sẽ được làm mới chỉ trong một bước.

Sub CloseAllWorkbooks[]

Dim wbs As Workbook

For Each wbs In Workbooks

End Sub

  1. wbs.Close SaveChanges:=True

Next wb

Auto Update Pivot Table Range

Nếu bạn không sử dụng các bảng Excel, bạn có thể sử dụng mã này để nâng cấp phạm vi pivot table.

ActiveChart.ChartArea.Copy

ActiveSheet.Range["A1"].Select

ActiveSheet.Pictures.Paste.Select

End Sub

  1. Sub UpdatePivotTableRange[]

Dim Data_Sheet As Worksheet

Dim Pivot_Sheet As Worksheet

Dim StartPoint As Range

Dim DataRange As Range

Dim PivotName As String

Dim NewRange As String

Dim LastCol As Long

ActiveChart.ChartTitle.Text = i

Last:

Exit Sub

End Sub

Một số mã code mà bạn có thể dùng để thực hiện advanced task trong spreadsheet của bạn.

  1. Save Selected Range as a PDF

Nếu bạn muốn ẩn tất cả các subtotal, chỉ cần chạy mã này.

Đầu tiên, bạn chọn một ô từ pivot table. Sau đó, thực hiện chạy mã này.

Sub HideSubtotals[]

Dim pt As PivotTable

Dim pf As PivotField

On Error Resume Next

Set pt = ActiveSheet.PivotTables[ActiveCell.PivotTable.n ame]

If pt Is Nothing Then

MsgBox "You must place your cursor inside of a PivotTable."

Exit Sub

End If

For Each pf In pt.PivotFields

pf.Subtotals[1] = True

pf.Subtotals[1] = False

Next pf

End Sub

  1. Một số mã code mà bạn có thể dùng để thực hiện advanced task trong spreadsheet của bạn.

Save Selected Range as a PDF

Nếu bạn muốn ẩn tất cả các subtotal, chỉ cần chạy mã này.

Đầu tiên, bạn chọn một ô từ pivot table. Sau đó, thực hiện chạy mã này.

Sub HideSubtotals[]

On Error Resume Next

Set pt = ActiveSheet.PivotTables[ActiveCell.PivotTable.n ame]

If pt Is Nothing Then

MsgBox "You must place your cursor inside of a PivotTable."

End If

For Each pf In pt.PivotFields

pf.Subtotals[1] = True

pf.Subtotals[1] = False

Next pf

Create a Table of Content

Ví dụ bạn có hơn 100 worksheet trong workbook và rất khó để navigate.

Khi bạn chạy mã này, mã sẽ tạo một worksheet mới và tạo một chỉ số worksheet với một hyperlink dẫn tới những worksheet đó.

Sub TableofContent[]

Dim i As Long

TextToDisplay:=Sheets[i].Name

Application.DisplayAlerts = False

Worksheets["Table of Content"].Delete

End Sub

  1. Application.DisplayAlerts = True

On Error GoTo 0

ThisWorkbook.Sheets.Add Before:=ThisWorkbook.Worksheets[1]

ActiveSheet.Name = "Table of Content"

For i = 1 To Sheets.Count

Selection.Copy

ActiveSheet.Pictures.Paste.Select

End Sub

  1. With ActiveSheet

.Hyperlinks.Add _

Anchor:=ActiveSheet.Cells[i, 1], _

Selection.Copy

ActiveSheet.Pictures.Paste[Link:=True].Select

End Sub

  1. Address:="", _

SubAddress:="'" & Sheets[i].Name & "'!A1", _

ScreenTip:=Sheets[i].Name, _

End With

Selection.Speak

End Sub

  1. Next i

Convert Range into an Image

Dán phạm vi được chọn như một hình ảnh.

ActiveSheet.ShowDataForm

End Sub

  1. Bạn chỉ cần chọn phạm vi và sau khi bạn chạy mã này, mã sẽ tự động chèn một hình ảnh cho phạm vi đó.

Sub PasteAsPicture[]

Application.CutCopyMode = False

Insert a Linked Picture

Mã VBA này sẽ chuyển đổi phạm vi được chọn của bạn sang một hình ảnh được liên kết và bạn có thể sử dụng hình ảnh này bất cứ nơi đâu bạn muốn.

Sub LinkedPicture[]

Use Text to Speech

Worksheets["Goal_Seek"].Activate

Chọn một phạm vi và chạy mã này.

Excel sẽ đọc các văn bản của từng ô một mà bạn có trong phạm vi.

ChangingCell:=Range["C2"]

Application.DisplayAlerts = False

Exit Sub

Worksheets["Table of Content"].Delete

End Sub

  1. Application.DisplayAlerts = True

On Error GoTo 0

ThisWorkbook.Sheets.Add Before:=ThisWorkbook.Worksheets[1]

ActiveSheet.Name = "Table of Content"

For i = 1 To Sheets.Count

With ActiveSheet

.Hyperlinks.Add _

Anchor:=ActiveSheet.Cells[i, 1], _

Address:="", _

SubAddress:="'" & Sheets[i].Name & "'!A1", _

ScreenTip:=Sheets[i].Name, _

FilesGoogleChromeApplicationchrome.exe"

End With

Next i

[x86]GoogleChromeApplicationchrome.exe"

Convert Range into an Image

End Sub

Dán phạm vi được chọn như một hình ảnh.

  1. Bạn chỉ cần chọn phạm vi và sau khi bạn chạy mã này, mã sẽ tự động chèn một hình ảnh cho phạm vi đó.

Sub PasteAsPicture[]

Application.CutCopyMode = False

Insert a Linked Picture

Mã VBA này sẽ chuyển đổi phạm vi được chọn của bạn sang một hình ảnh được liên kết và bạn có thể sử dụng hình ảnh này bất cứ nơi đâu bạn muốn.

Sub LinkedPicture[]

Use Text to Speech

Chọn một phạm vi và chạy mã này.

Excel sẽ đọc các văn bản của từng ô một mà bạn có trong phạm vi.

ThisWorkbook.Save

Sub Speak[]

Exit Sub

Activate Data Entry Form

Đây là một mẫu nhập dữ liệu mặc định mà bạn có thể sử dụng để nhập dữ liệu.

Sub DataForm[]

Use Goal Seek

Goal Seek có thể rất hữu ích cho bạn để giải quyết các vấn đề phức tạp.

End If

For Each pf In pt.PivotFields

End Sub

  1. pf.Subtotals[1] = True

pf.Subtotals[1] = False

Next pf

Create a Table of Content

Ví dụ bạn có hơn 100 worksheet trong workbook và rất khó để navigate.

Khi bạn chạy mã này, mã sẽ tạo một worksheet mới và tạo một chỉ số worksheet với một hyperlink dẫn tới những worksheet đó.

Use Text to Speech

Chọn một phạm vi và chạy mã này.

Excel sẽ đọc các văn bản của từng ô một mà bạn có trong phạm vi.

Sub Speak[]

Sub Speak[]

Exit Sub

Activate Data Entry Form

Đây là một mẫu nhập dữ liệu mặc định mà bạn có thể sử dụng để nhập dữ liệu.

Sub DataForm[]

Use Goal Seek

Goal Seek có thể rất hữu ích cho bạn để giải quyết các vấn đề phức tạp.

End If

For Each pf In pt.PivotFields

End Sub

  1. pf.Subtotals[1] = True

Đơn giản là xóa các ký tự từ đầu chuỗi văn bản.

Bạn chỉ cần tham khảo một ô hoặc chèn một văn bản vào function và số ký tự sẽ bị xóa từ đầu chuỗi văn bản.

Mã có 2 argument “rng” cho chuỗi văn bản và “cnt” cho việc đếm các ký tự để xóa bỏ.

Ví dụ: Nếu bạn muốn xóa ký tự đầu tiên từ một cột, bạn chỉ cần nhập 1 vào cnt.

Public Function removeFirstC[rng As String, cnt As Long]

removeFirstC = Right[rng, Len[rng] - cnt]

End Function

  1. Add Insert Degree Symbol in Excel

Ví dụ bạn có một danh sách các số trong một cột và bạn muốn thêm degree symbol vào chúng.

Sub degreeSymbol[ ]

Dim rng As Range

For Each rng In Selection

rng.Select

If ActiveCell "" Then

If IsNumeric[ActiveCell.Value] Then

ActiveCell.Value = ActiveCell.Value & "°"

End If

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

End Function

  1. Add Insert Degree Symbol in Excel

Ví dụ bạn có một danh sách các số trong một cột và bạn muốn thêm degree symbol vào chúng.

Sub degreeSymbol[ ]

ActiveSheet.ShowDataForm

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Activate R1C1 Reference Style

End If

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

Activate A1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt A1 reference style mà không cần phải sử dụng Excel options.

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

Activate A1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt A1 reference style mà không cần phải sử dụng Excel options.

Sub ActivateA1[]

If Application.ReferenceStyle = xlR1C1 Then

Application.ReferenceStyle = xlA1

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

Activate A1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt A1 reference style mà không cần phải sử dụng Excel options.

Sub ActivateA1[]

If Application.ReferenceStyle = xlR1C1 Then

Application.ReferenceStyle = xlA1

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

End If

Next

End Sub

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

Mã macro này sẽ giúp bạn kích hoạt R1C1 reference style mà không phải sử dụng Excel options.

Sub DataForm[]

End If

Next

End Sub

  1. Reverse Text

Bạn chỉ cần nhập chức năng “rvrse” vào một ô và chuyển đến ô có văn bản mà bạn muốn đảo ngược.

Public Function rvrse[ByVal cell As Range] As String

rvrse = VBA.strReverse[cell.Value]

rvrse = VBA.strReverse[cell.Value]

Activate R1C1 Reference Style

rc = InputBox["Character[s] to Replace", "Enter Value"]

For Each Rng In Selection

Selection.Replace What:=rc, Replacement:=""

Next

End Sub

  1. Word Count from Entire Worksheet

Mã có thể giúp bạn đếm tất cả các từ trong một worksheet.

Sub Word_Count_Worksheet[]

Dim WordCnt As Long

Dim rng As Range

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

S = Application.WorksheetFunction.Trim[rng.Text]

N = 0

If S vbNullString Then

N = Len[S] - Len[Replace[S, " ", ""]] + 1

End If

WordCnt = WordCnt + N

Next rng

MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

End Sub

  1. Word Count from Entire Worksheet

Mã có thể giúp bạn đếm tất cả các từ trong một worksheet.

Sub Word_Count_Worksheet[]

Dim WordCnt As Long

End Sub

  1. Word Count from Entire Worksheet

Mã có thể giúp bạn đếm tất cả các từ trong một worksheet.

Sub Word_Count_Worksheet[]

Dim WordCnt As Long

Dim rng As Range

Dim rng As Range

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

Next rng

End Sub

  1. Word Count from Entire Worksheet

Mã có thể giúp bạn đếm tất cả các từ trong một worksheet.

Sub Word_Count_Worksheet[]

Dim WordCnt As Long

Dim rng As Range

Dim rng As Range

Dim S As String

Dim N As Long

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

S = Application.WorksheetFunction.Trim[rng.Text]

End If

Next rng

End Sub

  1. MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

Remove the Apostrophe from a Number

Nếu bạn có dữ liệu bằng số mà có dấu móc lửng trước mỗi số, bạn có thể chạy mã này để xóa chúng.

Sub removeApostrophes[]

Selection.Value = Selection.Value

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

S = Application.WorksheetFunction.Trim[rng.Text]

End If

Next rng

End Sub

  1. MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

Remove the Apostrophe from a Number

Nếu bạn có dữ liệu bằng số mà có dấu móc lửng trước mỗi số, bạn có thể chạy mã này để xóa chúng.

Nếu bạn có dữ liệu bằng số mà có dấu móc lửng trước mỗi số, bạn có thể chạy mã này để xóa chúng.

Sub removeApostrophes[]

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

S = Application.WorksheetFunction.Trim[rng.Text]

End If

Next rng

End Sub

  1. MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

Remove the Apostrophe from a Number

Nếu bạn có dữ liệu bằng số mà có dấu móc lửng trước mỗi số, bạn có thể chạy mã này để xóa chúng.

Dim rng As Range

Dim S As String

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

S = Application.WorksheetFunction.Trim[rng.Text]

End If

WordCnt = WordCnt + N

End Sub

  1. Next rng

MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

Sub removeApostrophes[]

Selection.Value = Selection.Value

Remove Decimals from Numbers

Mã này chỉ đơn giản giúp bạn xóa tất cả các phân số thập phân khỏi các số từ phạm vi được chọn.

Sub removeDecimals[]

End Sub

Dim lnumber As Double

Sub removeApostrophes[]

Selection.Value = Selection.Value

Remove Decimals from Numbers

Mã này chỉ đơn giản giúp bạn xóa tất cả các phân số thập phân khỏi các số từ phạm vi được chọn.

Sub removeDecimals[]

End Sub

  1. Dim lnumber As Double

Dim lResult As Long

For Each rng In Selection

Dim rng As Range

rng.Value= Int[rng]

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

End If

Next rng

End Sub

  1. MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

Remove the Apostrophe from a Number

Nếu bạn có dữ liệu bằng số mà có dấu móc lửng trước mỗi số, bạn có thể chạy mã này để xóa chúng.

rng.Value= Int[rng]

rng.NumberFormat= "0"

Multiply all the Values by a Number

Ví dụ bạn có một danh sách các số và bạn muốn nhân tất cả các số với một số cụ thể.

End If

Next rng

End Sub

  1. MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

in the active worksheet"

Remove the Apostrophe from a Number

Nếu bạn có dữ liệu bằng số mà có dấu móc lửng trước mỗi số, bạn có thể chạy mã này để xóa chúng.

rng.Value= Int[rng]

rng.NumberFormat= "0"

Multiply all the Values by a Number

Ví dụ bạn có một danh sách các số và bạn muốn nhân tất cả các số với một số cụ thể.

S = Application.WorksheetFunction.Trim[rng.Text]

End If

Next rng

End Sub

MsgBox "There are total " & Format[WordCnt, "#,##0"] & " words

Bài Viết Liên Quan

Chủ Đề