Solved

Create and workbook and rename sheets name

Posted on 2014-02-23
12
328 Views
Last Modified: 2014-03-09
Hi Experts,

I have VBA code to create workbook:

Set wb_Source_01 = Workbooks.Add
wb_Source_01.SaveAs FileName
wb_Source_01.Close False

Set wb_Source_01 = xl.Workbooks.Open(FileName)

Set ws_Source_01 = wb_Source_01.Sheets("Sheet2")  
Set ws_Source_04 = wb_Source_01.Sheets("Sheet1")    

I want to rename the " Sheet2" as "Completed" and "Sheet1" as "InComplete"

Please advise me the VBA code to do that.


Your prompt response would be highly appreciated.

Thanks
0
Comment
Question by:alam747
  • 6
  • 4
  • 2
12 Comments
 
LVL 15

Expert Comment

by:DrTribos
ID: 39881479
thisworkbook.Sheets(1).name = "myName" <-- if you want to add name directly OR


dim myName as String
myName = "someName"
thisworkbook.Sheets(1).name = myName   <-- if you assign your name to a variable
0
 

Author Comment

by:alam747
ID: 39881521
if I want to use the code I mentioned where I can add how to rename the sheet names.

Thanks
0
 
LVL 40

Assisted Solution

by:Jacques Bourgeois (James Burger)
Jacques Bourgeois (James Burger) earned 250 total points
ID: 39881526
wb_Source_01.Sheets("Sheet2").Name="Anything you want"
wb_Source_01.Sheets("Sheet1").Name="Something else you want"
0
Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

 
LVL 15

Accepted Solution

by:
DrTribos earned 250 total points
ID: 39881539
I'm not sure what you code is actually doing... but here is something that is running from within MS Word and creates a new XL Workbook and names the sheet.

Sub tests()

Dim wb_Source_01 As Excel.Workbook
Dim ws_Source_01 As Excel.Worksheet
Dim filename As String

filename = ThisDocument.Path & Application.PathSeparator & "test.xls"
    
    Set wb_Source_01 = Workbooks.Add
    
    wb_Source_01.SaveAs filename
    wb_Source_01.Close False
    
    Set wb_Source_01 = Excel.Workbooks.Open(filename)
    
    Set ws_Source_01 = wb_Source_01.Sheets("Sheet2")
    wb_Source_01.Sheets(1).Name = "myName"
    wb_Source_01.SaveAs filename
    wb_Source_01.Close True
End Sub

Open in new window


You can expand to add the additional sheet.

I don't understand why you create, close then reopen the file...
0
 
LVL 15

Expert Comment

by:DrTribos
ID: 39881549
I guess to answer your question, you can rename the sheets immediately after creating the workbook.

You may also need to create a reference to MS Excel,  VBA Environment > Tools >  References > scroll down to Microsoft Excel #.# Object Library
0
 

Author Comment

by:alam747
ID: 39881551
I reopen the file to copy containts from other workbook.

Thanks
0
 
LVL 15

Expert Comment

by:DrTribos
ID: 39881553
In fact - I think you are best setting your source by the sheet index as that will (as I understand it) remain persistent independent of the sheet name.
0
 

Author Comment

by:alam747
ID: 39883311
while I do as
wb_Source_01.Sheets("Sheet2").Name="Anything you want"
wb_Source_01.Sheets("Sheet1").Name="Something else you want"

getting runtime error '424' Object required

Thanks
0
 
LVL 40
ID: 39883643
Is wb_Source_01 initialized before you run these 2 lines?

Did you Close wb_Source_01 before running these 2 lines?

Do you have 2 sheets named "Sheet2" and "Sheet1" in that Workbook?

There are the 3 reasons I see that could cause that error on these 2 lines. Please post the complete code, you might have put the lines in the wrong place.
0
 
LVL 15

Expert Comment

by:DrTribos
ID: 39884838
Does the code that I posted above work, ie. does it create a new xls and rename the sheet?  

Did you set up the reference to the XL Library?
0
 

Author Closing Comment

by:alam747
ID: 39916735
Thanks a lot to both of you for your help.
0
 
LVL 15

Expert Comment

by:DrTribos
ID: 39916764
No worries, glad it helped.
0

Featured Post

Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
Having trouble getting your hands on Dynamics 365 Field Service or Project Service trial? Worry No More!!!
The viewer will learn how to create a normally distributed random variable in Excel, use a normal distribution to simulate the return on an investment over a period of years, Create a Monte Carlo simulation using a normal random variable, and calcul…
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question