合併當前sheet表之前的所有sheet表,並保存到當前sheet表(並在結尾添加一行“abc”,並指定字體和大小)
Sub 合併sheet()
Application.ScreenUpdating = False
For j = 1 To Sheets.Count
If Sheets(j).Name <> ActiveSheet.Name Then
x = Range("A65536").End(xlUp).Row + 1
Sheets(j).UsedRange.Copy Cells(x, 1)
End If
Next
Range("B1").Select
Application.ScreenUpdating = True
Dim i As Integer
i = Range("a65536").End(xlUp).Row
Cells(i + 2, 1) = "abc"
Cells(i + 2, 1).Font.Name = "微軟雅黑"
Cells(i + 2, 1).font.Size = 6
End Sub
刪除所有隱藏的行和sheet表
Sub 刪除隱藏()
Dim i As Integer
Application.DisplayAlerts = False
For i = Sheets.Count To 1 Step -1
If Sheets(i).Visible = False Then
Sheets(i).Delete
Else
End If
Next i
ActiveWorkbook.Save
End Sub
刪除除了名爲‘Sheet1’表之外的所有sheet
Public Sub 刪除所有sheet()
Application.DisplayAlerts = False
Dim i As Integer
For i = Sheets.Count To 1 Step -1
Debug.Print Sheets(i).Name
If Sheets(i).Name <> "Sheet1" Then
Sheets(i).Delete
End If
Next
Application.DisplayAlerts = True
End Sub
合併指定列所有的相鄰單元格內容相同的單元格
Sub 手動合併單元格()
Dim l%, i%
Application.DisplayAlerts = False
k% = InputBox("請輸入合併單元格所在列")
l = [A65536].End(xlUp).Row
For i = l To 2 Step -1
If Cells(i, k) = Cells(i - 1, k) Then
Range(Cells(i - 1, k), Cells(i, k)).Merge
End If
Next
Application.DisplayAlerts = True
End Sub
###
自動合併第1,2列所有的相鄰單元格內容相同的單元格
Sub 自動合併所有單元格()
Dim l%, i%
Application.DisplayAlerts = False
For k = 1 To 2
l = [A65536].End(xlUp).Row
For i = l To 2 Step -1
If Cells(i, k) = Cells(i - 1, k) And IsEmpty(Cells(i, k)) = False And IsEmpty(Cells(i - 1, k)) = False Then
Range(Cells(i - 1, k), Cells(i, k)).Merge
End If
Next
Next
Application.DisplayAlerts = True
End Sub
按順序執行設置的vba模塊
Sub 順序()
Call 刪除隱藏
Call 合併sheet
Call 刪除所有sheet
End Sub