Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 18
Default Adding and naming new worksheets

I have a worksheet that has 200-300 rows each falling into one of 8-10
categories. I am trying to find a way to create new worksheets for each of
the 8-10 categories, and then name them from the column that these catefories
are located.

Rowan from another post suggested:

One way would be to use a macro. If you have a unique list of categories in
column A then something like this should work:

Sub lime()
Dim i As Long
Dim ws As Worksheet
Dim tSht As Worksheet
On Error Resume Next
Set tSht = ActiveSheet
For i = 1 To tSht.Cells(Rows.Count, 1).End(xlUp).Row
Set ws = Sheets.Add
ws.Name = tSht.Cells(i, 1).Value
Set ws = Nothing
Next i
On Error GoTo 0
End Sub

I thing this will work, I just need a way to tell this macro to only pick
one of each of the categories in the column and name a new worksheet.

Any ideas?

Thanks,
Byron
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,302
Default Adding and naming new worksheets

Hi Byron,

You could extract the unique values to another location, using the advanced
filter feature, and then run Rowan's code on the extracted unique data.

Alternatively, try:

Assume the category names are in column A and tha row 1 is a header row.

With minor adaptation
'===========================
Sub Tester99()
Dim i As Long, j As Long
Dim WB As Workbook
Dim WS As Worksheet
Dim SH As Worksheet
Dim Rng As Range, Rng1 As Range
Dim rCell As Range
Const col As String = "A" '<<=========== CHANGE


Set WB = ActiveWorkbook '<<=========== CHANGE
Set SH = WB.ActiveSheet '<<=========== CHANGE

i = SH.Cells(Rows.Count, col).End(xlUp).Row

Set Rng = SH.Range("A1").Resize(i)

Rng.AdvancedFilter Action:=xlFilterInPlace, Unique:=True

On Error Resume Next
Set Rng1 = Rng.SpecialCells(xlCellTypeVisible)
On Error GoTo 0

For j = 2 To Rng1.Cells.Count
Set WS = Sheets.Add(after:=WB.Sheets(WB.Sheets.Count))
WS.Name = Rng1(j).Value
Set WS = Nothing
Next j

SH.ShowAllData

End Sub
'<<===========================

---
Regards,
Norman



"Byron" wrote in message
...
I have a worksheet that has 200-300 rows each falling into one of 8-10
categories. I am trying to find a way to create new worksheets for each
of
the 8-10 categories, and then name them from the column that these
catefories
are located.

Rowan from another post suggested:

One way would be to use a macro. If you have a unique list of categories
in
column A then something like this should work:

Sub lime()
Dim i As Long
Dim ws As Worksheet
Dim tSht As Worksheet
On Error Resume Next
Set tSht = ActiveSheet
For i = 1 To tSht.Cells(Rows.Count, 1).End(xlUp).Row
Set ws = Sheets.Add
ws.Name = tSht.Cells(i, 1).Value
Set ws = Nothing
Next i
On Error GoTo 0
End Sub

I thing this will work, I just need a way to tell this macro to only pick
one of each of the categories in the column and name a new worksheet.

Any ideas?

Thanks,
Byron



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Making for adding and naming a new sheet michaelberrier Excel Discussion (Misc queries) 13 May 29th 06 07:58 PM
Adding and Naming Multiple Worksheets Byron Excel Worksheet Functions 6 September 8th 05 02:52 AM
Naming Worksheets Chaz Excel Programming 1 July 25th 05 03:29 PM
Naming and Adding Worksheets Brenda Excel Programming 2 February 3rd 05 10:37 PM
Quick question about dynamically adding and naming worksheets Robbyn Excel Programming 2 August 2nd 04 01:25 AM


All times are GMT +1. The time now is 01:37 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"