Uložení pouze hodnot nikoliv vzorců v Excelu

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

cerjar
nováček
Příspěvky: 8
Registrován: červen 07
Pohlaví: Nespecifikováno
Stav:
Offline

Uložení pouze hodnot nikoliv vzorců v Excelu

Příspěvekod cerjar » 01 čer 2007 14:54

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

Reklama
Uživatelský avatar
alias75
Level 4
Level 4
Příspěvky: 1173
Registrován: listopad 05
Bydliště: Liberec
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod alias75 » 01 čer 2007 15:17

Smaž si to druhé dubl téma.
Největší životní moudro je,vědět na koho se VYSRAT a před kým POSRAT .
_______________________________________
Když píšu bez diakritiky ta je to z:
G1 Android.Root. rom Canyogen 3.6.2 Theme HTC Hero 1.4.0; SonyEricsson XperiaX10; HTC Wilfire

Uživatelský avatar
mmmartin
Moderátor
Elite Level 10
Elite Level 10
Příspěvky: 9639
Registrován: srpen 04
Bydliště: Praha
Pohlaví: Muž
Stav:
Offline

Příspěvekod mmmartin » 01 čer 2007 21:28

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.

cerjar
nováček
Příspěvky: 8
Registrován: červen 07
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod cerjar » 04 čer 2007 13:44

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....

Uživatelský avatar
Jan Pašek
Tvůrce článků
Level 6.5
Level 6.5
Příspěvky: 3701
Registrován: leden 06
Bydliště: Plzeň
Pohlaví: Muž
Stav:
Offline

Příspěvekod Jan Pašek » 04 čer 2007 14:32

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
nováček
Příspěvky: 10
Registrován: květen 07
Bydliště: Praha
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod Rich » 06 čer 2007 11:06

Zkus tohle

Sub Preved_nahodnoty()
Dim Lst As Worksheet
Dim Bunka As Object
Application.ScreenUpdating = False
For Each Lst In ActiveWorkbook.Worksheets
Range("A1:F100").Select ' zde si dopln jak potrebujes
For Each Bunka In Selection
Bunka = Bunka.Value
Next Bunka
Next Lst
End Sub

Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 09 čer 2007 10:45

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
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!

Rich
nováček
Příspěvky: 10
Registrován: květen 07
Bydliště: Praha
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod Rich » 10 čer 2007 07:45

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

Uživatelský avatar
mikel
Level 5
Level 5
Příspěvky: 2298
Registrován: květen 05
Bydliště: Karviná
Pohlaví: Muž
Stav:
Offline

Příspěvekod mikel » 10 čer 2007 10:13

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.
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!

Rich
nováček
Příspěvky: 10
Registrován: květen 07
Bydliště: Praha
Pohlaví: Nespecifikováno
Stav:
Offline

Příspěvekod Rich » 10 čer 2007 16:17

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.

To by trvalo děsně dlouho


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Fičura v Excelu Příloha(y)
    od Rosta_Kolmix » 27 čer 2024 17:12 » v Kancelářské balíky
    1
    3317
    od Grimm Zobrazit poslední příspěvek
    28 čer 2024 23:30
  • ComboBox v Excelu kopírování Příloha(y)
    od LukM » 19 říj 2024 14:03 » v Kancelářské balíky
    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
  • League of Legends - vysoké ms pouze u her od riotu Příloha(y)
    od 4Lift » 04 úno 2025 21:41 » v Hry
    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

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti