這兩列看起來像這張圖片。如何在過濾另一個單元格時查看合併單元格的文本?
當我想只顯示其中包含一個字母「B」的細胞,我不能再看到文本「標題1」和「標題2」,這是在列B.通常可見
我想雖然在B列的單元格被合併,文本仍難免A3,分別A7。
那麼我怎樣才能同時過濾可見內容並保留合併的文本?在簡單的話,我想用字母「b」來過濾內容,我仍然希望看到在列B.
這兩列看起來像這張圖片。如何在過濾另一個單元格時查看合併單元格的文本?
當我想只顯示其中包含一個字母「B」的細胞,我不能再看到文本「標題1」和「標題2」,這是在列B.通常可見
我想雖然在B列的單元格被合併,文本仍難免A3,分別A7。
那麼我怎樣才能同時過濾可見內容並保留合併的文本?在簡單的話,我想用字母「b」來過濾內容,我仍然希望看到在列B.
您標記Excel,以便在這裏文本「稱號1/2」是Excel的解決方案:
您需要在合併的單元格中單擊該列並取消合併所有單元格。
然後,你需要把這個公式在列表的頂部,並用CTRL + SHIFT進入它+回車(這將它輸入數組公式):
=OFFSET(C3,MAX(IF(NOT(ISBLANK(C$3:C3)),ROW(C$3:C3),0))-ROW(C3),0)
然後,你需要自動填寫(這個函數看起來有點冗長,但我只是把它放到了在線上 - 這可能是一種更簡單的方法 - 但它會找到範圍中的最後一個非空單元格)。
我認爲OpenOffice的也有類似的功能,所以你應該能夠做同樣的或OpenOffice的類似的東西。
另外,如果你使用的是Excel,你可以點擊你想取消合併並運行此宏柱:
Sub UnMergeSelectedColumn()
Dim C As Range, CC As Range
Dim MA As Range, RepeatVal As Variant
For Each C In Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(xlUp))
If C.MergeCells = True Then
Set MA = C.MergeArea
If RepeatVal = "" Then RepeatVal = C.Value
MA.MergeCells = False
For Each CC In MA
CC.Value = RepeatVal
Next
End If
RepeatVal = ""
Next
End Sub
好運。
編輯:
我發現了一個非VBA的解決方案,將在兩個工作出色和OpenOffice和不要求您輸入它作爲一個數組公式(使用Ctrl + Shift + Enter鍵) :
=INDEX(B:B,ROUND(SUMPRODUCT(MAX((B$1:B1<>"")*(ROW(B$1:B1)))),0),1)
在開放式辦公室,我認爲你想這樣輸入:
=INDEX(B:B;ROUND(SUMPRODUCT(MAX((B$1:B2<>"")*(ROW(B$1:B2)))),0),1)
或也許是這樣的:
=INDEX(B:B;ROUND(SUMPRODUCT(MAX((B$1:B2<>"")*(ROW(B$1:B2)))),0))
你只需要自動填寫公式向下:
你的主要問題似乎是你已經過濾後留下的一個「空白行」領域。
刪除它,它會正常工作。
這似乎並不適用於我。我不斷收到Err:501。 – sandalone
你想在openoffice或excel中運行它嗎?它不會在openoffice中工作。 – Stepan1010
看我的編輯 - 我發現了一個解決方案,將在openoffice和Excel中工作,並不需要你輸入它作爲數組公式。 – Stepan1010