请写一段VBA代码,帮我解决以下问题:我有一个exl表格,表格中有多个sheet,请在所有sheet中检索“清开灵”,并统计“清开灵”出现的次数,将结果写入到sheet2中。
时间: 2024-02-10 16:10:53 浏览: 65
Exl2Sql:Excel 到 SQL-开源
以下是可以实现你要求的VBA代码:
```
Sub CountQKL()
Dim ws As Worksheet
Dim count As Long
Dim summaryWs As Worksheet
Set summaryWs = ThisWorkbook.Sheets("Sheet2") '将结果写入到Sheet2
summaryWs.Cells.ClearContents '清空原有数据
For Each ws In ThisWorkbook.Worksheets '循环遍历所有工作表
count = Application.WorksheetFunction.CountIf(ws.UsedRange, "清开灵") '统计“清开灵”出现的次数
summaryWs.Range("A" & summaryWs.Rows.Count).End(xlUp).Offset(1, 0).Value = ws.Name '将工作表名称写入结果表格中
summaryWs.Range("B" & summaryWs.Rows.Count).End(xlUp).Offset(1, 0).Value = count '将“清开灵”出现的次数写入结果表格中
Next ws
End Sub
```
你可以将以上代码复制到VBA编辑器中,然后运行这个宏,就可以在Sheet2中看到所有工作表中“清开灵”出现的次数了。
阅读全文