< návrat zpět

MS Excel


Téma: optimalizace makra - smycka rss

Zaslal/a 13.7.2012 11:16

Ahoj,
mam takovy problem. Mam dva excel soubory. V jednom mam Pivot Tabulku, ve druhem cca 10 samostatnych tabulek (stejne velkych).
Zadani je, menit postupne filter v Pivot tabulce a postupne nakopirovat prvnich deset radku (10x4 bunek) a vlozit je
postupne do tech deseti samostatnych tabulek.

Filtr v PIVOT tabulce je napr. pomeranc, jablko, banan .... (soubor excel_1)
Jednotlive tabulky maji pojmenovane oblasti, do kterych se kopiruje prave jako pomeranc_area, ale neni problem pojmenovat je jinak

Takhle jak je to napsane, tak mi to funguje, ale rad bych to trochu zoptimalizoval (nejake trochu univerzalnejsi reseni)
do smycky, abych pro kazdy druh ovoce nemusel ten samy kod kopirovat porad dokola.

Díky za tipy.

---------------------------------------------------------------------------------------------------

Windows(excel_1).Activate 'prepne do weekly reportu

ovoce = "pomeranc" 'vyber ovoce
ActiveSheet.PivotTables("PivotTable_TOP_TEN").PivotFields("ConfigCode").CurrentPage = ovoce 'nastaveni PIVOT tabulky na ovoce
ActiveSheet.PivotTables("PivotTable_TOP_TEN").PivotCache.Refresh 'refresh


Range("TOP_TEN_AREA").Select 'oznaci oblast TOP TEN v PIVOT tabulce pro dane ovoce
Application.CutCopyMode = False 'CTRL+C
Selection.Copy 'CTRL+C

Windows(excel_2).Activate 'prepne do weekly reportu
Range("pomeranc_area").Select 'oznaci oblast TOP_TEN pro dane ovoce
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False 'CTRL+P (pouze hodnoty)

-----------------------------------------------------------------------------------------------------

stop Uzamčeno - nelze přidávat nové příspěvky.

#009011
Jeza.m
teoreticky:

Dim ovoce_list() As String
Dim ovoce As String
ovoce_list = Split("pomeranc,jablko,banan,kiwi", ",")

For o = 0 To UBound(ovoce_list)
Windows(excel_1).Activate 'prepne do weekly reportu

ovoce = ovoce_list(o) 'vyber ovoce
ActiveSheet.PivotTables("PivotTable_TOP_TEN").PivotFields("ConfigCode").CurrentPage = ovoce 'nastaveni PIVOT tabulky na ovoce
ActiveSheet.PivotTables("PivotTable_TOP_TEN").PivotCache.Refresh 'refresh

Range("TOP_TEN_AREA").Select 'oznaci oblast TOP TEN v PIVOT tabulce pro dane ovoce
Application.CutCopyMode = False 'CTRL+C
Selection.Copy 'CTRL+C

Windows(excel_2).Activate 'prepne do weekly reportu
Range(ovoce & "_area").Select 'oznaci oblast TOP_TEN pro dane ovoce
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 'CTRL+P (pouze hodnoty)

Next

M@citovat
#009012
avatar
prakticky... funguje perfektne, diky !
admin pls. lockcitovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje