Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 536
Default Code copies ONLY last j from sheet


With j = Sheets(MyArr(i)).Range("B9").Value there should be several j's copied to each Sheets(MyArr(i)).Range("B" & Rows.Count).End(xlUp)(2)

The code copies only the last j from "Sales Forecast" to Sheets(MyArr(i)).

Do you see anything in the code that prevents all the j's to be coped to the proper sheet.

I have great confidence in the code since I got help from Claus of this Group, I only changed the value of j from a single sheet cell B9 to the "current" sheet
B9. And each sheet has a different value in B9.

Thanks.
Howard

Option Explicit

Sub ZeroOneDashIandNTester()
Dim c As Range
Dim i As Long
Dim j As String
Dim MyArr As Variant
Dim varOut As Variant
Dim lr As Long
Dim rngB As Range

MyArr = Array("HC-01 (IN)", "HC-02 (IN)", "HC-03 (IN)", _
"HC-04 (IN)", "HC-05 (IN)", "HC-06 (IN)", _
"HC-07 (IN)", "HC-08 (IN)", "HC-09 (IN)", "HC-10 (IN)")

Application.ScreenUpdating = False

For i = LBound(MyArr) To UBound(MyArr)

With Sheets("Sales Forecast")

j = Sheets(MyArr(i)).Range("B9").Value

lr = .Cells(.Rows.Count, 11).End(xlUp).Row
Set rngB = .Range("B6:B" & lr)

For Each c In rngB
If c = j Then
varOut = c.Offset(, 2).Resize(, 76)
Sheets(MyArr(i)).Range("B" & Rows.Count) _
.End(xlUp)(2).Resize(columnsize:=76) = varOut
End If
Next 'c

End With
Next 'i

Application.ScreenUpdating = True
End Sub
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,872
Default Code copies ONLY last j from sheet

Am Wed, 11 Dec 2013 13:03:20 -0800 (PST) schrieb Howard:

With j = Sheets(MyArr(i)).Range("B9").Value there should be several j's copied to each Sheets(MyArr(i)).Range("B" & Rows.Count).End(xlUp)(2)

The code copies only the last j from "Sales Forecast" to Sheets(MyArr(i)).

Do you see anything in the code that prevents all the j's to be coped to the proper sheet.

I have great confidence in the code since I got help from Claus of this Group, I only changed the value of j from a single sheet cell B9 to the "current" sheet
B9. And each sheet has a different value in B9.

Thanks.
Howard

Option Explicit

Sub ZeroOneDashIandNTester()
Dim c As Range
Dim i As Long
Dim j As String
Dim MyArr As Variant
Dim varOut As Variant
Dim lr As Long
Dim rngB As Range

MyArr = Array("HC-01 (IN)", "HC-02 (IN)", "HC-03 (IN)", _
"HC-04 (IN)", "HC-05 (IN)", "HC-06 (IN)", _
"HC-07 (IN)", "HC-08 (IN)", "HC-09 (IN)", "HC-10 (IN)")

Application.ScreenUpdating = False

For i = LBound(MyArr) To UBound(MyArr)

With Sheets("Sales Forecast")

j = Sheets(MyArr(i)).Range("B9").Value

lr = .Cells(.Rows.Count, 11).End(xlUp).Row
Set rngB = .Range("B6:B" & lr)

For Each c In rngB
If c = j Then
varOut = c.Offset(, 2).Resize(, 76)
Sheets(MyArr(i)).Range("B" & Rows.Count) _
.End(xlUp)(2).Resize(columnsize:=76) = varOut
End If
Next 'c

End With
Next 'i

Application.ScreenUpdating = True
End Sub



Regards
Claus B.
--
Win XP PRof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2
  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,872
Default Code copies ONLY last j from sheet

Hi Howard,

Am Wed, 11 Dec 2013 13:03:20 -0800 (PST) schrieb Howard:

With j = Sheets(MyArr(i)).Range("B9").Value there should be several j's copied to each Sheets(MyArr(i)).Range("B" & Rows.Count).End(xlUp)(2)

The code copies only the last j from "Sales Forecast" to Sheets(MyArr(i)).


the found j from Sheet(myarr(i)) is only copied to Sheet(myarr(i))
Do you want that all the found j from each sheet should be copied to
each sheet?


Regards
Claus B.
--
Win XP PRof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 536
Default Code copies ONLY last j from sheet

On Wednesday, December 11, 2013 11:07:35 PM UTC-8, Claus Busch wrote:
Hi Howard,



Am Wed, 11 Dec 2013 13:03:20 -0800 (PST) schrieb Howard:



With j = Sheets(MyArr(i)).Range("B9").Value there should be several j's copied to each Sheets(MyArr(i)).Range("B" & Rows.Count).End(xlUp)(2)




The code copies only the last j from "Sales Forecast" to Sheets(MyArr(i)).




the found j from Sheet(myarr(i)) is only copied to Sheet(myarr(i))

Do you want that all the found j from each sheet should be copied to

each sheet?





Regards

Claus B.


I'm not sure I am reading your question, correctly.

I'll try with this:

On the ten sheets in the array, each will have a different value in B9. That value will occur several times in the rngB of Sales Forecasts. So, all those values plus the resize go to that array sheet and when the Next array sheet comes up then there is a different number in B9 and all those matching numbers from rbgB and the resize goes to that sheet being 'processed'. Same with all ten sheets.

The code picks up the last occurrence of each sheets unique B9 number and places it in the correct place, except there are several for each sheet that are bypassed.

Howard
  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,872
Default Code copies ONLY last j from sheet

Hi Howard,

Am Thu, 12 Dec 2013 00:26:54 -0800 (PST) schrieb Howard:

On the ten sheets in the array, each will have a different value in B9. That value will occur several times in the rngB of Sales Forecasts. So, all those values plus the resize go to that array sheet and when the Next array sheet comes up then there is a different number in B9 and all those matching numbers from rbgB and the resize goes to that sheet being 'processed'. Same with all ten sheets.

The code picks up the last occurrence of each sheets unique B9 number and places it in the correct place, except there are several for each sheet that are bypassed.


I can't reproduce this.
I have the search string several times in sheet "Sales Forecast" and all
occurences will be copied.
Make sure that the spelling in "Sales Forecast" is the same as in the
other sheets and that there are no trailing or following spaces.
or other not visible characters


Regards
Claus B.
--
Win XP PRof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,872
Default Code copies ONLY last j from sheet

Hi Howard,

Am Thu, 12 Dec 2013 09:37:52 +0100 schrieb Claus Busch:

I can't reproduce this.


what about your range?
You are looking for j in column B
Set rngB = .Range("B6:B" & lr)
but you are checking for lr in column K
lr = .Cells(.Rows.Count, 11).End(xlUp).Row


Regards
Claus B.
--
Win XP PRof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2
  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 536
Default Code copies ONLY last j from sheet

On Thursday, December 12, 2013 1:33:51 AM UTC-8, Claus Busch wrote:
Hi Howard,



Am Thu, 12 Dec 2013 09:37:52 +0100 schrieb Claus Busch:



I can't reproduce this.




what about your range?

You are looking for j in column B

Set rngB = .Range("B6:B" & lr)

but you are checking for lr in column K

lr = .Cells(.Rows.Count, 11).End(xlUp).Row





Regards

Claus B.

--

Win XP PRof SP2 / Vista Ultimate SP2

Office 2003 SP2 /2007 Ultimate SP2


That for sure is a woops, but as luck would have it column K and column B are the same number of rows.

I had checked with a rngB.Select in my trouble shooting and the correct range of column B was selected.

I'll give stuff another look over like you suggest.

Howard
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
Code copies twice...? Howard Excel Programming 13 November 20th 13 04:26 PM
Code copies between key word is in reverse order Howard Excel Programming 5 August 27th 13 10:26 AM
Code For Copy Copies Twice PHisaw Excel Programming 2 October 22nd 09 03:47 AM
Can cells be copies automatically to Sheet 2 and Sheet 3 Curious New Users to Excel 2 March 12th 07 01:10 PM
Trying to eliminate multiple copies of the SAME code within a UserForm JimP Excel Programming 6 December 8th 04 12:45 AM


All times are GMT +1. The time now is 05:51 AM.

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"