VBA Tanggalin ang Mga Rows | Mga halimbawa upang Tanggalin ang mga Excel Rows gamit ang VBA

Excel VBA Tanggalin ang Hilera

Karaniwan sa excel worksheet, mayroon kaming dalawang magkakaibang pamamaraan upang tanggalin ang mga hilera na isang pintas sa keyboard at isa pa sa pamamagitan ng paggamit ng right-click at insert na paraan ngunit sa VBA kailangan naming gamitin ang tanggalin ang command at worksheet na pahayag upang tanggalin ang anumang mga row nang magkasama, ang trick upang ito ay kung kailangan nating tanggalin ang isang solong hilera nagbibigay kami ng isang solong sanggunian ngunit para sa maraming mga haligi ay nagbibigay kami ng maraming mga sanggunian sa hilera.

Gamit ang VBA Delete Row Method, maaari naming tanggalin ang lahat ng mga blangko na hilera, maaari naming tanggalin ang hilera batay sa halaga ng cell, maaari din naming tanggalin ang buong hilera kung ang alinman sa mga cell ay blangko.

Sa artikulong ito, tatalakayin namin ang pamamaraan na "VBA Delete Row". Panatilihin ang iyong sarili na abala para sa susunod na 15 hanggang 20 minuto upang malaman ang tungkol sa konsepto.

Paano Tanggalin ang Hilera?

Maaari mong i-download ang VBA Delete Delete Excel Template na ito - VBA Delete Delete Excel Excel Template

Halimbawa # 1

Sa VBA kailangan nating banggitin ang row na tinatanggal namin.

Code:

 Sub DeleteRow_Example1 () Mga Cell (1, 1) Tapusin ang Sub 

Ang mga cell (1, 1) ay nangangahulugang unang hilera ng unang haligi hal. A1 cell. Pagkatapos ay ginagamit namin ang pamamaraang "tanggalin".

Code:

 Sub DeleteRow_Example1 () Mga Cell (1, 1). Tanggalin ang End Sub 

Ngayon tatanggalin nito ang unang cell. Ang lahat ng mga tamang halaga sa kanang bahagi ay maglilipat ng isang cell sa kaliwa.

Halimbawa # 2

Kung nais mong tanggalin ang buong hilera kailangan naming gamitin ang pag-aari na "EntireRow" pagkatapos ay kailangan naming gamitin ang pamamaraang "tanggalin" upang tanggalin ang buong hilera ng cell na aming napili.

Code:

 Sub DeleteRow_Example2 () Mga Cell (1, 1) .EntireRow. Tanggalin ang End Sub 

Halimbawa, naglagay ako ng ilang mga character sa isang excel sheet tulad ng sumusunod.

Ngayon kung tatakbo ko ang code na ito tatanggalin ang buong hilera hindi isang solong cell.

Halimbawa # 3

Maaari naming tanggalin ang hilera sa pamamagitan ng paggamit ng maraming mga paraan. Sa halimbawa sa itaas, tinanggal namin ang hilera sa pamamagitan ng paggamit ng pag-aari ng CELLS, makikita namin ngayon kung paano magtanggal sa pamamagitan ng paggamit ng ROWS na pag-aari.

Ngayon kailangan nating banggitin kung ano ang hilera na kailangan nating tanggalin, sabihin nating kailangan nating tanggalin ang ika-5 hilera.

Ngayon gamitin ang pag-aari na "EntireRow" na pag-aari.

Matapos mapili ang pag-aari kung ano ang kailangan nating gawin ibig sabihin, pamamaraan. Kailangan naming tanggalin ang hilera.

Code:

 Sub DeleteRow_Example3 () Rows (5) .EntireRow. Tanggalin ang End Sub 

Kaya, tatanggalin ng code na ito ang ika-5 hilera.

Halimbawa # 4

Tanggalin ang Maramihang Mga Rows sa pamamagitan ng Paggamit ng Saklaw na Bagay

Paano namin tatanggalin ang maraming mga hilera?

Maaari naming gamitin ang bagay na VBA RANGE upang tanggalin ang higit sa isang hilera. Ipagpalagay na mayroon kang ilang mga halaga mula sa A1 hanggang A6 cells.

Ngayon nais kong tanggalin ang unang 5 mga hilera, kaya maaari kong sanggunian ang mga hilera na ito sa pamamagitan ng paggamit ng Range object bilang "Saklaw (" A1: A5 ")"

Code:

 Sub DeleteRow_Example4 () Saklaw ("A1: A5") End Sub 

Ngayon nais kong gamitin ang salitang "EntireRow" na pag-aari.

Code:

 Sub DeleteRow_Example4 () Saklaw ("A1: A5") .EntireRow End Sub 

Sa buong hilera na ito, kailangan naming isagawa ang pamamaraan ng pagtanggal, kaya't gamitin ang paraan ng Tanggalin.

Code:

 Sub DeleteRow_Example4 () Saklaw ("A1: A5"). EntireRow .Delete End Sub 

Ngayon tatanggalin nito ang napiling mga hilera.

Halimbawa # 5

Tanggalin ang Mga Rows Batay sa Halaga ng Cell

Magagamit din natin ito "EntireRow.Delete" paraan upang tanggalin ang hilera batay sa halaga ng cell sa VBA. Halimbawa, mayroon akong mga halagang Oo at Hindi mula sa cell A1 hanggang A10.

Ngayon kailangan naming tanggalin ang mga hilera na mayroong halagang "Hindi". Upang maisagawa ang gawaing ito kailangan naming gamitin ang pagpapaandar na "KUNG" sa mga loop upang tanggalin ang lahat ng mga hilera na may halaga ng "Hindi".

Sa ibaba ng code ay gagawin ang trabaho para sa amin.

Code:

 Sub DeleteRow_Example5 () Dim k Bilang Integer Para sa k = 10 hanggang 1 Hakbang -1 Kung Mga Cell (k, 1). Halaga = "Hindi" Pagkatapos Mga Cell (k, 1) .EntireRow. Alisin ang Pagtatapos Kung Susunod k End Sub 

Halimbawa # 6

Tanggalin ang Lahat ng mga Blangko na Mga Rows ng Cell

May mga sitwasyon kung saan kailangan naming tanggalin ang buong hilera kung ang alinman sa mga cell sa saklaw ay blangko. Halimbawa, mayroon akong hanay ng data sa ibaba.

Ang lahat ng mga may kulay na mga cell ay blangko, kaya kailangan kong tanggalin ang buong hilera. Maaari nating maisagawa ang gawaing ito sa dalawang hanay ng code. Nasa ibaba ang code.

Code:

 Sub DeleteRow_Example6 () Saklaw ("A1: F10"). SpecialCells (xlCellTypeBlanks) .EntireRow. Tanggalin ang End Sub 

Kilalanin nito ang mga blangko na cell sa saklaw na A1 hanggang F10. Kung ang anumang mga cell na natagpuan na blangko ay tatanggalin ang buong hilera.

Ang problema sa code na ito ay tatanggalin lamang nito ang hilera ng blangko na cell sa saklaw na A1 hanggang F10, ngunit kung ang anumang mga cell ay blangko sa anumang iba pang mga cell hindi ito tatanggalin. Kaya't isinasaisip ito na nagsulat ako ng isa pang code.

Code:

 Sub DeleteRow_Example7 () Dim RangeToDelete Bilang Saklaw na Pag-DeleteRange Bilang Saklaw na Itakda ang RangeToDelete = Application.InputBox ("Mangyaring piliin ang saklaw", "Blank Cells Rows Del Delete", Type: = 8) Itakda ang Pag-deleteRange = RangeToDelete RangeToDelete.SpecialCells (xlCellTypeBlanks) . Tanggalin ang End Sub 

Kapag pinatakbo mo muna ang code na ito hihilingin sa iyo na piliin ang saklaw na may isang kahon ng pag-input na lilitaw sa harap mo.

Matapos piliin ang saklaw na kailangan mong mag-click sa OK, tatanggalin nito ang lahat ng mga blangko na hilera ng cell sa napiling saklaw.