我有一个包含两张工作表的Excel文件。包含格式化报告的工作表A和包含原始数据的工作表B。
在工作表B上有一个表,可以有1到n行。此表也显示在图纸A(派生)的页面上。
如果工作表B中的表格包含的行数超过工作表A中的表格所能容纳的行数,我如何在工作表A上自动创建新页面?
发布于 2015-04-28 21:19:30
我不太确定你为什么要这样做,但是像这样的事情可能会奏效:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
dim ws as worksheet
dim tbl as listobject
dim MaxRows as integer
set ws = thisworkbook.sheets("SheetB") 'Change with worksheet name
set tbl = ws.listobjects(1)
MaxRows = 22 'Number of Max Rows in table
if tbl.listrows.count > MaxRows
' Add code to add new 'page on Sheet A'
end if
End Sub
这将在SheetB中的任何更改时运行(将此代码放在工作表模块中),然后在运行任何代码之前计算工作表B上的表中条目的数量,如果它超过了最大数量。
https://stackoverflow.com/questions/29911257
复制相似问题