Rename Sheets By Using Dynamic Loop For Rows?

Jan 30, 2014

In column C I got some data like this:

Number of .csv
01
02
03
04

Number of .csv
05
06
07
08

Notice that there is an empty cell in between.The data starts at C12 up to C21. The data is in Sheet2.There are also 8 more sheets( Sheet3 to Sheet10). I want to rename each sheet, starting from Sheet3 according to each cell. For example the Sheet3 to be renamed to 01, Sheet4 to 02.

What I can do is something like this:

[Code] .....

And repeat this code for every block of data I got by changing everytime the i and the a. But this method is not so optimized because there are cases that the number of rows for each block is not the same and I have to change everytime the i counter. Is there any way to do 1 loop for all the sheets using maybe Worksheets.Count and another dynamic loop for the rows ? The data always start every 6 rows eg( C12, C18 etc). Also I was thinking to define an integer representing the number of rows for the loop...

Rename Sheets In For Next Loop

Jun 18, 2008

I have a WorkBook with many Sheets "imagine Sheets.count=50"

9 of the CodeNames for this Workbook's sheets are: sht01. sht02, sht03, sht04, sht05, sht06...

If I want to change the name "not the CodeName" of say "sht01" I can use:

sht01.name="New Name"

but is there a way of doing this whitin a For Next this way:

For X = 1 To 9
Sheets("sht" & X.CodeName) = X ' the Name X is just for this eg
Next X

Loop Through Of Sheets And Execute Calculations Based On Dynamic Sheet References

Jun 30, 2014

Is it possible to loop through a list of sheets and execute some calculations that have sheet references from a different list of worksheets? For example, you have a list (list 1) of your worksheets, which will be the destinations of the calculations, and you have a second list (list 2) of worksheets that the calculations are based on. So, lets say there are sheet1 and sheet2 in list 1, and sheetA and sheetB in list 2. The calculations based on sheetA would appear in sheet1, and calculations based on sheetB would appear in sheet2. I thought the code would look something like this:

Code:
Sub LoopthroughWorksheets()
Dim sheet_name As Range
Dim sheet_name2 As Range
Set sheet_name2 = Sheets("WS").Range("F:F")

[Code] ......

I'm getting a "Run-time error '1004: Application-defined or object defined error" at this line:

Code:
.Range("K1") = .Range("sheet_name2.Value!A14").Value

How To Loop Through Dynamic Ranges Using Columns Rather Than Rows

Jun 23, 2014

I have a list of several hundred columns, beginning with column "G:G", with varying numbers of rows of data in column - each row dipicting a monthly data point. I'd like to average the numbers in each column (need to average over the appropraite time-frame) and compare that average with the corresponding average (same time-frame) for benchmark (column"F:F"). The problem is I don't have the same number of data points in each column; some have data points for every month for the past 33 years, and some just a few years; almost all have differing beginning and ending dates as well.

[Code] ....

Loop Through Rows To Calculate Median For Several Dynamic Ranges With Numerical Data

Jul 6, 2006

loop that can calculate the median of dynamic ranges. I need to run through all columns and for each column find the the ranges (there are more ranges and they are seperated with a blank row) with numerical data and then calculate the median and thereafter continue down to find the next range with numerical data in that row and so on.

Loop Through Rows And Copy To Separate Sheets

Apr 3, 2007

I have a table of data 100's rows 10 cols. In col A is a name like USA - these refer to sheet names in the workbook. The other cols are numbers.

I need to write a macro to start at row A and go down the rows 1 at a time and copy and paste that row to the bottom of the sheet named in Col A.

Actually needs to insert at the bottom of a table in the USA col rather than just paste as there is other data further down.

Loop Through All Files Rename And Save In Another Folder

Feb 27, 2013

I have excel files in a folder, I need a macro to loop through all files, rename them and save them in another folder. the file's name is available in a cell in each file, I am able to get the file name as text (I had to dig a little to get the text as it was between ""). Well I am stuck right now because the macro is doing what it's supposed to do for one excel file only and does not continue with the rest of the available files for a reason.

VB:
Sub RenameAllFiles()
Dim Bk As Variant
Dim n As Integer
Dim NewName As String

[Code] .....

Create New Sheets And Rename VBA

Jul 24, 2012

I have a worksheet titled "master plan" with many columns of data. I want to create many tabs based on this data.
One tab I want that just has the data from columns C, F, A, E, G and L (in that order) Starting with the header data in row 2. And titled "LOB".

Then I want a different tab for each unique item in Row C with these same columns (C, F, A, E, G and L from "master plan" tab or A, B, C, D, E and F from new "LOB" tab). The tab name should be the unique row C value.

So for example, say that there about 20 rows where 'A' is in column C, about 30 with 'B' in column 'C' etc .... There should be a tab with the name 'A' with those 20 rows of data and a tab with the name 'B' with the 30 rows with B and so on.

I also would prefer not to have to delete the existing 'A' and 'B' tabs every time before recording the macro so if it can either create a new tab or replace an existing tab with that name if it already exists.

To make things a little more difficult.. for the (in this example) 20 items with an 'A' in column C, there are (at this time) 3 different possible items in column B of 'master plan'. I'd like to create 3 separate tabs for each unique value in column B and I want the name to be dependent on the data in Column B (for example, the three unique items in column B with a column C of 'A' are Red, Green and yellow. I want three new tabs set up for each and the tab names to be: if B = Red, then tab name = 'Stop', If B = Green, then tab name = 'Go', if B = Yellow, then tab name = 'Slow'.

I have something that partially works, but I have to create the 'LOB' tab first and it doesn't work if any of the sheets already exist. And it doesn't do the Red, Green, Yellow part.

Here is what I currently have:

Sub DeptTabs2()
Dim strSrcSheet As String
Dim rngSrcStart As Range
Dim rngSrcEnd As Range
Dim rngCell As Range
Dim strLastDept As String
Dim intDestRow As Integer
On Error GoTo ErrHnd

[Code] ..

Rename Sheets - But Not Every Sheet

May 2, 2008

I have 20 sheets in the workbook. 10 sheets are named YR1, YR2, etc. Once the user enters information on sheet "Assumptions" - names are setup and linked onto each YR page. So user enters CY10, which links to cell C5 on YR1 to show CY10.

I would like a macro that renames just the YR1, YR2, ....sheets, to CY10, CY11, .... I do not want any of the other sheets to change names.

(FYi - Using Excel 2003)

Rename All Selected Sheets (For Each)

Apr 8, 2009

how I can change this code to apply to only the sheets that are selected (grouped) as opposed to every sheet in the workbook?

For Each shName In ActiveWorkbook.Sheets

Rename Sheets Using ComboBox

Sep 4, 2006

in the WorkSheet_Activate for Sheet 3, which changes the sheet name to the ComboBox Value. Is it possible to use the default name of the Sheet, in this case Sheet 3, if the ComboBox Value = "0". I have the following codes for a ComboBox & Userform:

Private Sub ComboBox1_Change()
Sheet3. Range("E1").Value = ComboBox1.Value
End Sub

&

Private Sub Userform Initialize()
For x = 1 To 60 Step 1
Next x
ComboBox1.Value = Sheet3.Range("E1").Value

I also have this code ..............

Rename Sheets In VBA Editor

Oct 13, 2006

is there a quick and easy way to rename the Sheets In VBA Editor (they are currently all mixed up), i.e. I have Sheet221 followed by Sheet11 etc. Is there a way to reorganise them so that I get Sheet01 followed by Sheet02 etc.

Rename Sheets From A List

Apr 22, 2007

i am looking for a macro that renames existing worksheets from multiple lists and have the new name appear in cell b1 of each new sheet.

List one: Worksheet name "Stats", cells b7:b20
Worksheets i would like renamed: Sheet9:Sheet22

List two: Worksheet name "Stats", cells 26:b34
Worksheets i would like renamed: Sheet48:Sheet56

Copy Sheets & Rename

Dec 29, 2007

I have a workbook containing many worksheets. The worksheets are clients in my system.

I have no big problems with my VBA code, but what I really thought was simple is causing my system to take very long time processing.

Sheets("Kunde mal").Select
Sheets("Kunde mal").Copy Before:=Sheets(3)
Sheets("Kunde mal (2)").Select
navn = Range("kundeNavn").value
ID = Range("kliNr").value
Sheets("Kunde mal (2)").name = navn & " - " & ID
Sheets("Kunde mal").Select

Why is this taking so many seconds?

Are there other ways to copy sheets?

Rename The Sheets According To The Current Time

Jan 13, 2008

how to rename the sheets according to the current time 1201pm, 1202pm etc. i need a macro.

VBA- To Rename The Sheets Directly After Creating Them

Aug 21, 2008

I have a macro which creates 4 worksheets. Unfortunately sometimes they are named by default "Sheet5", "Sheet6", "Sheet7", and "Sheet8" when the macro is set to "Sheet1", "Sheet2", "Sheet3", "Sheet4". My question, is there a way to rename the sheets directly after creating them so that the sheet in the very first position in the spreadsheet is named "Sheet1" (the same would go for sheets 2-4). The code below wont work if the sheet decides to be a name other then "Sheet5" so how do I point to the the worksheet known as Sheet5 without using its name and tell excel I want its default to be "Sheet1"?

Code below:

Sheets("Sheet5").Select
Sheets("Sheet5").Name = "Sheet1"
Sheets("Sheet6").Select
Sheets("Sheet6").Name = "Sheet2"
Sheets("Sheet7").Select
Sheets("Sheet7").Name = "Sheet3"
Sheets("Sheet8").Select
Sheets("Sheet8").Name = "Sheet4"

Rename Sheets-Worksheets Codename

Oct 31, 2006

I'm tring to create a newsheet and rename the codename but it doesnt seem to be working. Here is my
Private Sub Update_Button_Click()

WFName = "WF Tracker SITE " + AddYear

ActiveSheet. Name = WFName
Sheets(WFName).CodeName = wf 'This line wont work
End Sub

Selectively Rename Sheets By Sheet Code Name?

May 9, 2012

How do I selectively rename sheets by sheet code name?

Instead of sheet1.name = "New Name" I need sheet1 to be a variable of a specific sheet.

Rename Sheets Based On TextBox Values

Aug 24, 2006

Say you have a userform with 10 TextBoxes, let’s call them TxtN1…TxtN10 and your workbook has 10 sheets, say “Sheet1”…”Sheet10”. Now if one wants to code a procedure to rename those worksheets when the user hits a command button it’s simple enough.

Sub Rename_click()
For i = 1 To 10
With Sheets(“Sheet” & i )
. name = TxtN & i
End With
Next i
End Sub

But now if the user then changes the textboxes TxtN1…TxtN10 to a set of new strings it’s obvious that the following coding segment will not work:

For i = 1 To 10
With Sheets(TxtN & i)
.name = TxtN & i
End With
Next i

It goes without saying that the program will try to select the worksheets with the new name (and they obviously don’t exist yet)…

Rename 500 Sheets Based On Modified Cell Value On Each Sheet

Jul 31, 2013

I receive a workbook each day with approx 500 tabs of call data and I would like to relabel all the tabs with the user names. The user names are in a merged range "A7:M7". I'm having difficulty getting the following script to rename the sheets. Currently the values in "A7:M7" look like "User: ADAM ENGEMANN-558".

I am trying to delete each occurrence of "User: " while naming the sheets as well as removing the merged range before doing so that the names are in A7 only. The sheet names should look like "ADAM ENGEMANN-558", or, ideally just "ADAM ENGEMANN". For some reason my code will not modify the cells. (See attached example)

This works if I manually unmerge the cells before running and remove the ":".

VB:
Sub RenameSheets2()
Dim ws As Worksheet

For Each ws In ThisWorkbook.Worksheets
If ws.Range("A7").Value <> "" Then

[Code] .....

This his how I modified it but it doesn't work on the supplied sheets. Please note that if I manually insert some blank sheets into my workbook and merge the cells etc it does work. There seems to be something odd going on with the sheets they are giving me. (they aren't protected)

VB:
Sub RenameSheets2()
Dim ws As Worksheet

For Each ws In ThisWorkbook.Worksheets
If ws.Range("A7").Value <> "" Then

I tried adding the following to remove the merged ranges and remove 'User: ' from the names
Range("A7:M7").Select
With Selection
.WrapText = False
.MergeCells = False

[Code] ......

CallSample2.xls

Rename Tabs (Sheets) Based On Cell Contents

Nov 10, 2009

I have 5 sheets. In the first sheet I have set up 4 cells where I want the contents of them to automatically rename the other 4 corresponing sheets.

Eg.
In Sheet 1, Cell B6, I want the contents (which will be text) to be the name of sheet 2 automatically.

In Sheet 1, Cell B7, I want the contents (which will be text) to be the name of sheet 3 automatically.

Copy Worksheet, Rename As Cell Value & Sort All Sheets

Oct 1, 2009

I am working with a workbook that has data automatically entered each time a new child is enrolled to the program. The child's data is automatically entered to the sheet named "Intake". What I need to do now is rename that sheet using the child's name as the sheet name, but also keep the sheet named "Intake" for the next entry. I would then like to sort the sheets alphabetically but leaving the "Intake" sheet either as the first sheet or the last sheet. I have attached an example of the workbook I am working with.

Copy/Move Rename Sheets Based On List

Aug 11, 2006

I have a list of names in sheet1, starting with cell A3. I would like to copy sheet3, insert it after sheet3 and rename the sheet to correspond to the names in the list.

If i have 30 names I would like 30 sheets. If i add a name, I would like to repeat the copy, insert and rename steps for the extra names as i add them.

Store Row Number Within Loop And Delete All Stored Rows After Loop?

Sep 11, 2013

I have working code that returns a row number within a for loop based on parameters I set.

Each time the for loop runs I would like to store this row number, then after the loop has finished, delete all stored rows.

Code:
for rowNum = 1 to x (some variable end row number which I already have worked out using End(xlUp).Row)
if x = y then
*storedRow = rowNum
end if
next rowNum
*

Lines with a * are the bits I can't work out. I've been trying to understand arrays by reading posts on what other people have done, but I can't fit (or fully understand) the reDims, or reDim preserves into my code. I've seen what appear to be quite complex ways involving uBounds and LBounds, but unfortunately I can't see how to use them.

All I want is to simply keep adding a row numbers to a variable, (i.e. row 2, 5, 20, 33, 120, etc) and then delete those specific rows.

Sum A Dynamic Range Within A For Loop?

Sep 15, 2014

I am working with loans, and I'm trying to program a routine that adds every installment a client owes, so I can know the total amount owed, depending on how many unpaid installments she has. Let say for a client I have every installment in column A (rows 1 to 5), and in column B, I want to add them all. The output should be

Cell B1: "sum(A1:A5)"
Cell B2: "sum(A2:A5)"
Cell B3: "sum(A3:A5)"... and so forth

Since I have many loans, I need a dinamic routine to that sums every installment, where amount of installments vary from client to client. My proposal is (adding from the last installment to the first one):

VB:
months = 4 'an example
For j = 0 To months - 1
initial_row = ActiveCell.Row 'because I run this several times. In this example I am in row 18[code]....

For some reason this is not working, and what I see in Excel after running it is: SUM('AJ18':'AJ18'), which doesn't work.

Change Dynamic Range While In Loop?

Sep 29, 2012

I am wanting vba to loop though a range basically till the last row of the column however within the loop the row gets inserted and the lr which is pre defined does not change. I want to be able to change my lr within the loop, maybe reset it or something...or may be alternative..

I tried using a method where it will loop through a each cell in col however that takes too much times....because it is going through each column...

Code:
lr = Cells(Rows.Count,
Code:
iCol).End(xlUp).Row
For y = 1 To lr
Cells(y, iCol).Select
If ActiveCell.value "" Then

[Code]....

Split Up Rows In Worksheet Based On Value In Column And Rename New Sheet To Same Value

Jul 9, 2012

I'd like to split up the rows in a worksheet based on the values in one of the columns. Also, I'd like the sheets to be named after the values in the column. I have attached example excel sheets to explain this better. I think the vlookup and Sheets.Add and ActiveSheet.Name formulas can be used but I'm not quite sure how to put them together. The actual data has about 20 columns and about 500 rows.

Loop Through Sheets 2-4 Only?

Aug 2, 2012

How do I tell a loop command to stop after a certain number of sheets? The code below works for what I want to do but it saves all the sheets in my workbook bar the first one. I just want to save sheets 2, 3 & 4

Code:
Option Explicit
Sub mysaver()
Application.Calculation = xlManual
Dim counter As Integer
counter = 2
' counter is for the number of sheets in the workbook
Do While counter

For Each Loop- How Can I Specify Which Sheets To Do This For And Then Loop Thru All Sheets To Do It

Apr 5, 2007

I think I need a For Each Loop, but I'm not sure. I want to collapse all grouping to the highest level for certain sheets in a book.

Sheets("sheet1").Select
ActiveSheet.Outline.ShowLevels RowLevels:=1
Sheets("sheet2").Select
ActiveSheet.Outline.ShowLevels RowLevels:=1
Sheets("sheet3").Select
ActiveSheet.Outline.ShowLevels RowLevels:=1

How can I specify which sheets to do this for and then loop thru all sheets to do it?

How Do I Loop Through Sheets

Mar 14, 2008

I want to perform an action on all but one of my worksheets. I've heard the array function can be used for this but I'm unfamiliar with its use.