【发布时间】:2015-10-05 19:25:46
【问题描述】:
我编写了一个代码,在过滤了一些行后从其他工作表导入表格。我的问题是,当我超过此工作表中的表格行数时,它超过了表格。现在,我想知道是否有一种方法可以根据行数动态修改表格的大小。
Public Sub refresh()
Dim ws1 As Worksheet, ws2 As Worksheet, lr1 As Long, lRow As Long
Set ws1 = ThisWorkbook.Worksheets("Scénarios de menace")
Set ws2 = ThisWorkbook.Worksheets("Analyse de risque")
Application.Calculation = xlCalculationAutomatic
ws2.Range("B6:N" & ws2.Cells(ws2.Rows.Count, 2).End(xlUp).Row).ClearContents
lr1 = ws1.Cells(ws1.Rows.Count, 2).End(xlUp).Row
ws1.Range("A1:A" & lr1).AutoFilter Field:=1, Criteria1:="x"
ws1.Range("B3:N" & lr1).SpecialCells(xlCellTypeVisible).Copy
ws2.Range("B6").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
ws1.Range("A6:A" & lr1).AutoFilter
ws2.Activate: ws2.Cells(1, 1).Activate
End Sub
【问题讨论】:
-
查看Combine 2 Excel tables into one appending the data 中的
update_Table3伴随子过程。它不仅可以将表格扩展到新行,还可以删除缩小表格公式中遗留的#VALUE!错误。