Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1613|回复: 6

[已解决]关于提取行内容的问题

[复制链接]
发表于 2016-11-19 10:54 | 显示全部楼层 |阅读模式
本帖最后由 Gy奔跑吧小不点 于 2016-11-19 12:21 编辑

在表3中输入行数,就能提取表2中相对应的行内容。详情请看附件,请求帮助,谢谢。
最佳答案
2016-11-19 12:09
  1. Sub 提取()
  2.     Dim arr, i%
  3.     arr = Sheet1.Range("a1").CurrentRegion
  4.     For i = 1 To [a65536].End(3).Row
  5.         Cells(i, "f").Resize(, 6) = Application.Index(arr, Cells(i, 1).Value)
  6.     Next
  7. End Sub
复制代码

那就直接循环吧

提取.rar

7.59 KB, 下载次数: 9

发表于 2016-11-19 11:11 | 显示全部楼层
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2.     If Target.Column = 1 Then
  3.         Dim arr, br
  4.         arr = Sheet1.Range("a1").CurrentRegion
  5.         br = Application.Index(arr, Target.Value)
  6.         Cells(Target.Row, "f").Resize(, 6) = br
  7.     End If
  8. End Sub
复制代码

提取.rar (11.65 KB, 下载次数: 2)
回复

使用道具 举报

 楼主| 发表于 2016-11-19 11:35 | 显示全部楼层

谢谢代码,但这组代码需要用手一个一个的输,能不能复制粘贴批量提取。
回复

使用道具 举报

发表于 2016-11-19 12:09 | 显示全部楼层    本楼为最佳答案   
  1. Sub 提取()
  2.     Dim arr, i%
  3.     arr = Sheet1.Range("a1").CurrentRegion
  4.     For i = 1 To [a65536].End(3).Row
  5.         Cells(i, "f").Resize(, 6) = Application.Index(arr, Cells(i, 1).Value)
  6.     Next
  7. End Sub
复制代码

那就直接循环吧
回复

使用道具 举报

 楼主| 发表于 2016-11-19 12:22 | 显示全部楼层

大爱,要的就是这个效果
回复

使用道具 举报

发表于 2016-11-19 13:39 | 显示全部楼层
Sub 提取()
'
' 提取 Macro
' 宏由 闫龙方 录制,时间: 2016-11-19
'
Dim i, iRow As Long


For i = 1 To Sheet2.Range("A65536").End(xlUp).Row
    iRow = Sheet2.Cells(i, 1)
    Sheet1.Range("A" & iRow, "F" & iRow).Copy Sheet2.Cells(i, 6)
Next
'
End Sub
回复

使用道具 举报

 楼主| 发表于 2016-11-19 17:22 | 显示全部楼层
jiahb2001 发表于 2016-11-19 13:39
Sub 提取()
'
' 提取 Macro

谢谢提供代码,赞一个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 20:42 , Processed in 0.305417 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表