gpt4 book ai didi

vba - 删除另一个工作簿中的行

转载 作者:行者123 更新时间:2023-12-02 16:54:38 24 4
gpt4 key购买 nike

目标: 在一个 Excel 工作簿 (Default.xls) 中编写 VBA 脚本,以打开另一个具有变量名称 (NFL_*) 的 Excel 工作簿。然后,Default 中的 VBA 脚本将删除 NFL 中的几个多余的和合并单元格类型的行 (1:12)。然后它将计算 NFL 中填充的记录数(即行数)并删除最后一行(因为它不是真正的记录,它只是对其中一列求和的单元格)。

问题:我无法让后一部分工作 - 关于删除最后“行”的部分。如果脚本是在 NFL 工作簿本身中编写的,我可以让它工作,但我无法让它与默认工作簿中编写的脚本一起工作。不过 - 我可以在默认工作簿中获取 VBA 脚本来删除 NFL 工作簿中的第 1:12 行。为什么后面部分不起作用?

问题重述:默认工作簿有 1 个 VBA 脚本,该脚本对另一个工作簿执行 2 个不同的操作。 1 个操作 - 删除行 1:12 - 有效。第二个操作 - 删除最后一个“行” - 不起作用。

预先感谢您的帮助!

Sub Chop_FR_NFL()

'Set parameters
Dim wb As Excel.Workbook
Dim xlApp As Excel.Application

Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True

'Open latest NFL report and delete rows 1:12

Set wb = xlApp.Workbooks.Open("T:\xx\xx\xx\xx\xx\xx\xx\" & "NFL_*", True, False)

wb.Sheets(1).Rows("1:12").Delete

'Delete Total UPB Grand Total cell

Dim UPB As Long
UPB = Range("I" & Rows.Count).End(xlUp).Row
Range("I" & UPB).Select
Selection.Delete

wb.Save
wb.Close

End Sub

最佳答案

这应该有效:

'...
With wb.Sheets(1)
.Rows("1:12").Delete
.Cells(.Rows.Count, "I").End(xlUp).EntireRow.Delete
End With
'...

关于vba - 删除另一个工作簿中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29994057/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com