我正在尝试复制和粘贴这些行 - 当时在VBA中有一行
Name Col1 Col 2 Col 3
Tom LTD - 617 LTD - 2236 LTD - 964
David LTD - 289 LTD - 045 LTD - 055
Peter LTD - 112 LTD - 687 LTD - 899
我需要为同一列中的每一行转置和粘贴值,如此
Tom
LTD - 617
LTD - 2236
LTD - 964
VBA中是否有可以帮助我实现此目的的循环?
我需要VBA版本如何执行此操作,因为我正在自动化此工作表,我的示例更复杂但我想要做的事情可以用上面的简单示例来说明。任何人都可以建议一个VBA解决方案 - 我需要了解你如何循环一行,然后将它们输出到不同的位置和位置。
答案 0 :(得分:0)
如果您的源表与您的问题建议一样对称,如果这是一次性转换,我会使用公式来安排转置。如果其中任何一个都是不真实的,那么对于一个不充分的问题它将是-1。
我假设您的源表在单元格A1中开始,没有什么可以阻止我使用F列。
将以下内容粘贴到单元格F2:F5
中=INDIRECT(ADDRESS((ROW(F2)-2)/4+2,1,4))
=INDIRECT(ADDRESS((ROW(F3)-3)/4+2,2,4))
=INDIRECT(ADDRESS((ROW(F4)-4)/4+2,3,4))
=INDIRECT(ADDRESS((ROW(F5)-5)/4+2,4,4))
这将将单元格F2:F5设置为第2行的值。根据需要将此4个单元格的块(重复4个单元格的块,而不是单元格F5)复制。您搜索的值将作为公式列在列中。
使用复制和粘贴特殊值,将您搜索的值设为值。