EXCEL 将符合条件的整行复制到指定的位置(用宏写)

在指定位置(如:A1)输入要选的字节(如:电阻),回车后,将符合A1值的整行复制到指定的工作表sheet2中。用宏写。A列B列C列D列1电阻1K31082电容22P204... 在指定位置(如:A1)输入要选的字节(如:电阻),回车后,将符合A1值的整行复制到指定的工作表sheet2中。用宏写。

A列 B列 C列 D列
1 电阻 1K 3108
2 电容 22P 2049
3 电阻 33K 3004
4 晶体 945 6013
5 电容 22P 2049
6 电阻器 20KB VR1
7 三极管 BA1 Q301

最后sheet2表中得到的结果如下:
A列 B列 C列 D列
1 电阻 1K 3108
2 电阻 33K 3004
3 电阻器 20KB VR1
展开
 我来答
绿衣人敲门
推荐于2017-09-14 · 知道合伙人软件行家
绿衣人敲门
知道合伙人软件行家
采纳数:18765 获赞数:63767
毕业于西北大学计算机网络技术专业,现在在西安电力学院进行网络推广维护工作!

向TA提问 私信TA
展开全部
方法:
1、对表格进行筛选操作,按要指定条件的列筛选,筛选出符合条件的数据。
2、选中筛选结果区域。
3、按F5或CTRL+G快捷键,调出定位对话框。
4、点击定位条件,选择可见单元格,单击确定。
5、这时再进行复制操作即可。
6、在EXCEL中,要对筛选结果进行其他操作,都可以使用此方法,先对筛选结果选中。
soft580
推荐于2017-10-08 · TA获得超过743个赞
知道小有建树答主
回答量:357
采纳率:0%
帮助的人:420万
展开全部
在sheet2工作表中插入以下VBA代码:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i, j, k As Long
If Target.Address <> "$A$1" Or IsEmpty(Target) Then Exit Sub
Range("A3:D65536").ClearContents
i = Worksheets("Sheet1").Range("B65536").End(xlUp).Row
If i = 1 Then i = 2
st = Target.Value
k = 3
With Worksheets("Sheet1")
For j = 2 To i
If VBA.InStr(1, .Cells(j, 2), st, vbTextCompare) > 0 Then
Cells(k, 1) = .Cells(j, 1)
Cells(k, 2) = .Cells(j, 2)
Cells(k, 3) = .Cells(j, 3)
Cells(k, 4) = .Cells(j, 4)
k = k + 1
End If
Next
End With
End Sub

以上代码实现在 sheet2 的 A1 中输入字符后会自动去 sheet1 中找相符的行填入 sheet2 第三行开始的行。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式