0

美好的一天,有人可以帮助我。我有 2 个电子表格,第二个电子表格的复制单元格与第一个电子表格完全相同。但我的问题是,在第一个电子表格上我有空白行,因为发票是按日期顺序排列的,而不是每天的发票。我用于增值税目的的第二张纸并希望我的选择以列表形式出现,以便只为簿记员打印一页。我有发票的地方,例如。在第一个电子表格的 10 日、15 日和 20 日,“我可以使用什么公式让 3 张发票出现在第二个电子表格中,例如在第 1、2、3 行中,一个在另一个的正下方。

我在 20 年前完成了 VBA,除了这个我一生都无法弄清楚之外,一切都做得很好。提前感谢任何可以帮助我的人。

4

1 回答 1

0

突出显示,按 F5,单击“特殊”,根据它是硬编码数据还是公式数据,选择“常量”或“公式”,然后点击确定。这会将所有空白单元格排除在选择之外,然后照常复制粘贴到另一个工作簿。如果你在 vba 中这样做,这在对象模型中都是可用的

Selection.SpecialCells(xlCellTypeConstants, 23).Select
Selection.SpecialCells(xlCellTypeFormulas, 23).Select

更新:我忘记了 excel 中的错误(设计缺陷?),当您尝试复制非矩形选择时,它会出错。请参见此处(文章较旧,但似乎适用于 2013 年):

http://support.microsoft.com/kb/100715

我相信互联网上有可用的宏来处理这个问题,其中一个是here

http://www.extendoffice.com/documents/excel/799-excel-copy-multiple-selections.html

一个快速的解决方法是采取相反的方法:使用“特殊”选择来选择空白,然后删除它们。然后在剩余的单元格周围选择一个矩形。

选择空白的 VBA 调用是

Selection.SpecialCells(xlCellTypeBlanks, 23).Select
于 2013-08-11T15:37:34.650 回答