2014-09-22 40 views
1
A    B C  D  E F G H 
ACC'L SCIENCE 0.5 TRUE 557092 87 87  
ACC'L SCIENCE 0.5 TRUE 557092   88 88 
ART    0.5 TRUE 557092 98 98  
ENGLISH 6  0.5 TRUE 557092 88 88  
ENGLISH 6  0.5 TRUE 557092   87 87 
GIRLS PE  0.5 TRUE 557092 100 100  
GIRLS PE  0.5 TRUE 557092   94 94 

我在excel文件中有上述7行。我試圖檢查連續的列是否有相同的值,它們應該合併成一行。我試圖公式將創建下列數據在Excel中合併行

A    B C  D  E F G H 
ACC'L SCIENCE 0.5 TRUE 557092 87 87 88 88 
ART    0.5 TRUE 557092 98 98  
ENGLISH 6  0.5 TRUE 557092 88 88 87 87 
GIRLS PE  0.5 TRUE 557092 100 100 94 94 

僞代碼看起來是這樣的:

=IF(A1 = A2),--> G1,H1 = G2, H2 

我不得不那麼也佔線跳過 - 喜歡美術課。如果使用這樣的'IF'語句來檢查約束是否是一種有效的方法?

IF的問題似乎是,當我真的想要它合併時它返回布爾值。有沒有一種時尚的非VBA方式來做到這一點?我發現了一些具有類似數據的良好VBA選項 - 但似乎有一種方法不必將其分解出來。我知道MATCH和INDEX,但還沒有想出一種方法來合併它們。

我試過一個數組MATCH - INDEX公式,但它返回奇數值 - 我插入一個新列以免混淆數據 - 試圖基本上將數字合併成一行。

MATCH($A$2:$A$7, INDEX(E2 & F2, $G$2:$G$7 & $H$2:$H$7)) 

我很新的excel,雖然我已經做了一些python。任何指針在正確的方向,我將不勝感激。

+0

從我所知道的情況來看,刪除重複項會刪除該行,但我需要將數據保留在行的末尾並基本合併它。如果我在列A上刪除重複項,是不是會完全刪除第2,5和7行中的所有數據? – Joe 2014-09-22 19:00:51

+0

你寫道:「我有一個excel文件中的上述7列,我試圖檢查連續的列是否有相同的值,它們應該合併成一行。」我認爲你的意思是「我有一個excel文件中的上述7 **行**,我試圖檢查連續的**行**是否具有相同的值,它們應該合併成一行。」 – 2014-09-22 19:06:55

+0

哪些列應該檢查相同的值?只有列A或列A,B,C和D? – 2014-09-22 19:08:38

回答

1

我覺得有可能是更容易的方法來做到這一點比這個,但我的第一個想法是兩步過程:

在細胞I1,比方說,把下面的公式:

=IFERROR(INDEX(A$1:A$7,MATCH(1,(--($A$1:$A$7=$A1))*(--(A$1:A$7<>"")),0)),"") 

CTRL + 移位輸入它作爲一個陣列式 + 輸入

然後,您可以根據需要將其向下拖動。

(這個公式基本上是說,只要在A列中的值相等,在第一個非空行的值拉與它一起。)

現在,您可以複製,粘貼>值然後使用Data>Remove Duplicates刪除重複的行。

就像我說的,t可能不是最優雅的解決方案,但它應該做的伎倆!

希望幫助!

UPDATE:


由於需要兩列A和d匹配的評論,試試這個公式:

=IFERROR(INDEX(A$1:A$7,MATCH(1,(--($A$1:$A$7=$A1))*(--($D$1:$D$7=$D1))*(--(A$1:A$7<>"")),0)),"") 
+1

中解釋得更好 - 我應該更好地解釋 - 但我不僅需要檢查對A列也是D列 - 我試着重新排列這個公式無效 - 它很接近,但是它覆蓋了第2-7行,第1行的內容是 – Joe 2014-09-22 20:24:26

+0

@Joe,所以列A和D比賽? ...我現在更新公式... – 2014-09-22 20:39:56

+0

感謝您的幫助 - 雖然它們不匹配。列A是班級名稱,列D是學生人數 - 完全不同的領域 - 只是一個額外的檢查,以確保不僅班級相同,而且學生也是一樣。 – Joe 2014-09-22 21:13:37

1

如果d,然後A,小計分類用小小的擺弄可能適合。對於A中的每個更改,在E,F,G和H上使用和。篩選並選擇A包含... Total。用B中的=Bx填充第一個可見的非標題行,其中x比當前行號小1。複製到D和下來以適應。 Unfilter,選擇全部複製,在頂部粘貼特殊值。選擇A不包含... Total並刪除除標題外的所有可見內容。將ColumnA中的Total替換爲無。

+1

非常酷的主意! +1 – 2014-09-22 20:43:38