Skip i'r prif gynnwys

Sut i hidlo rhestr a dileu'r gweddill rhesi cudd neu weladwy yn Excel?

Ar gyfer rhestr wedi'i hidlo, efallai y bydd angen i chi ddileu'r rhesi cudd neu weladwy er mwyn cadw'r data defnyddiol yn unig. Yn yr erthygl hon, byddwn yn dangos i chi ddulliau o ddileu'r gweddill rhesi cudd neu weladwy o restr wedi'i hidlo yn Excel.

Dileu rhesi cudd mewn taflen waith weithredol gyda chod VBA
Dileu rhesi gweladwy o restr wedi'i hidlo gan ddewis yr holl gelloedd gweladwy
Dileu yn hawdd rhesi cudd neu weladwy o restr wedi'i hidlo gyda Kutools ar gyfer Excel


Dileu rhesi cudd mewn taflen waith weithredol gyda chod VBA

Bydd yr adran hon yn dangos cod VBA i chi i ddileu rhesi cudd ar ddalen weithredol. Gwnewch fel a ganlyn.

1. Ysgogi'r daflen waith sydd ei hangen arnoch i ddileu rhesi cudd, gwasgwch Alt + F11 allweddi ar yr un pryd i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.

2. Yn ffenestr Microsoft Visual Basic for Applications, cliciwch Mewnosod > Modiwlau. Ac yna copïwch a gludwch y cod VBA isod i mewn i ffenestr y Modiwl.

Cod VBA: Dileu rhesi cudd

Sub RemoveHiddenRows()
	Dim xRow As Range
	Dim xRg As Range
	Dim xRows As Range
	On Error Resume Next
	Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
	If xRows Is Nothing Then Exit Sub
		For Each xRow In xRows.Columns(1).Cells
			If xRow.EntireRow.Hidden Then
				If xRg Is Nothing Then
					Set xRg = xRow
				Else
					Set xRg = Union(xRg, xRow)
				End If
			End If
		Next
		If Not xRg Is Nothing Then
			MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
			xRg.EntireRow.Delete
		Else
			MsgBox "No hidden rows found", , "Kutools for Excel"
		End If
	End Sub

3. Gwasgwch y F5 allwedd i redeg y cod. Os oes rhesi cudd ar y ddalen weithredol, ar ôl rhedeg y cod, bydd blwch deialog yn ymddangos i ddweud wrthych faint o resi cudd sydd wedi'u dileu. Cliciwch y OK botwm i ddileu'r rhesi cudd. Gweler y screenshot:

dileu dileu gorffwys 1

Fel arall, fe gewch y blwch deialog canlynol ar ôl rhedeg y cod.

dileu dileu gorffwys 1

Nodyn: mae'r cod VBA uchod nid yn unig yn gallu dileu rhesi cudd o restr wedi'i hidlo, ond hefyd dileu rhesi cudd rydych chi wedi'u cuddio â llaw o'r blaen.


Dileu rhesi gweladwy o restr wedi'i hidlo gan ddewis yr holl nodwedd celloedd gweladwy

Ar gyfer dileu rhesi gweladwy o restr wedi'i hidlo, gwnewch fel a ganlyn.

1. Dewiswch yr holl resi sydd wedi'u hidlo allan, a gwasgwch F5 allweddol i agor y Ewch i blwch deialog, yna cliciwch ar y Arbennig botwm. Gweler y screenshot:

dileu dileu gorffwys 1

2. Yn y Ewch i Arbennig blwch deialog, gwiriwch y Celloedd gweladwy yn unig opsiwn, ac yna cliciwch ar y OK botwm.

dileu dileu gorffwys 1

3. Nawr bod pob rhes weladwy wedi'i dewis, cliciwch ar y dde ar y dewis, ac yna cliciwch Delete Rows.

dileu dileu gorffwys 1

Hyd yn hyn, mae'r holl resi gweladwy yn cael eu dileu o'r rhestr wedi'i hidlo.


Dileu yn hawdd rhesi cudd neu weladwy o restr wedi'i hidlo gyda Kutools ar gyfer Excel

Efallai nad y ddau ddull uchod yw'r atebion dymuniad i lawer o ddefnyddwyr Excel, yma rydym yn cyflwyno teclyn defnyddiol i chi. Efo'r Dileu Rhesi a Cholofnau Cudd (Gweladwy) cyfleustodau Kutools ar gyfer Excel, gallwch chi ddileu rhesi cudd yn hawdd mewn ystod / taflenni dethol, taflen weithredol neu'r holl daflenni gwaith yn Excel.

Cyn gwneud cais Kutools ar gyfer Excel, os gwelwch yn dda ei lawrlwytho a'i osod yn gyntaf.

1. Os ydych chi am ddileu rhesi cudd neu weladwy o restr wedi'i hidlo yn unig, dewiswch yr ystod wedi'i hidlo â llaw, ac yna cliciwch Kutools > Dileu > Dileu Rhesi a Cholofnau Cudd (Gweladwy). Gweler y screenshot:

2. Yn y Dileu Rhesi a Cholofn Cudd (Gweladwy) blwch deialog, cadwch y Mewn amrediad dethol a ddewiswyd yn y Edrych mewn rhestr ostwng (gallwch ddewis opsiynau eraill yn ôl yr angen), gwiriwch y Rhesi opsiwn yn y Dileu math adran, ac yn yr Math manwl adran, gwirio Rhesi gweladwy or Rhesi cudd opsiwn yn ôl yr angen. Ac yn olaf cliciwch y OK botwm.

3. Yna mae blwch deialog yn ymddangos i ddweud wrthych faint o resi sydd wedi'u dileu, cliciwch y OK botwm.

  Os ydych chi am gael treial am ddim (30 diwrnod) o'r cyfleustodau hwn, cliciwch i'w lawrlwytho, ac yna ewch i gymhwyso'r llawdriniaeth yn ôl y camau uchod.


Dileu rhesi cudd neu weladwy o restr wedi'i hidlo gyda Kutools ar gyfer Excel

Offer Cynhyrchiant Swyddfa Gorau

🤖 Kutools AI Aide: Chwyldro dadansoddi data yn seiliedig ar: Cyflawniad Deallus   |  Cynhyrchu Cod  |  Creu Fformiwlâu Personol  |  Dadansoddi Data a Chynhyrchu Siartiau  |  Invoke Swyddogaethau Kutools...
Nodweddion Poblogaidd: Darganfod, Amlygu neu Adnabod Dyblygiadau   |  Dileu Rhesi Gwag   |  Cyfuno Colofnau neu Gelloedd heb Colli Data   |   Rownd heb Fformiwla ...
Super-edrych: VLookup Meini Prawf Lluosog    VLookup Gwerth Lluosog  |   VLookup Ar Draws Taflenni Lluosog   |   Edrych Niwlog ....
Rhestr gwympo Uwch: Creu Rhestr Gollwng yn Gyflym   |  Rhestr Gollwng Dibynnol   |  Rhestr Gollwng Aml-ddewis ....
Rheolwr Colofn: Ychwanegu Nifer Penodol o Golofnau  |  Symud Colofnau  |  Toglo Statws Gwelededd Colofnau Cudd  |  Cymharwch Ystodau a Cholofnau ...
Nodweddion dan Sylw: Ffocws ar y Grid   |  Golwg Dylunio   |   Bar Fformiwla Mawr    Rheolwr Llyfr Gwaith a Thaflen   |  Llyfrgell Adnoddau (Testun Auto)   |  Dewiswr Dyddiad   |  Cyfuno Taflenni Gwaith   |  Amgryptio/Dadgryptio Celloedd    Anfon E-byst trwy Restr   |  Hidlo Super   |   Hidlo Arbennig (hidlo mewn print trwm/italig/strikethrough...) ...
15 Set Offer Gorau12 Testun offer (Ychwanegu Testun, Dileu Cymeriadau,...)   |   50 + Siart Mathau (Siart Gantt,...)   |   40+ Ymarferol Fformiwlâu (Cyfrifwch oedran yn seiliedig ar ben-blwydd,...)   |   19 mewnosod offer (Mewnosod Cod QR, Mewnosod Llun o'r Llwybr,...)   |   12 Trosi offer (Rhifau i Eiriau, Trosi arian cyfred,...)   |   7 Uno a Hollti offer (Rhesi Cyfuno Uwch, Celloedd Hollt,...)   |   ... a mwy

Supercharge Eich Sgiliau Excel gyda Kutools ar gyfer Excel, a Phrofiad Effeithlonrwydd Fel Erioed Erioed. Kutools ar gyfer Excel Yn Cynnig Dros 300 o Nodweddion Uwch i Hybu Cynhyrchiant ac Arbed Amser.  Cliciwch Yma i Gael Y Nodwedd Sydd Ei Angen Y Mwyaf...

Disgrifiad


Mae Office Tab yn dod â rhyngwyneb Tabbed i Office, ac yn Gwneud Eich Gwaith yn Haws o lawer

  • Galluogi golygu a darllen tabbed yn Word, Excel, PowerPoint, Cyhoeddwr, Mynediad, Visio a Phrosiect.
  • Agor a chreu dogfennau lluosog mewn tabiau newydd o'r un ffenestr, yn hytrach nag mewn ffenestri newydd.
  • Yn cynyddu eich cynhyrchiant 50%, ac yn lleihau cannoedd o gliciau llygoden i chi bob dydd!
Comments (7)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi this VBA code is awesome useful.
This comment was minimized by the moderator on the site
Thanks for the info. This has been instructive. Please is there a way to filter and delete for specific numbers in rows of up to 1 million? Can the code above be modified to do so?
This comment was minimized by the moderator on the site
Hi,
Sorry did not test the code in such huge row data. Maybe you can make a copy of your data and test if the code can work.
This comment was minimized by the moderator on the site
VBA code to Delete hidden rows worked perfectly with no fiddling. THANK YOU!!
This comment was minimized by the moderator on the site
Feedback re: the macro for hidden row deletions - this takes too long to run on 900k rows to be useful. 2+ hours on an OC'd Threadripper 1950X and still running (had to end task). Any way to optimize it to use multiple cores or is this a VBA limitation?
This comment was minimized by the moderator on the site
Hi,
The code has been optimized. Please have a try. Thank you for your comment.

Sub RemoveHiddenRows()
Dim xFlag As Boolean
Dim xStr, xTemp As String
Dim xDiv, xMod As Long
Dim I, xCount, xRows As Long
Dim xRg, xCell, xDRg As Range
Dim xArr() As String
On Error Resume Next
Application.ScreenUpdating = False
Application.EnableEvents = False
Set xRg = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
If xRg Is Nothing Then Exit Sub
xRows = xRg.Rows.Count
Set xRg = xRg(1)
xFlag = True
xTemp = ""
xCount = 0
For I = 1 To xRows
Set xCell = xRg.Offset(I - 1, 0)
Do While xFlag
If xCell.EntireRow.Hidden Then
xStr = xCell.Address
xFlag = False
Else
GoTo Ctn
End If
Loop
If xCell.EntireRow.Hidden Then
xTemp = xStr & "," & xCell.Address
End If
If Len(xTemp) > 171 Then
xCount = xCount + 1
ReDim Preserve xArr(1 To xCount)
xArr(xCount) = xStr
xStr = xCell.Address
Else
xStr = xTemp
End If
Ctn:
Next
xCount = xCount + 1
ReDim Preserve xArr(1 To xCount)
xArr(xCount) = xStr
For I = xCount To 1 Step -1
If I = 1 Then
xStr = Mid(xArr(I), InStr(xArr(I), ",") + 1, Len(xArr(I)) - InStr(xArr(I), ","))
Else
xStr = xArr(I)
End If
If xDRg Is Nothing Then
Set xDRg = Range(xStr)
Else
Set xDRg = Union(xDRg, Range(xStr))
End If
If (Len(xDRg.Address) >= 244) Or (xCount = 1) Then
xDRg.EntireRow.Delete
Set xDRg = Nothing
End If
Next
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
This comment was minimized by the moderator on the site
Awesome, thank you! Will review at my next opportunity / need for this and reply back.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations