Thread: macro problems
View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
RSteph RSteph is offline
external usenet poster
 
Posts: 31
Default macro problems

That worked perfectly. Thank you very much.

I even remembered to put in the Set command this time.

"Dave Ramage" wrote:

It sounds like your code does not explicitly define which workbook and
worksheet to apply changes to- something like this:
Range("A1").Interior.ColorIndex = 1

You have come up with the correct solution yourself! in VBA this would look
something like this:

Sub Demo
Dim wsCSV as Worksheet, wsTarget as Worksheet

'set reference to the sheet to be formatted
Set wsTarget = Activesheet

'do some formatting
wsTarget.Range("A1").Interior.ColorIndex = 1
wsTarget.Range("A2").Font.Bold = True

'stop user seeing stuff
Application.ScreenUpdating = False
'open the csv file, and create reference to first worksheet
Set wsCSV = Worksheets.Open("C:\myfile.csv").Sheets(1)

'transfer some data from one sheet to the other
wsTarget.Range("A1").Formula = wsCSV.Range("B2").Formula

'do some more formatting
wsTarget.Range("A2").Interior.ColorIndex = 1

'close the CSV file when we are done
wsCSV.Parent.Close savechanges:=False
End Sub

Cheers,
Dave

"RSteph" wrote:

I've got a macro that takes a worksheet, does some formatting, then opens
another workbook, and is suppose to pull information from that workbook, into
the original file.

The original file is a .csv file made from another program, that I open in
excel with comma's as the deliminater, to populate the first 3 columns. So
the name won't always be the same.

The problem I'm having is that when I run the macro from my "personal
workbook" it starts the formatting, but when it goes to opening the new file
to get some data, it starts doing the rest of the formatting in that file.
How can I go about getting it to do the formatting in the first file?

Is there a way for me to, when I start the macro, declare the page it was
started from into a variable, so I can then use that to specify the page I
want it to work from.

Also, is there a way to hide the second file once I open it, and still read
data from it?