gpt4 book ai didi

vba - 动态调整表大小到最后一行?

转载 作者:行者123 更新时间:2023-12-03 00:47:33 25 4
gpt4 key购买 nike

我有一个表,我想在 VBA 中动态调整其大小。我当前的代码是这样的:

Sub resizedata()
Dim ws As Worksheet
Dim ob As ListObject
Dim Lrow1 As Long

Lrow1 = Sheets("Sheet4").Cells(Rows.Count, "J").End(xlUp).Row
Set ws = ActiveWorkbook.Worksheets("Sheet4")
Set ob = ws.ListObjects("Table28")

ob.Resize ob.Range.Resize(Lrow1)

End Sub

不过我想在此基础上添加一个条件...

  1. 表格大小应调整到 J 列中第一个 0 之前。

例如:

+-------+--------+-------+
|Date(I)|Hours(J)| Sal(K)|
+-------+--------+-------+
| Aug | 150000 | 12356 |
| Sep | 82547 | 8755 |
| Oct | 92857 | 98765 |
| Nov | 10057 | 45321 |
| Dec | 0 | 0 |
| Jan | 0 | 0 |
+-------+--------+-------+

上表的最后一行应该是 11 月行,因为 12 月是 J 列中的第一个 0 值。

任何人都可以协助修改我现有的代码吗?

最佳答案

类似于:

With Sheets("Sheet4")

Lrow1 = .Cells(.Rows.Count, "J").End(xlUp).Row
Do While .Cells(Lrow1, "J").Value=0
Lrow1 = Lrow1 - 1
Loop

End With

关于vba - 动态调整表大小到最后一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44011763/

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