【发布时间】:2015-08-06 05:08:49
【问题描述】:
- 我有 2 个工作表。
- 在 Sh1 中,我在单元格“R2”中输入日期。
- 宏 然后应该在 Sh2 列“C”中搜索匹配项。
- 找到匹配项时 它将从我的比赛下方的 2 个单元格和下面的 74 个单元格复制 在 Sh1 单元格“R3”中粘贴特殊 xlPasteValues。
下面的例子做了类似的事情,但不是想要的结果。
Option Explicit
Sub FindStr()
Dim rFndCell As Range
Dim strData As String
Dim stFnd As String
Dim fCol As Integer
Dim sh As Worksheet
Dim ws As Worksheet
Set ws = Sheets("CTN ORIGINAL")
Set sh = Sheets("Ctn Daily - (enter data here)")
stFnd = ws.Range("R2").Value
With sh
Set rFndCell = .Range("C:C").Find(stFnd, LookIn:=xlValues)
If Not rFndCell Is Nothing Then
fCol = rFndCell.Column
ws.Range("B3:B33").Copy
sh.Cells(6, fCol).PasteSpecial xlPasteValues
Else 'Can't find the item
MsgBox "No Find"
End If
End With
End Sub
【问题讨论】:
-
不清除此部分“它将从我的匹配项下方的 2 个单元格和下方的 74 个单元格复制”。你能解释更多吗?
-
例如,表 2 中的匹配项位于 C50 我希望将 C52:C156 中的所有单元格复制并粘贴到表 1 的 R3 中(仅限值)。匹配项的位置将始终更改所以不能是代码中的静态位置
标签: excel find copy-paste worksheet-function vba