Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 89
Default Simple loop problem

I have a simple loop that is not working and I just see why. I am trying to
loop through column F and if there is an X in the cell, copy the value from
column A in the same row to another worksheet. I loop is only picking up the
last x in column F?
Any help would be greatly appreciated.

Sub DailyList()
Dim WorkRange As Range
Dim i As Integer
Set WorkRange = Sheet3.Range("a300").End(xlUp).Offset(1, 0)
i = 2
For i = 2 To 300 Step 1
If Sheet1.Cells(i, 6) = "x" Then
WorkRange.Value = Sheet1.Cells(i, 1).Value
End If
Next
End Sub
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 89
Default Simple loop problem

Thank goodness it's Friday! I see I forgot to put a .value in my code


"Christy" wrote:

I have a simple loop that is not working and I just see why. I am trying to
loop through column F and if there is an X in the cell, copy the value from
column A in the same row to another worksheet. I loop is only picking up the
last x in column F?
Any help would be greatly appreciated.

Sub DailyList()
Dim WorkRange As Range
Dim i As Integer
Set WorkRange = Sheet3.Range("a300").End(xlUp).Offset(1, 0)
i = 2
For i = 2 To 300 Step 1
If Sheet1.Cells(i, 6) = "x" Then
WorkRange.Value = Sheet1.Cells(i, 1).Value
End If
Next
End Sub

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4,339
Default Simple loop problem

Hi,
You need to increment WorkRange to point to next row

Sub DailyList()
Dim WorkRange As Range
Dim i As Integer
Set WorkRange = Sheet3.Range("a300").End(xlUp).Offset(1, 0)
i = 2
For i = 2 To 300 Step 1
If Sheet1.Cells(i, 6) = "x" Then
WorkRange.Value = Sheet1.Cells(i, 1).Value
Set WorkRange = WorkRange.Offset(1, 0)
End If
Next
End Sub

"Christy" wrote:

Thank goodness it's Friday! I see I forgot to put a .value in my code


"Christy" wrote:

I have a simple loop that is not working and I just see why. I am trying to
loop through column F and if there is an X in the cell, copy the value from
column A in the same row to another worksheet. I loop is only picking up the
last x in column F?
Any help would be greatly appreciated.

Sub DailyList()
Dim WorkRange As Range
Dim i As Integer
Set WorkRange = Sheet3.Range("a300").End(xlUp).Offset(1, 0)
i = 2
For i = 2 To 300 Step 1
If Sheet1.Cells(i, 6) = "x" Then
WorkRange.Value = Sheet1.Cells(i, 1).Value
End If
Next
End Sub

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 11,272
Default Simple loop problem

That shouldn't be the reason, Value is the default property.

--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"Christy" wrote in message
...
Thank goodness it's Friday! I see I forgot to put a .value in my code


"Christy" wrote:

I have a simple loop that is not working and I just see why. I am trying

to
loop through column F and if there is an X in the cell, copy the value

from
column A in the same row to another worksheet. I loop is only picking up

the
last x in column F?
Any help would be greatly appreciated.

Sub DailyList()
Dim WorkRange As Range
Dim i As Integer
Set WorkRange = Sheet3.Range("a300").End(xlUp).Offset(1, 0)
i = 2
For i = 2 To 300 Step 1
If Sheet1.Cells(i, 6) = "x" Then
WorkRange.Value = Sheet1.Cells(i, 1).Value
End If
Next
End Sub



  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 65
Default Simple loop problem

Christy,

Try the following

Sub Daily()

Set oFind = shtFind.Range("f1")
Set oCopy = shtCopy.Range("a1")

Do Until oFind.Offset(i).Row shtFind.UsedRange.Rows.Count
If oFind.Offset(i) = "x" Then
oCopy.Offset(i) = oFind.Offset(i, -5)
End If
i = i + 1
Loop

End Sub

You did not set an adjustable offset for your workrange object. My code
will also take into account any sized spreadsheet.
--
http://HelpExcel.com
1-888-INGENIO
1-888-464-3646
x0197758


"Christy" wrote:

I have a simple loop that is not working and I just see why. I am trying to
loop through column F and if there is an X in the cell, copy the value from
column A in the same row to another worksheet. I loop is only picking up the
last x in column F?
Any help would be greatly appreciated.

Sub DailyList()
Dim WorkRange As Range
Dim i As Integer
Set WorkRange = Sheet3.Range("a300").End(xlUp).Offset(1, 0)
i = 2
For i = 2 To 300 Step 1
If Sheet1.Cells(i, 6) = "x" Then
WorkRange.Value = Sheet1.Cells(i, 1).Value
End If
Next
End Sub

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
simple loop needed please Alan Excel Discussion (Misc queries) 1 May 5th 10 06:33 PM
Simple loop? bushtor Excel Programming 3 September 13th 05 01:45 PM
Problem adding charts using Do-Loop Until loop Chris Bromley[_2_] Excel Programming 2 May 23rd 05 01:31 PM
Some help w/ simple loop, please? terry b Excel Programming 6 February 6th 05 06:17 PM
Simple problem refering to variable in For ... Next loop ... Chris Excel Programming 1 July 15th 03 01:00 AM


All times are GMT +1. The time now is 12:05 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"