Potřeboval bych excelový list /popř. všechny listy/ uložit pouze jako hodnoty. Tzn. že v buňkách, kde jsou nějaké vzorce, aby se uložily pouze vypočtené hodnoty. Nejlepší by na to bylo asi nějaké makro, které uloží vše jako nový excelový sešit pouze s hodnotami.
Díky všem
Uložení pouze hodnot nikoliv vzorců v Excelu
- mmmartin
- Moderátor
-
Elite Level 10
- Příspěvky: 9639
- Registrován: srpen 04
- Bydliště: Praha
- Pohlaví:
- Stav:
Offline
Na makro si netroufám, ale manuálně to není problém: zdrojový list načteš do schránky - např kombinací ctrl+a ctrl+c - přejdeš na buňku A1 listu, na který chceš vložit hodnoty a pak v menu vybereš Úpravy/Vložit jinak, v nabídnutém dialogu vybereš Hodnoty a dáš OK. Takto zkopírované hodnoty se ale neaktualizují při změně zdrojových dat.
mmmartin píše:Na makro si netroufám, ale manuálně to není problém: zdrojový list načteš do schránky - např kombinací ctrl+a ctrl+c - přejdeš na buňku A1 listu, na který chceš vložit hodnoty a pak v menu vybereš Úpravy/Vložit jinak, v nabídnutém dialogu vybereš Hodnoty a dáš OK. Takto zkopírované hodnoty se ale neaktualizují při změně zdrojových dat.
Tady o te moznosti vim, ale potreboval bych trochu elegnatnejsi reseni... v excelovem sesitu je asi 50 listu a rad bych to prevadel hromadne....
- Jan Pašek
- Tvůrce článků
-
Level 6.5
- Příspěvky: 3701
- Registrován: leden 06
- Bydliště: Plzeň
- Pohlaví:
- Stav:
Offline
A co použít záznam makra s funkcí relativně Uděláš si makro pro jeden list s přepnutím na list následující Pak již jen mačkáš přidělenou klávesovou zkratku. Mám ale pocit ze to nebude fungovat ve dvou souborech.
Jendův rozcestník (Odkazy, které jsem měl dříve v podpisu najdete v mém rozcestníku.) Jendovy novinky - Co je pro Vás odemne nového Pokud potřebujete mermomocí vědět na čem páchám PC kriminalitu sestavy jsou v profilu.
Rich: V tom tvém případě si převede všechny vzorce na hodnoty přímo v sešitě a tím pádem už se ke vzorcům zpětně nedostane.
Já bych to radši řešil kopií do jiného sešitu, ať se může ještě vrátit k původnímu sešitu a vzorcům.
Já bych to radši řešil kopií do jiného sešitu, ať se může ještě vrátit k původnímu sešitu a vzorcům.
Kód: Vybrat vše
Sub prevod()
Set Zdroj = ActiveWorkbook
Set Cil = Workbooks.Add
For Each List In Zdroj.Worksheets
List.Copy After:=Cil.Sheets(Worksheets.Count)
ActiveSheet.Cells.Copy
ActiveSheet.Range("A1").PasteSpecial Paste:=xlPasteValues
ActiveSheet.Range("A1").Select
Application.CutCopyMode = False
Next List
End Sub
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
mikel píše:Rich: V tom tvém případě si převede všechny vzorce na hodnoty přímo v sešitě a tím pádem už se ke vzorcům zpětně nedostane.
Já bych to radši řešil kopií do jiného sešitu, ať se může ještě vrátit k původnímu sešitu a vzorcům.Kód: Vybrat vše
Sub prevod()
Set Zdroj = ActiveWorkbook
Set Cil = Workbooks.Add
For Each List In Zdroj.Worksheets
List.Copy After:=Cil.Sheets(Worksheets.Count)
ActiveSheet.Cells.Copy
ActiveSheet.Range("A1").PasteSpecial Paste:=xlPasteValues
ActiveSheet.Range("A1").Select
Application.CutCopyMode = False
Next List
End Sub
Pokud jsou v sešitu sloučené buňky, následující příkazy hlásí chybu.
ActiveSheet.Cells.Copy
ActiveSheet.Range("A1").PasteSpecial Paste:=xlPasteValues
To je pravda. V tvém případě jsi zapomněl na jednu podstatnou věc:
...
For Each Lst In ActiveWorkbook.Worksheets
Lst.Activate
Range("A1:F100").Select ' zde si dopln jak potrebujes
...
určitě víš, jaký bude výsledek, když zůstane stále na prvním listě. A dynamickou oblast taky nepodchytíš, pokud pro jistotu neurčíš oblast A1:IV65536.
Ale o to nejde. Jde o to, že na dálku a bez konkrétních informací můžeš udělat pouze nějaké makro, ale bez konkrétního příkladu ho nikdy neodladíš. Takže pokud by výsledek nebyl takový, jak cerjar očekává, ozval by se.
...
For Each Lst In ActiveWorkbook.Worksheets
Lst.Activate
Range("A1:F100").Select ' zde si dopln jak potrebujes
...
určitě víš, jaký bude výsledek, když zůstane stále na prvním listě. A dynamickou oblast taky nepodchytíš, pokud pro jistotu neurčíš oblast A1:IV65536.
Ale o to nejde. Jde o to, že na dálku a bez konkrétních informací můžeš udělat pouze nějaké makro, ale bez konkrétního příkladu ho nikdy neodladíš. Takže pokud by výsledek nebyl takový, jak cerjar očekává, ozval by se.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 1
- 3317
-
od Grimm
Zobrazit poslední příspěvek
28 čer 2024 23:30
-
- 0
- 2629
-
od LukM
Zobrazit poslední příspěvek
19 říj 2024 14:03
-
-
automaticke nastaveni velikosti komentare v Excelu
od Mikik Block » 04 zář 2024 15:17 » v Kancelářské balíky - 0
- 3166
-
od Mikik Block
Zobrazit poslední příspěvek
04 zář 2024 15:17
-
-
- 6
- 4634
-
od 4Lift
Zobrazit poslední příspěvek
10 úno 2025 21:09
-
-
Náhodné zamrznutí PC, řešením je pouze tvrdý restart.
od Sipsisipi » 21 srp 2024 19:12 » v Problémy s hardwarem - 10
- 4288
-
od Sipsisipi
Zobrazit poslední příspěvek
25 srp 2024 10:37
-
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti