根据数据创建工作表的表格

问题描述:

我有一个工作表“丢失”。这张表通常是来自我另一张表格“数据”的数据的一部分。根据数据创建工作表的表格

我希望将缺少的表格的内容总包裹在表格中。

我尝试下面的代码,

Sub LoopingThroughTable() 
     Sheets("Missing").ListObjects.Add(xlSrcRange, Range("$B$1:$D$16"), , xlYes).Name = _ 
      "Table19"  
     Sheets("Missing").ListObjects("Table19").TableStyle = "TableStyleLight12" 
    End Sub 

但与此代码,我需要经常提及的范围内。正如我之前所说,由于它是来自另一张表的数据,所以行长度可能会有所不同。

so eevrytime我从我的工作表中提取数据数据结果,我一直想绘制一个表格只为可用内容。

任何人都可以帮助,我该怎么做?

+0

然后用另一张纸的行数动态地设置范围? – UGP

+0

[行中最后一个不为空的单元格; Excel VBA](https://stackoverflow.com/questions/4872512/last-not-empty-cell-in-row-excel-vba) –

只要“缺失”工作表上的数据从B1开始,您可以为最后一行分配一个变量并使用该范围中的变量。 所以,你的代码将是这样的:

Sub LoopingThroughTable() 
    lastrow = Worksheets("Missing").Cells(Rows.Count, "B").End(xlUp).Row 
    Sheets("Missing").ListObjects.Add(xlSrcRange, Range("$B$1:$D$" & lastrow), , xlYes).Name = _ 
     "Table19"  
    Sheets("Missing").ListObjects("Table19").TableStyle = "TableStyleLight12" 
End Sub 

林还假定当前的代码工作。

+0

代码有效。但现在的问题是,桌子正在重叠。 – Jenny

+0

和每次我运行我的代码时,它说,表不能与另一个表重叠 – Jenny

+1

即使手动输入范围,也会发生这种情况?我还对“lastrow”变量进行了修正。 – ShanayL