excel - 在 Excel 中使用 vba 创建包含数据的多个工作表
问题描述
我有多张工作表,主工作表输入有我的原始数据,我有另一张工作表有我的过滤数据。我想为 Sheet2 A 列中的每个单元格值创建一个新工作表,并让它在工作表中填充与我在 Sheet1 中的单元格值匹配的行。
我下面的代码使用单元格值创建工作表,但仅填充第一张工作表。
Sub CreateSheetForValue()
Dim d As Range
Dim c As Range
Dim j As Integer
Dim Source As Worksheet
Dim Target As Worksheet
Dim Condition As Worksheet
Set Source = ActiveWorkbook.Worksheets("Sheet1")
Set Condition = ActiveWorkbook.Worksheets("Sheet2")
j = 2 'This will start copying data to Target sheet at row 2
For Each d In Condition.Range("A2:A21") 'specifiy condition
'create wroksheet for each value in condition
Set Target = Sheets.Add(after:=ActiveSheet)
'ActiveSheet.Name = d.Value
Target.Name = d.Value
Sheets("Input").Range("A1:G1").Copy Target.Range("A1")
For Each c In Source.Range("E2:E1893")
If Target.Name = d.Value And c.Value = d.Value Then
Source.Rows(c.Row).Copy Target.Rows(j)
j = j + 1
End If
Next c
Next d
End Sub
解决方案
推荐阅读
- python - 保存数据时不会调用模型的 Django clean 方法,而它适用于其他模型
- c++ - 我无法在代码块中编译 c++ 程序。它给了我错误
- git - 意外退出vim编辑器后如何恢复旧的提交消息?
- android - Android Studio 在使用 DataBinding 时无法在新活动中生成 Binding 类
- c++ - 什么是`std::set
::迭代器? - c - 如何修复 fwrite 不写入 C 中的文件?
- mysql - 我正在用旧的 xampp mysql 数据文件夹更新新的 xampp
- ios - 我运行时出现 Flutter 错误 - Flutter build ios - 尽管在 Debug 中运行良好
- swift - setFocusModeLocked 在 iphone 11 上不起作用
- cytoscape.js - 如何在 cytoscape.js 中向节点的数据字段添加属性?