Excel数据查询还要用到VBA?高端查询了解一下

​excel使用技巧大全前面我们学习了怎样用宏功能来进行点击按钮跳转到目标工作表格上,并如何返回操作,还有朋友提到怎样将工作表隐藏。

Excel数据查询还要用到VBA?高端查询了解一下

透过文件选项高级,这个工作簿的显示选项可以设置为不显示,甚至连滚动条也可以隐藏起来。

现在咱们来学习一下怎样用宏来查询。

看下图,这是一份成绩表,里面有各个班级学生姓名,语文,英语,数学等三门成绩。

Excel数据查询还要用到VBA?高端查询了解一下

我们来通过下面的操作界面,输入学号来进行成绩的查询。

Excel数据查询还要用到VBA?高端查询了解一下

操作方法步骤如下:

Excel数据查询还要用到VBA?高端查询了解一下

插入按钮,命名查询右击按钮,指定并录制宏。选定成绩查询表B6:F6区间,内容清理。点击成绩表,选定A1单元格,ctrl+A,全选数据区域。点击高级筛选,我们只要选择条件区间,成绩查询表B2::3.点击确定通过第6步,已经筛选数据区域出来了,选择表中单元格C1,ctrl+shift+⬇,alt+;,复制,成绩查询表B6单元格,粘贴就可以了。选择表中单元格E1,ctrl+shift+⬇,ctrl+shift+➡,alt+;,复制,成绩查询表单元格C6,粘贴。查询表里选择第6行,进行删除。成绩表里清除筛选,任意选一个单无格点击。返回查询表。

录制停止,看看效果如何。虽然很慢,但对于一个什么都不懂的代码新手来说,还是一个非常好的练手的机会的。

上面的有些步骤有些小伙伴可能不知道怎么操作,但只要不断的去尝试就可以慢慢摸索出来。

下面我们再来打开VBE看看代码:

Sub 成绩查询()

Range("B6:F6").Select '选择单元格区域B6:F6

Selection.ClearContents '清空内容

Sheets("成绩表").Select '选择成绩表

Range("A1:H109").Select '选择数据区域

Application.CutCopyMode = False

Application.CutCopyMode = False

Application.CutCopyMode = False

Range("A1:H109").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _

Sheets("成绩查询").Range("B2:B3"), Unique:=False '根据条件高级筛选

Range("C1").Select '选择C1单元格

Range(Selection, Selection.End(xlDown)).Select '向下选择到最后一个数据

Selection.SpecialCells(xlCellTypeVisible).Select '选择可见单元格

Selection.Copy '复制

Sheets("成绩查询").Select '选择成绩查询表

Range("B6").Select '选择B6单元格

ActiveSheet.Paste '粘贴

Sheets("成绩表").Select '选择成绩表

Range("E1").Select '选择E1单元格

Range(Selection, Selection.End(xlToRight)).Select '向右选择到最后一个数据

Range(Selection, Selection.End(xlDown)).Select '向下选择到最后一个数据

Selection.SpecialCells(xlCellTypeVisible).Select '选择可见单元格

Application.CutCopyMode = False

Selection.Copy '复制

Sheets("成绩查询").Select

Range("C6").Select

ActiveSheet.Paste

Rows("6:6").Select

Application.CutCopyMode = False

Selection.Delete Shift:=xlUp '删除第六行

Range("G1").Select

Sheets("成绩表").Select

ActiveSheet.ShowAllData '清除筛选

Range("I1").Select

Sheets("成绩查询").Select

Range("H1").Select

End Sub

想学习代码但又不知道要怎么做的同学,通过录制宏,研究代码我觉得非常不错的哦。


分享到:


相關文章: