Liittäminen suodatettuun tietojoukkoon - Excel-vinkkejä

Joe kysyy, onko olemassa tapa tehdä suodatettu liittotoiminto Excelissä.

Oletetaan, että sinulla on 1000 tietuetta Sheet1: llä. Suodatat kyseisen tietojoukon näyttämään sinulle vain tietueet, joiden ProdID = Z. Valitse tietojoukko ja liitä Taulukko2: een. Kauniisti, Excel tuo vain näkyvät tietueet, joten sinulla on vierekkäinen soluyksikkö. Ehkä teet joitain muutoksia näihin tietueisiin, ja sinun on nyt liitettävä se takaisin alkuperäiseen tietojoukkoon. Excel EI tarjoa mitään helppoa tapaa tehdä tämä. Tämän videon makro auttaa prosessia. Nauhoitin Learn Excel Podcast -jakson 977, jossa on makro tämän toiminnan helpottamiseksi. Täältä löydät videon ja koodin, jota käytetään Excel-työkirjassa.

Katso video

kopioi tämä koodi

Säädin videon koodia hieman. Oletetaan, että kopioit otsikkorivin ja suodatetut tietueet Taulukosta1 Taulukkoon2:

Sub PasteBack() ' Assumes the Filterered Sheet1 is active Set DataToCopy = Sheet2.Range("A1").CurrentRegion n = 2 ' index for range to copy from Sheet2 one row at a time, skipping headers For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row ' row 1 is header If Not Rows(i).Hidden Then DataToCopy.Offset(n - 1).Resize(1).Copy Cells(i, 1) n = n + 1 If n> DataToCopy.Rows.Count Then Exit Sub End If Next i End Sub

Ratkaisu ilman makroja

Ensimmäisen videon esittämisen jälkeen Gary lähetti uuden ratkaisun käyttämällä Liitä ohita aihioita. Katso video täältä :.

Mielenkiintoisia artikkeleita...