#1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 414
Default array

hi all.
I recorded a macro to copy two worksheets with specific names from an open
workbook to a workbook with a specific name.

I then looked at the code it made, and saw that I got the following.

Sheets(Array("SUM", "APN")).Select

Sheets(Array("SUM", "APN")).Copy
Befo=Workbooks_("TROABook.xlsx").sheets(65)

The first thing is that I wanted it to copy the worksheets to the end of the
book.
I've tried setting the code to copy After, and changing sheets(65) to
worksheets.count, as well as sheets.count. It rejects both, stating that
"copy method of sheets class failed.

My second issue is that while the second element in my array is always
constant, the first is not.
I would like to set up a variable name for the first and thought that an
if/elseif function would help that.
however, I'm not clear on how I should accomplish that.

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default array

Maybe...

Sheets(Array("SUM", "APN")).Copy _
after:=Workbooks("TROABook.xlsx") _
.sheets(workbooks("TROABook.xlsx").sheets.count)

You want to make sure that you're counting the sheets/worksheets in the right
workbook.

SteveDB1 wrote:

hi all.
I recorded a macro to copy two worksheets with specific names from an open
workbook to a workbook with a specific name.

I then looked at the code it made, and saw that I got the following.

Sheets(Array("SUM", "APN")).Select

Sheets(Array("SUM", "APN")).Copy
Befo=Workbooks_("TROABook.xlsx").sheets(65)

The first thing is that I wanted it to copy the worksheets to the end of the
book.
I've tried setting the code to copy After, and changing sheets(65) to
worksheets.count, as well as sheets.count. It rejects both, stating that
"copy method of sheets class failed.

My second issue is that while the second element in my array is always
constant, the first is not.
I would like to set up a variable name for the first and thought that an
if/elseif function would help that.
however, I'm not clear on how I should accomplish that.


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 414
Default array

Hi Dave,
as always... you're good! Thank you so very much.
now for the second part.

My second issue is that while the second element in my array is always
constant, the first is not. I would like to set up a variable name for the
first and thought that an if/elseif function would help that. however, I'm
not clear on how I should accomplish that.



"Dave Peterson" wrote:

Maybe...

Sheets(Array("SUM", "APN")).Copy _
after:=Workbooks("TROABook.xlsx") _
.sheets(workbooks("TROABook.xlsx").sheets.count)

You want to make sure that you're counting the sheets/worksheets in the right
workbook.

SteveDB1 wrote:

hi all.
I recorded a macro to copy two worksheets with specific names from an open
workbook to a workbook with a specific name.

I then looked at the code it made, and saw that I got the following.

Sheets(Array("SUM", "APN")).Select

Sheets(Array("SUM", "APN")).Copy
Befo=Workbooks_("TROABook.xlsx").sheets(65)

The first thing is that I wanted it to copy the worksheets to the end of the
book.
I've tried setting the code to copy After, and changing sheets(65) to
worksheets.count, as well as sheets.count. It rejects both, stating that
"copy method of sheets class failed.

My second issue is that while the second element in my array is always
constant, the first is not.
I would like to set up a variable name for the first and thought that an
if/elseif function would help that.
however, I'm not clear on how I should accomplish that.


--

Dave Peterson

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default array

How do you know what sheet you want to include?

dim myFirstName as string
dim wks as worksheet

myfirstname = ""
for each wks in activeworkbook.worksheets
'some sort of test to figure out that first name
if lcase(wks.range("a1").text) = lcase("ok") then
myfirstname = wks.name
exit for 'stop looking
end if
next wks

if myfirstname = "" then
msgbox "the first worksheet wasn't found!
else
Sheets(Array(myfirstname, "APN")).Copy _
after:=Workbooks("TROABook.xlsx") _
.sheets(workbooks("TROABook.xlsx").sheets.count)
end if

(Untested. Uncompiled. Watch for typos.)



SteveDB1 wrote:

Hi Dave,
as always... you're good! Thank you so very much.
now for the second part.

My second issue is that while the second element in my array is always
constant, the first is not. I would like to set up a variable name for the
first and thought that an if/elseif function would help that. however, I'm
not clear on how I should accomplish that.

"Dave Peterson" wrote:

Maybe...

Sheets(Array("SUM", "APN")).Copy _
after:=Workbooks("TROABook.xlsx") _
.sheets(workbooks("TROABook.xlsx").sheets.count)

You want to make sure that you're counting the sheets/worksheets in the right
workbook.

SteveDB1 wrote:

hi all.
I recorded a macro to copy two worksheets with specific names from an open
workbook to a workbook with a specific name.

I then looked at the code it made, and saw that I got the following.

Sheets(Array("SUM", "APN")).Select

Sheets(Array("SUM", "APN")).Copy
Befo=Workbooks_("TROABook.xlsx").sheets(65)

The first thing is that I wanted it to copy the worksheets to the end of the
book.
I've tried setting the code to copy After, and changing sheets(65) to
worksheets.count, as well as sheets.count. It rejects both, stating that
"copy method of sheets class failed.

My second issue is that while the second element in my array is always
constant, the first is not.
I would like to set up a variable name for the first and thought that an
if/elseif function would help that.
however, I'm not clear on how I should accomplish that.


--

Dave Peterson


--

Dave Peterson
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
Prevent cell/array references from changing when altering/moving thecell/array nme Excel Discussion (Misc queries) 1 September 19th 08 01:53 PM
Redimming an array dynamically assigned from range (how to redim first dimension of a 2-D array? /or/ reverse the original array order) Keith R[_2_] Excel Programming 3 November 13th 07 04:08 PM
meaning of : IF(Switch; Average(array A, array B); array A) DXAT Excel Worksheet Functions 1 October 24th 06 06:11 PM
Array problem: Key words-Variant Array, single-element, type mismatch error davidm Excel Programming 6 November 9th 05 05:54 AM
Array problem: Key words-Variant Array, single-element, type mismatch error davidm Excel Programming 1 November 8th 05 04:21 AM


All times are GMT +1. The time now is 03:02 PM.

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

About Us

"It's about Microsoft Excel"