Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 49
Default Copy rows with a specific value in column A

Hi, this macro is supposed to copy all the rows with a specific value (in
C25) to another sheet. But, only the first row will be copied. Can someone
help?? Or have a better suggestion??

Sub Copy()
Application.ScreenUpdating = False
With Sheets("Sheet1")
Dim i As Long, sTargetValue As String
sTargetValue = Sheets("Sheet1").Range("C25")
For i = 100 To 1 Step -1
If Cells(i, "A").Text = sTargetValue Then
Rows(i).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
End If
Next i
End With
End Sub


  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,124
Default Copy rows with a specific value in column A

I would suggest using datafilterautofilterfilter on your valuecopy the
bunch at once but
something like this without selections or screen updating needed. UNTESTED

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=strval then sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi, this macro is supposed to copy all the rows with a specific value (in
C25) to another sheet. But, only the first row will be copied. Can someone
help?? Or have a better suggestion??

Sub Copy()
Application.ScreenUpdating = False
With Sheets("Sheet1")
Dim i As Long, sTargetValue As String
sTargetValue = Sheets("Sheet1").Range("C25")
For i = 100 To 1 Step -1
If Cells(i, "A").Text = sTargetValue Then
Rows(i).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
End If
Next i
End With
End Sub



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 49
Default Copy rows with a specific value in column A

Hi Don,

Thanks for responding. Unfortunally, it doesn´t work: on "Str" I got an
error.

Gert-Jan

"Don Guillett" schreef in bericht
...
I would suggest using datafilterautofilterfilter on your valuecopy the
bunch at once but
something like this without selections or screen updating needed. UNTESTED

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=strval then sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi, this macro is supposed to copy all the rows with a specific value (in
C25) to another sheet. But, only the first row will be copied. Can
someone help?? Or have a better suggestion??

Sub Copy()
Application.ScreenUpdating = False
With Sheets("Sheet1")
Dim i As Long, sTargetValue As String
sTargetValue = Sheets("Sheet1").Range("C25")
For i = 100 To 1 Step -1
If Cells(i, "A").Text = sTargetValue Then
Rows(i).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
End If
Next i
End With
End Sub







  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,124
Default Copy rows with a specific value in column A

correct my typo so that str and strval are the same

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=str then sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi Don,

Thanks for responding. Unfortunally, it doesn´t work: on "Str" I got an
error.

Gert-Jan

"Don Guillett" schreef in bericht
...
I would suggest using datafilterautofilterfilter on your valuecopy the
bunch at once but
something like this without selections or screen updating needed.
UNTESTED

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=strval then
sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi, this macro is supposed to copy all the rows with a specific value
(in
C25) to another sheet. But, only the first row will be copied. Can
someone help?? Or have a better suggestion??

Sub Copy()
Application.ScreenUpdating = False
With Sheets("Sheet1")
Dim i As Long, sTargetValue As String
sTargetValue = Sheets("Sheet1").Range("C25")
For i = 100 To 1 Step -1
If Cells(i, "A").Text = sTargetValue Then
Rows(i).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
End If
Next i
End With
End Sub









  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 49
Default Copy rows with a specific value in column A

Hi,

Thanks again. Made your macro "working" (read: error-free) with this:

Sub Kopieren()
For i = 100 To 2 Step -1
With Sheets("Blad1")
Strval = .Range("C26")
dlr = Sheets("Blad2").Cells(Rows.Count, "a").End(xlUp).Row
If .Cells(i, "a") = Strval Then Sheets("Blad2").Rows(dlr).Value =
..Rows(i).Value
End With
Next i
End Sub

But it has the same problem: it only copies the first line of my range.


"Don Guillett" schreef in bericht
...
correct my typo so that str and strval are the same

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=str then sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi Don,

Thanks for responding. Unfortunally, it doesn´t work: on "Str" I got an
error.

Gert-Jan

"Don Guillett" schreef in bericht
...
I would suggest using datafilterautofilterfilter on your valuecopy
the
bunch at once but
something like this without selections or screen updating needed.
UNTESTED

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=strval then
sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi, this macro is supposed to copy all the rows with a specific value
(in
C25) to another sheet. But, only the first row will be copied. Can
someone help?? Or have a better suggestion??

Sub Copy()
Application.ScreenUpdating = False
With Sheets("Sheet1")
Dim i As Long, sTargetValue As String
sTargetValue = Sheets("Sheet1").Range("C25")
For i = 100 To 1 Step -1
If Cells(i, "A").Text = sTargetValue Then
Rows(i).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
End If
Next i
End With
End Sub













  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,124
Default Copy rows with a specific value in column A

tested

Sub Kopieren()
With Sheets("Blad1")
For i = .Cells(Rows.Count, "a").End(xlUp).Row To 2 Step -1
dlr = Sheets("Blad2"). _
Cells(Rows.Count, "a").End(xlUp).Row + 1
Strval = .Range("C26")
If .Cells(i, "a") = Strval Then _
Sheets("Blad2").Rows(dlr).Value = .Rows(i).Value
Next i
End With
End Sub

--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi,

Thanks again. Made your macro "working" (read: error-free) with this:

Sub Kopieren()
For i = 100 To 2 Step -1
With Sheets("Blad1")
Strval = .Range("C26")
dlr = Sheets("Blad2").Cells(Rows.Count, "a").End(xlUp).Row
If .Cells(i, "a") = Strval Then Sheets("Blad2").Rows(dlr).Value =
.Rows(i).Value
End With
Next i
End Sub

But it has the same problem: it only copies the first line of my range.


"Don Guillett" schreef in bericht
...
correct my typo so that str and strval are the same

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=str then sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi Don,

Thanks for responding. Unfortunally, it doesn´t work: on "Str" I got an
error.

Gert-Jan

"Don Guillett" schreef in bericht
...
I would suggest using datafilterautofilterfilter on your valuecopy
the
bunch at once but
something like this without selections or screen updating needed.
UNTESTED

for i 100 to 2 step-1
with sheets("sheet1")
str = .Range("C25")
dlr=sheets("dest").cells(rows.count,"a").end(xlup) .row
if .cells(i,"a")=strval then
sheets("dest").rows(dlr).value=.rows(i).value
next i
end with


--
Don Guillett
SalesAid Software

"Gert-Jan" wrote in message
...
Hi, this macro is supposed to copy all the rows with a specific value
(in
C25) to another sheet. But, only the first row will be copied. Can
someone help?? Or have a better suggestion??

Sub Copy()
Application.ScreenUpdating = False
With Sheets("Sheet1")
Dim i As Long, sTargetValue As String
sTargetValue = Sheets("Sheet1").Range("C25")
For i = 100 To 1 Step -1
If Cells(i, "A").Text = sTargetValue Then
Rows(i).Select
Selection.Copy
Sheets("Sheet2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet1").Select
End If
Next i
End With
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
how do I copy specific rows without copying each row individually Chris H Excel Worksheet Functions 3 November 16th 09 02:01 PM
Sum specific column rows based on 2 different column criteria Jack Excel Worksheet Functions 3 October 9th 08 05:03 PM
Copy / paste only specific rows Benjamin Excel Discussion (Misc queries) 3 April 11th 08 03:14 PM
COPY AND PASTE SPECIFIC ROWS HERNAN Excel Discussion (Misc queries) 2 August 17th 06 07:32 PM
Macro to copy down specific number of rows JA Excel Programming 4 April 26th 04 01:37 PM


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