Vkládání do filtrovaného souboru dat - tipy pro Excel

Joe se zeptá, jestli existuje způsob, jak provést operaci filtrovaného vložení v aplikaci Excel.

Řekněme, že máte 1000 záznamů na Sheet1. Filtrujete tuto datovou sadu tak, aby vám zobrazovala pouze záznamy s ProdID = Z. Vyberte datovou sadu a vložte ji do List2. Excel pěkně přináší pouze viditelné záznamy, takže máte souvislý blok buněk. Možná provedete nějaké transformace těchto záznamů a nyní je musíte vložit zpět do původní datové sady. Excel nenabízí žádný snadný způsob, jak toho dosáhnout. Makro v tomto videu pomůže s procesem. Zaznamenal jsem epizodu Learn Excel Podcast 977, která ukazuje makro, které mi s touto akcí pomůže. Zde najdete video a kód použitý v sešitu aplikace Excel.

Sledovat video

Zkopírujte tento kód

Trochu jsem upravil kód z videa. To předpokládá, že zkopírujete řádek záhlaví a filtrované záznamy z List1 do List2:

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

Řešení bez maker

Po odvysílání prvního videa poslal Gary nové řešení pomocí Paste Skip Blanks. Podívejte se na toto video zde :.

Zajímavé články...