在Excel工作表中,有一列从另一工作表的一行中获取转置数据。
=TRANSPOSE(DATA!L170:CC170)
一个单元格数据的示例是0/300
,并且在整个列中都是一致的。
现在,我计划在第一列旁边添加2个新列以分别显示数字:
| 0/300 | 0 | 300 |
我希望第一列中有数据时,两列立即显示其值。
首先,我想尝试一下内置的文本转列功能。但是显然它不起作用,因为它仅检测公式而不是值。
还有其他公式可以满足我的要求吗?宏当然可以工作,但如果有的话,我也在寻找一种更简单的方法。
答案 0 :(得分:3)
这可能很难实现。我想,不可能。
为什么?因为 TRANSPOSE 函数返回一个非常精确大小的范围,而没有空间在其中添加新列。
解决方法:
在范围的末尾添加右侧的额外列。只需使用 LEFT / MID / RIGHT 功能从原始文本中获取片段。
如果范围的大小不变,并且内容在相同位置始终相同,则解决方法将起作用。如果您想要一个(高度自适应的)公式,则需要进入VBA for Excel,这将是“更丑陋的”。
编辑:我认为这是理所当然的,但是 @MitchellDeane 有一个好处:
请注意,如果输入大小不同,则可以在左侧函数中使用 Find := LEFT(A1,(FIND(“ /”,A1,1)-1))。例如0 / 300、0 / 3000、30 / 30000
答案 1 :(得分:1)