Hi Cribbsstyle
if you record such procedures, keep in mind, that Excel always works
with selection, which is first of all slow and second not needed.
try this:
Sub copyplayer(ByVal copyfromname, copytoname, copytorow, position,
columnsearch, StartRow)
Application.ScreenUpdating = False
Dim ShFrom As Worksheet
Dim ShTo As Worksheet
Dim LSearchRow As Integer
Dim LEndRow As Integer
Dim LCopyToRow As Integer
Dim cell_ As Range
Set ShFrom = Sheets(copyfromname)
Set ShTo = Sheets(copytoname)
LCopyToRow = copytorow
LEndRow = ShFrom.Cells(65536, columnsearch).End(xlUp).Row
For Each cell_ In ShFrom.Range(ShFrom.Cells(StartRow, columnsearch),
ShFrom.Cells(LEndRow, columnsearch))
If cell_.Value = position Then
ShFrom.Range("A" & cell_.Row & ":B" & cell_.Row).Copy
ShTo.Range("A" & LCopyToRow).PasteSpecial xlPasteValues
LCopyToRow = LCopyToRow + 1
End If
Next cell_
Application.ScreenUpdating = True
End Sub
hope you understand what i did, otherwise just ask.
cheers
Carlo
PS: Be careful there will be some wordwraps!!!
On Jan 11, 12:39*pm, "Bernie Deitrick" <deitbe @ consumer dot org
wrote:
To work with your previously posted style:
Sub test()
CopyPlayer "HidRatings", "PR Current", "12", "RB", "C", "2"
End Sub
Sub CopyPlayer(ByVal copyfromname As String, _
* * * * * * * * ByVal copytoname As String, _
* * * * * * * * ByVal copytorow As Long, _
* * * * * * * * ByVal position As String, _
* * * * * * * * ByVal columnsearch As String, _
* * * * * * * * ByVal StartRow As Long)
Dim myR As Range
With Worksheets(copyfromname)
* * .Range("A" & StartRow - 1).CurrentRegion.AutoFilter _
* * * * Field:=Cells(1, columnsearch).Column, Criteria1:="=" & position
* * Set myR = Intersect(.UsedRange, .Range("A" & StartRow & ":P" &
Rows.Count)) _
* * * * .SpecialCells(xlCellTypeVisible)
* * myR.Copy
End With
With Worksheets(copytoname)
* * .Range("A" & copytorow).PasteSpecial xlPasteValues
End With
Application.CutCopyMode = False
End Sub
HTH,
Bernie
MS Excel MVP
"CribbsStyle" wrote in message
...
How would I go about filtering, and I need this to all happen behind
the scenes in VBA.
Yeah I know where the table is...
HidRatings.Range(A2:P90)
Column C has the value Im searching for
Column is mostly filled...there are a few that are not filled, I could
just delete them.
No full blank rows or columns- Hide quoted text -
- Show quoted text -