Excel精英培训网

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

[已解决]关于查询问题

[复制链接]
发表于 2012-3-14 19:18 | 显示全部楼层 |阅读模式
见表格,查询问题,用VBA谢谢!
最佳答案
2012-3-14 19:48
A22输入年份,后面的几列自动填写对应数据,几列都行,原数据有几列就会填写几列
查询问题.zip (9.5 KB, 下载次数: 20)

查询问题.rar

2.01 KB, 下载次数: 8

发表于 2012-3-14 19:46 | 显示全部楼层
代码在sheet1内
    更改A22的值,就会自动变化

查询问题.rar

6.67 KB, 下载次数: 3

回复

使用道具 举报

发表于 2012-3-14 19:47 | 显示全部楼层
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2.     Dim ar, br(1 To 3), st
  3.     Dim i As Byte
  4.     If Target.Address <> "$A$22" Then Exit Sub
  5.     Range("b22:d22").ClearContents
  6.     ar = Range("a3:d18")
  7.     st = Target.Value
  8.     For i = 1 To UBound(ar)
  9.         If ar(i, 1) = st Then
  10.             br(1) = ar(i, 2)
  11.             br(2) = ar(i, 3)
  12.             br(3) = ar(i, 4)
  13.             Range("b22:d22") = br
  14.             Exit Sub
  15.         End If
  16.     Next
  17. End Sub
复制代码
查询问题.rar (6.89 KB, 下载次数: 5)
回复

使用道具 举报

发表于 2012-3-14 19:48 | 显示全部楼层    本楼为最佳答案   
A22输入年份,后面的几列自动填写对应数据,几列都行,原数据有几列就会填写几列
查询问题.zip (9.5 KB, 下载次数: 20)
回复

使用道具 举报

发表于 2012-3-14 19:55 | 显示全部楼层
既然做了,还是上传一下吧!

查询问题.zip

8.95 KB, 下载次数: 6

回复

使用道具 举报

 楼主| 发表于 2012-3-14 20:02 | 显示全部楼层
谢谢各位2楼,3楼两位代码不错
fjmxwrs 代码最佳,
谢谢5楼,
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 22:47 , Processed in 0.277451 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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