我在一个excel工作表中,有差不多400行数据,其中在F列的数据中,有的单元格包含有“建议”2个字,我现在在工作表内设置了一个控件按钮,想设置一段代码,实现点击按钮后,就将工作表内F列包含“建议”的行提出来,然后隐藏不包含“建议”字段的其他行。该操作类似excel的筛选功能,但使用筛选的话,会在指定行留下一个筛选的箭头,这个是我不想要的。
我想实现从工作表第4行到使用的最后一行之间进行查找。
求代码!
第ä¸æ¥ï¼åå¤æ°æ®è¡¨
ä¸å
±éè¦ä¸¤ä¸ªå·¥ä½è¡¨ï¼æåå§æ°æ®çå·¥ä½è¡¨èµ·å为â1âï¼æ£ç´¢ç¨ç表起å为â2âã
ä»æ ¼å¼ä¸è¯´ï¼è¿ä¸¤ä¸ªè¡¨æ¯ç¸åçï¼æä¸åçåªæ¯å¨ç¬¬ä¸è¡ã
æ示ï¼åå§æ°æ®è¡¨æ ¼çå
容ä¸ä¸å®åæ¬ä¾å®å
¨ä¸æ ·ï¼åªè¦æ£ç´¢è¡¨ä¸åå§æ°æ®è¡¨çæ ¼å¼ä¸æ ·å°±è¡äºã
è¡¨æ ¼å好åï¼å°±å¯ä»¥ç¼è¾VBA代ç äºã
第äºæ¥ï¼å¶åVBA代ç
éä¸â2â表ï¼å¨ä¸é¢æ ç¾åä¸ç¹é¼ æ å³é®ï¼éâæ¥ç代ç âï¼è°åºè¿ä¸ªè¡¨2çVBAçªå£
æ代ç ç²è´´è¿å»
代ç å¦ä¸ï¼
Dim aa As String 'å符å
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False 'ç¦æ¢å±å¹æ´æ°
b = [c65536].End(xlUp).Row
If b < 3 Then b = 3
Sheets("2").Range(Cells(3, 1), Cells(b, 11)).ClearContents 'å
æ¸
é¤æ¥è¯¢åºå
s = Sheets("1").Range("j1") 'æ°é(使ç¨COUNTAç¡®å®æ°æ®è®°å½è¡æ°ï¼
aa = Range("b1") 'è¦æ¥è¯¢çå·ç ï¼å®æ´æåå ä½ï¼
x1 = 3 'ä»ç¬¬ä¸è¡å¼å§
For x = 3 To s + 3
n = Len(aa)
w = Sheets("1").Cells(x, 3) 'ä»è¡¨1ä¸åä¸ä¸ªCåå·ç èµå¼ç»åéw
If Len(w) >= n And Left(w, n) = aa Then 'å¤æè¿ä¸ªå·ç æ¯å¦ä¸è¦æ£ç´¢çç¸ç¬¦
For j = 1 To 10
Cells(x1, j) = Sheets("1").Cells(x, j) 'å°ç¸ç¬¦å·ç çç¸å
³å
容æååºæ¥
Next j
x1 = x1 + 1
End If
Next
Range("b1").Select
Application.ScreenUpdating = True 'å
许å±å¹æ´æ°
End Sub
å¨ä»£ç ä¸å·²ç»åäºæ³¨éï¼æVBAåºç¡çæåå¾å®¹æç解ã
第ä¸æ¥ï¼å®æéªæ¶
æåå°±å¯ä»¥æ£éªææäºï¼å¨è¡¨2çB1åå
æ ¼ä¸è¾å
¥â860âå车åï¼å°±æææåä¸ä¸ªæ°åç¸ç¬¦ççµè¯å·ç æ£ç´¢åºæ¥äºã
åæ ·ï¼å¨B1æ ¼ä¸è¾å
¥æ°åâ8âï¼å°±è½æææ第ä¸ä½æ¯8ççµè¯å·ç æ£ç´¢åºæ¥ã
è¿ä¸ªç¤ºä¾è¡¨æ ¼å®æäºä¸ä¸ªç®åçæ£ç´¢ï¼ä¸ºäºä»ç»æ¹ä¾¿ï¼åªåäºå¯¹ä¸åæ°æ®çæ£ç´¢ï¼æå ´è¶£çæåå¯ä»¥å¨æ¤åºç¡ä¸å¢å å¤åæ£ç´¢ï¼å®ç¨æ§å°±æ´å¼ºäºã