vba 自动筛选后,将其中的某一列复制到另一张sheet的一列中,该怎么做?
sheet1AB1客户地区2甲深圳3已宁波sheet2空表现在的问题是,如果sheet1中通过VBA可以自动筛选出深圳地区的客户,则现在所需要实现的是,只将sheet1中...
sheet 1
A B
1客户 地区
2 甲 深圳
3 已 宁波
sheet2 空表
现在的问题是,如果sheet1中通过VBA可以自动筛选出深圳地区的客户,则现在所需要实现的是,只将sheet1中筛选出的客户名字(即sheet1中的A列)复制到sheet2中A列,该怎样编辑VBA语言,我现在一粘贴就把sheet1中所有筛选后的信息都复制了,我只需要客户的名字,跪求各位大侠的解答
换个问法,如果我先将自动筛选的结果复制到空表,再将复制好的表格中一列,进行复制粘贴,该用什么样的代码,怎样选定一整列? 展开
A B
1客户 地区
2 甲 深圳
3 已 宁波
sheet2 空表
现在的问题是,如果sheet1中通过VBA可以自动筛选出深圳地区的客户,则现在所需要实现的是,只将sheet1中筛选出的客户名字(即sheet1中的A列)复制到sheet2中A列,该怎样编辑VBA语言,我现在一粘贴就把sheet1中所有筛选后的信息都复制了,我只需要客户的名字,跪求各位大侠的解答
换个问法,如果我先将自动筛选的结果复制到空表,再将复制好的表格中一列,进行复制粘贴,该用什么样的代码,怎样选定一整列? 展开
6个回答
展开全部
在sheet2里面插入一个textbox1,一个CommandButton1用于筛选地区
Sub CopyCustom()
For i = 2 To Sheet1.Cells(65536, 1).End(xlUp).Row '循环表1各行
If Sheet1.Cells(i, 2) = Sheet2.TextBox1.Text Then '找到符合筛选条件的行
Sheet2.Cells(Sheet2.Cells(65536, 1).End(xlUp).Row + 1, 1) = Sheet1.Cells(i, 1) '把符合条件的行的客户名称给表2未A列的最后一个未使用的单元格赋值
'Exit For '如果只要筛选一位,可以用此跳出循环,当然数据表应该不止一个
End If
Next i
End Sub
'-------------------------------------------------------------------------------------------
Private Sub CommandButton1_Click()
Call CopyCustom '这只是一个调出按钮
End Sub
如果你想换种做法可以再问我,我这里只是就你问的把客户名字调出来。
Sub CopyCustom()
For i = 2 To Sheet1.Cells(65536, 1).End(xlUp).Row '循环表1各行
If Sheet1.Cells(i, 2) = Sheet2.TextBox1.Text Then '找到符合筛选条件的行
Sheet2.Cells(Sheet2.Cells(65536, 1).End(xlUp).Row + 1, 1) = Sheet1.Cells(i, 1) '把符合条件的行的客户名称给表2未A列的最后一个未使用的单元格赋值
'Exit For '如果只要筛选一位,可以用此跳出循环,当然数据表应该不止一个
End If
Next i
End Sub
'-------------------------------------------------------------------------------------------
Private Sub CommandButton1_Click()
Call CopyCustom '这只是一个调出按钮
End Sub
如果你想换种做法可以再问我,我这里只是就你问的把客户名字调出来。
展开全部
这么简单的操作
录制一个宏就行了
复制时,只复制筛选后的A列
即可
Sub Macro1()
Columns("B:B").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="深圳"
Columns("A:A").Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Paste
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用vba吧。
筛选后,选中B列
然后,ctrl+G
定位条件,可见单元格
再复制
然后进入sheet2,粘贴
筛选后,选中B列
然后,ctrl+G
定位条件,可见单元格
再复制
然后进入sheet2,粘贴
追问
谢谢你的回答,如果必须使用VBA的话,您有相应的代码吗?
追答
这个简单了。
你先录制宏,
然后,执行一下我上面的操作。
做完以后停止录制,即可。
你的几个问题,全可以用录制宏来找到代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
选定整列的VBA代码:
Range("A:A").Select
然后就复制语句:
Selection.Copy
Range("A:A").Select
然后就复制语句:
Selection.Copy
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sheet1.UsedRange.Range("A:A").Copy Sheet2.[a1]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |