vba - 在excel中创建宏
问题描述
请帮助我创建一个宏,该宏在工作簿中的多个工作表中搜索特定列,并显示该列中值的计数,并显示在具有工作表名称和计数的新工作表中。
我有 3 张名为 A、B 和 C 的工作表。我尝试了以下代码,但它不是根据列标题名称计算的。
我有像
公司 公司 公司 ABC ABC ABC DEF GHI
JKL
结果应该看起来像
工作表名称 计数 A 1 B 3 C 2
Sub Click() Dim sh As Worksheet, ws As Worksheet, LstRw As Long, x, s As String Dim rng1 As Range
Set ws = Sheets.Add
ws.Name = "Report"
s = "A"
For Each sh In Sheets
If sh.Name <> ws.Name Then
With sh
x = Application.WorksheetFunction.CountA(.Range("A:A"))
With ws
LstRw = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
.Cells(LstRw, 1) = sh.Name
.Cells(LstRw, 2) = x
End With
End With
End If
Next sh
结束子
谢谢
解决方案
使用宏记录器记录宏,Excel 根据您的操作生成 VBA 代码,然后您可以根据需要对其进行修改。
看:
MSDN:录制宏以生成代码,以及,
MSDN:修订录制的 Visual Basic 宏。
在尝试使用 VBA 自动执行任务之前, 最好对Excel “非常熟悉” 。
这些是 VBA 教程,被推荐为非常好/彻底/准确:
VBA 最重要的文档来自“官方”来源:
推荐阅读
- python - 如何将实时数据从一个 Python 脚本传输到另一个?
- javascript - 如何从JS中的数组中删除特定元素
- php - PHP 会话:$_SESSION 在 Mac 上本地运行时为空
- directed-acyclic-graphs - How can I encode a rule tree of multiple depths in Dhall?
- c# - 通过 id 获取时,EF Core 和 Automapper 未获取所有数据
- r - 计算 R 中每组的平均、最大、最小观察数
- html - 将 DIV 插入父 DIV 时排序错误
- python - 如何使用烧瓶显示多个文件
- android - 蓝牙耳机按钮上的自定义操作
- c# - 按照 Microsoft 教程构建 POST 请求但不起作用