2017-07-18 19 views
0

在Google表格中,運行數組以將原始數據轉換爲可讀格式。數組論壇從一行數據運行,並使用該數組將數據轉置爲多行。問題是,對於每一行額外的原始數據,我創建了五個新的轉置數據行,因此數組公式會中斷。試圖使數組公式適合添加數據行 - 任何想法都將不勝感激!Google表格 - 數組的新起點

https://docs.google.com/spreadsheets/d/16GOsH-EUDm2IeRgUgEQ8LBEltQASfJ8hR6GXh-pqNcM/edit?usp=sharing

+0

我看到我無意中編輯了原文。因此,我將其恢復到https://docs.google.com/spreadsheets/d/16GOsH-EUDm2IeRgUgEQ8LBEltQASfJ8hR6GXh-pqNcM/edit?usp=sharing –

+0

我的解決方案位於https://docs.google.com/spreadsheets/d/1t21BPoy3wJzDZxKV7KyZZMn5gqmPtddPX -6TWSFALGI/edit?usp =分享 –

+0

第二種方法位於https://docs.google.com/spreadsheets/d/1EZZjidQT8l1jOhIEMJUbgbqceK76iNArLsU7qifg4Aw/edit?usp=sharing –

回答

0

除了使用數組公式,則可以使用一個間接式和模算術和整數除法做到這一點。在k2中輸入公式=indirect("A"&(3+FLOOR((row()-2)/5))),它將從列A行3中獲取日期,直到您開始從第4行開始取得第7行。此公式可以被拖動並按照需要每5跳躍一行。 類似地,對於L2位置=indirect("B"&(3+FLOOR((row()-2)/5)))也可以將其拖放(複製)列。 對於列m,我們需要循環訪問c2,d2,e2,f2和g2,所以我們需要模(時鐘)算術。所以在m2中放置公式=indirect(char(CODE("C")+(mod(ROW()-2,5)))&"2")。最後,對於數量,我們需要執行列循環和每5個增量行,所以n2的公式爲=indirect(char(CODE("C")+(mod(ROW()-2,5)))&(3+FLOOR((row()-2)/5)))。這也可能會被抄襲。這應該做到這一點。肯定會有更優雅的方式。

我覺得不是更優雅,但保留了數組公式將是J2和向下拖動=3+floor((row()-2)/5),然後調整數組公式:={INDIRECT("A" & J2),INDIRECT("B"&J2),$C$2,INDIRECT("C"&J2);INDIRECT("A" & J2),INDIRECT("B"&J2),$D$2,INDIRECT("D"&J2);INDIRECT("A" & J2),INDIRECT("B"&J2),$E$2,INDIRECT("E"&J2);INDIRECT("A" & J2),INDIRECT("B"&J2),$F$2,INDIRECT("F"&J2);INDIRECT("A" & J2),INDIRECT("B"&J2),$G$2,INDIRECT("G"&J2)}可以複製到它下面的5行,其中J2的成爲J7的你正在處理下一個所需的行。