2015-03-03 107 views
0

你好,我试图删除列B中成员值超过1000的所有行。 我尝试了这一步一步,试图先摆脱B单元格中的所有不必要的数据,然后只留下行成员。 我注意到有5行,成员行是第6行。我搜索了几个小时,但我仍然没有得到它如何删除第5条线。你能帮我一下吗?我确定它很容易,但我无法找到它。简单从单元格删除线?

我有这样的:

Option Explicit 
Sub Delete5TextLines() 
Dim c As Range, s 
Application.ScreenUpdating = False 
For Each c In Range("B1", Range("B" & Rows.Count).End(xlUp)) 

********** 

Next c 
Application.ScreenUpdating = True 
End Sub 

这是.csv文件: http://we.tl/vNcyfg9Wus

enter image description here

+0

我下载示例时没有任何反应。 – Davesexcel 2015-03-03 12:15:04

+0

@Davesexcel你好。我知道它不工作。您下载的文件仅包含需要处理的原始数据。 – 2015-03-03 12:17:11

+0

我告诉你我无法下载你的文件,当我点击下载时没有任何反应。 – Davesexcel 2015-03-03 12:19:03

回答

2

好吧,这不是很优雅,但我想出的第一件事,那有点作品。

使用这个公式删除您的大量文字(“成员”)

假设您的文本的最后一个字是A1:

=LEFT(A1,FIND("|",SUBSTITUTE(A1," ","|",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))-1) 

这个公式让你一个文本的最后一个字在这种情况下成员(因为我们删除单词“成员)

假设你把上面的公式在A2

=IF(ISERR(FIND(" ",A2)),"",RIGHT(A2,LEN(A2)-FIND("*",SUBSTITUTE(A2," ","*",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))))) 
数量

现在你应该已经提取了成员的数量。如果这个值是< 5000,你可以用VBA循环看起来应该像这样的删除行:

Sub deleteRowsAfterMembers 

Dim i as Integer 

i = ThisWorkbook.Sheets(1).Rows.Count 

While i > 0 Do 

If (CellWithMemberCount).Value < 5000 Then 

ThisWorkbook.Sheets(1).Rows(i).Delete 

End If 

i = i-1 

Loop 

End Sub 

那会(希望)做到这一点。

+0

我发现这个:http://www.ozgrid.com/forum/showthread.php?t=171305它删除列的第二行。我只是不知道如何去适应它去掉第一个并运行它5次 – 2015-03-03 13:50:14

+0

这应该删除第一行http://www.mrexcel.com/forum/excel-questions/565574-remove-first-line -inside-cell.html但它不适用于我-_- – 2015-03-03 13:51:32

+0

你究竟想要删除什么?一排?与第25行一样,还是要删除单元格中的文本行? 如果你想删除前5行(!),你可以写(不是很优雅)表(1)。行(1)。删除5次。 – 2015-03-03 13:59:06

2

每当使用删除整个行,你应该在底部开始的范围,并向上运行循环。

EDIT#1:

假设有一个小区内的至少五个线和线通过人权委员会分隔(10)那么这将去除第一5行:

Sub marine() 
    ary = Split(ActiveCell.Value, Chr(10)) 
    t = "" 
    For i = 5 To UBound(ary) 
     t = t & Chr(10) & ary(i) 
    Next i 

    If Len(t) > 1 Then 
     t = Mid(t, 2) 
    Else 
     t = "" 
    End If 
    ActiveCell.Value = t 
End Sub 
+0

感谢您的支持,但我需要删除单元格内的前5行:) – 2015-03-03 13:52:11

+0

@AlexStanese请参阅我的**编辑#1 ** – 2015-03-03 14:17:23

+0

谢谢soooo much !!!它的工作完美。你能不能告诉我如何在所有B细胞的循环中实现这一点?我尝试这样:http:// pastie。组织/ 9996015,但它似乎进入了一个infineite循环becausr excel是crusing。 – 2015-03-03 14:56:30