![]() |
Spreadsheet Macro
I would like to be able to insert a new worksheet(s) into a notebook with a
macro. The new spreadsheet must appear at the end and if possible the tab be named in numerical order (i.e. 1, 2, 3, 4,...etc.). Is this possible and if so how do you write it? Thank you for the help and suggestions. kristin from nys |
Spreadsheet Macro
Here's a little modification on Chip Pearson's "SortWorksheets"
macro..........it seems to do the job you ask......... Sub InsertWorksheetAndSortTabs() Dim N As Integer Dim M As Integer Dim FirstWSToSort As Integer Dim LastWSToSort As Integer Dim SortDescending As Boolean Sheets.Add SortDescending = False If ActiveWindow.SelectedSheets.Count = 1 Then FirstWSToSort = 1 LastWSToSort = Worksheets.Count Else With ActiveWindow.SelectedSheets For N = 2 To .Count If .Item(N - 1).Index < .Item(N).Index - 1 Then MsgBox "You cannot sort non-adjacent sheets" Exit Sub End If Next N FirstWSToSort = .Item(1).Index LastWSToSort = .Item(.Count).Index End With End If For M = FirstWSToSort To LastWSToSort For N = M To LastWSToSort If SortDescending = True Then If UCase(Worksheets(N).Name) UCase(Worksheets(M).Name) Then Worksheets(N).Move Befo=Worksheets(M) End If Else If UCase(Worksheets(N).Name) < UCase(Worksheets(M).Name) Then Worksheets(N).Move Befo=Worksheets(M) End If End If Next N Next M End Sub hth Vaya con Dios, Chuck, CABGx3 "Kristin from NYS" wrote: I would like to be able to insert a new worksheet(s) into a notebook with a macro. The new spreadsheet must appear at the end and if possible the tab be named in numerical order (i.e. 1, 2, 3, 4,...etc.). Is this possible and if so how do you write it? Thank you for the help and suggestions. kristin from nys |
All times are GMT +1. The time now is 08:53 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com