2012-05-28 79 views

回答

1

看到這個link

這一定會幫助你...

讓我知道,如果你有任何問題。

+0

不錯的鏈接,非常感謝 – shawpnik

+0

它完成了,謝謝。 – shawpnik

+1

不是問題。樂於幫助 :) –

0

假設你的指數是列A,輸入B列,並輸出列C.將此代碼添加到一個模塊:

Option Explicit 

Sub RemoveBlanks() 
    Dim i As Integer 
    Dim LastRow As Long 
    LastRow = Range("B" & ActiveSheet.Rows.Count).End(xlUp).Row 

    Range("B2:B" & LastRow).Copy Range("C2") 
    ' Start at the bottom of the range and work your way up 
    For i = LastRow To 2 Step -1 
     If Len(Range("C" & i)) = 0 Then Range("C" & i).Delete shift:=xlUp 
    Next 
End Sub 

也可以使用陣列式,以實現相同的結果。

給你的輸入範圍(一個不需要的空白)一個名字。我打電話給我的nrWithBlanks。這個公式粘貼到輸出列的所有行:因爲它是一個數組公式

=IFERROR(INDEX(nrWithBlanks,SMALL((IF(LEN(nrWithBlanks),ROW(INDIRECT("1:"&ROWS(nrWithBlanks))))),ROW(A2)),1),"") 

,你需要按CTRL + SHIFT +粘貼到細胞之後按Enter鍵。

+0

非常感謝您的幫助。 – shawpnik

0

如果您不關心數據的順序。您可以對範圍進行排序以排除數據中的空白

+0

謝謝,我的情況下需要維護數據順序。 – shawpnik

相關問題