Excel 复制多张工作表,如果单元格()>;0

Excel 复制多张工作表,如果单元格()>;0,excel,vba,Excel,Vba,我需要一点帮助。这是我第一次在这里写作。。。通常你是我的灵感来源,但现在我找不到任何东西来帮助我 我有一个36页的Excel文件。我想创建一个宏来复制每张图纸并使其成为一个不同的文件。条件是单元格(X)的值为>0。我对if-then有问题。。。从第一张纸跳到最后一张纸。。。或者只保存第一张图纸而忽略另一张。我在这里只写了两页的脚本,因为它只在第一页起作用。谢谢你的帮助 Sub-Macro3() 表格(“A”)。选择 如果范围(“G4”)值>0,则 表格(“A”)。副本 ActiveSheet.R

我需要一点帮助。这是我第一次在这里写作。。。通常你是我的灵感来源,但现在我找不到任何东西来帮助我

我有一个36页的Excel文件。我想创建一个宏来复制每张图纸并使其成为一个不同的文件。条件是单元格(X)的值为
>0
。我对
if-then
有问题。。。从第一张纸跳到最后一张纸。。。或者只保存第一张图纸而忽略另一张。我在这里只写了两页的脚本,因为它只在第一页起作用。谢谢你的帮助

Sub-Macro3()
表格(“A”)。选择
如果范围(“G4”)值>0,则
表格(“A”)。副本
ActiveSheet.Range(“$B$12:$L$22”)。自动筛选字段:=1,标准1:=”
范围(“B15:B22”)。选择
Selection.SpecialCells(xlCellTypeVisible)。选择
范围(“C15”)。选择
范围(选择,选择。结束(xlDown))。选择
Selection.SpecialCells(xlCellTypeVisible)。选择
Selection.EntireRow.Delete
范围(“B12”)。选择
ActiveSheet.ShowAllData
ChDir“C:\Users\Desktop\POSM”
ActiveWorkbook.SaveAs(范围(“D4”).Value)_
FileFormat:=xlOpenXMLWorkbook,CreateBackup:=False
活动窗口,关闭
如果结束
表格(“B”)。选择
如果范围(“G4”)值>0,则
表格(“B”)。副本
ActiveSheet.Range(“$B$12:$L$22”)。自动筛选字段:=1,标准1:=”
范围(“B15:B22”)。选择
Selection.SpecialCells(xlCellTypeVisible)。选择
范围(“C15”)。选择
范围(选择,选择。结束(xlDown))。选择
Selection.SpecialCells(xlCellTypeVisible)。选择
Selection.EntireRow.Delete
范围(“B12”)。选择
ActiveSheet.ShowAllData
ChDir“C:\Users\Desktop\POSM”
ActiveWorkbook.SaveAs(范围(“D4”).Value)_
FileFormat:=xlOpenXMLWorkbook,CreateBackup:=False
活动窗口,关闭
MsgBox(“完成”)
如果结束
端接头
您无缘无故地保留,并且依赖于在所有这些选择之后可能不一定是您所认为的

您无需执行以下任何操作:

Dim w As工作表
Dim w_复制为工作表
对于此工作簿中的每个w。工作表
如果w.Range(“G4”)值大于0,则
w、 抄袭
设置w_copy=ActiveSheet
带w_拷贝
.Range(“B12:L22”)。自动筛选字段:=1,标准1:=”
.Range(.Range(“C15”),.Range(“C15”).End(xlDown)).SpecialCells(xlCellTypeVisible)。EntireRow.Delete
.ShowAllData
.Parent.SaveAs“C:\Users\Desktop\POSM\”和.Range(“D4”)。值,文件格式:=xlOpenXMLWorkbook,CreateBackup:=False
.Parent.Close错误
以
如果结束
下一个

如果您访问并访问,您可能会明白为什么会发生这种情况。