Solved

Need macro to insert data across sheets and workbooks

Posted on 2011-03-10
2
232 Views
Last Modified: 2012-05-11
In Excel 2003, I have a sheet where I keep track of conference room schedules. I need to add another room to the list. I have 4 workbooks, one for each quarter of the year. The rooms need to be listed in a particular order and with specific spacing. I need to add 6 Main to each worksheet in each workbook, and it must appear 6 cells below the listing for 17 North. So on the April sheet that is attached, 6 Main will appear in cells A32, A70, etc.

And I would need to copy this pattern to each worksheet in the workbook, and to the other quarterly worksheets/workbooks for the rest of this year.
Conference-Room-Schedule.xls
0
Comment
Question by:contrain
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 23

Accepted Solution

by:
redrumkev earned 500 total points
ID: 35104083
contrain,

How are you doing?

Try the following:

You can change the string variables to update for "new/other rooms". I wasn't sure if you would have the (number) below "6 Main"? If you need this, then change the numbers 1234, which are within '(1234) to the number you want to use.
If this is not needed, comment out the variable NewNumber and the second cell.offset line.

Note - your spacing is off, the first 17 North has only 3 lines "17 North, (4119), and a blank row", while the rest of them have 4 lines such as: " 17 North, (4119), blank row one, blank row two".

Excel file attached as well.

Hope this helps,
Kevin

Sub AddConferenceRoom()

Dim ws As Worksheet
Dim cell, rng As Range
Dim LastRoom, NewRoom, NewNumber As String

    Application.ScreenUpdating = False

        Set rng = [A1:A5000]
        LastRoom = "17 North "
        NewRoom = "6 Main"
        NewNumber = "'(1234)"
        
            For Each cell In rng
                If cell = LastRoom Then
                    cell.Offset(7, 0).Value = NewRoom
                    cell.Offset(8, 0).Value = NewNumber
                    Else
                End If
            Next cell
                
    Application.ScreenUpdating = False
        
End Sub

Open in new window

Conference-Room-Schedule-version.xls
0
 

Author Closing Comment

by:contrain
ID: 35111242
Absolutely Perfect! This is exactly what I wanted and it does just what I need it to do. And the explanation was very clear and understandable, and the returned sheet with the code already in there made my life a whole lot easier. Thank you sage redrumkev!
0

Featured Post

[Live Webinar] The Cloud Skills Gap

As Cloud technologies come of age, business leaders grapple with the impact it has on their team's skills and the gap associated with the use of a cloud platform.

Join experts from 451 Research and Concerto Cloud Services on July 27th where we will examine fact and fiction.

Question has a verified solution.

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

When you see single cell contains number and text, and you have to get any date out of it seems like cracking our heads.
This article describes how you can use Custom Document Properties to store settings and other information in your workbook so that they will be available the next time you open the workbook.
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 …
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…

634 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