之前我们有对知识库操作系统进行演示,今天我们具体的讲解如何通过VBA代码来实现对特定的关键词进行内容搜索,本文将对每一个操作进行详细的代码介绍。
操作讲解: 1、按照产品搜索:SZ01时,可以将所有涉及SZ01的产品进行搜索出来; 2、按照问题搜索:*死机*,采用通配符的方法,可以将所有涉及到死机类的问题汇总出来; 3、因为在平时查询内容的时候,我们查询的内容和对象并不是百分百匹配,所以需要在搜索文本的前后加上*星号,进行通配符查找。*代表的是包含的任意字符,?代表的是多少个字符。
1、问题提库是我们按照编号、产品、问题类型、问题、问题答案制作的问题汇总FAQ; 2、查询搜索页面为我们针对不同查询类型制作的查询页面。
代码一:按问题查询 Sub 按问题查询() ends = Sheet1.Columns(1).Find('*', , , , , searchdirection:=xlPrevious).Row '动态找到A列的最后一个单元格 Sheet2.Range('A7:E1048576').Clear '清除之前所有的筛选结果 For Each Rng In Sheet1.Range('D2:D' & ends) m = m 1 If Rng Like Sheet2.Range('B3') Then '如果条件成立,那么 k = k 1 Sheet1.Range('a' & m 1 & ':E' & m 1).Copy Sheet2.Range('a' & k 4) '将记录复制到另一个区域 End If Next End Sub 代码二:按产品查询 Sub 按产品查询() ends = Sheet1.Columns(1).Find('*', , , , , searchdirection:=xlPrevious).Row '动态找到A列的最后一个单元格 Sheet2.Range('A5:E1048576').Clear '清除之前所有的筛选结果 For Each Rng In Sheet1.Range('B2:B' & ends) m = m 1 If Rng Like Sheet2.Range('B2') Then '如果条件成立,那么 k = k 1 Sheet1.Range('a' & m 1 & ':E' & m 1).Copy Sheet2.Range('a' & k 4) '将记录复制到另一个区域 End If Next End Sub
Sub 清除() Sheet2.Range('A5:E1048576').Clear '清除之前所有的筛选结果 End Sub 有没有学习到如何制作了?如果还不理解的可以转发文章后留言领取原始素材。 |
|