Existuje několik různých způsobů vymazání v aplikaci Excel. Dnešní video ukazuje vliv různých možností Clear.
Sledovat video
- Jak vymazat ve VBA
- K dispozici je 7 různých metod
- .Clear vymaže všechno
- .ClearComments vymaže komentáře
- .ClearContents zachovává formátování a vymaže hodnoty a vzorce
- .ClearFormats vymaže formátování
- .ClearHyperlinks vymaže hypertextové odkazy
- .ClearNotes vymaže komentáře (Komentáře se dříve nazývaly Poznámky)
- .ClearOutline se zbaví skupin a skupin obrysů
- .SpecialCells lze použít k výběru pouze konstant nebo pouze vzorců
Přepis videa
Naučte se Excel z Podcastu, epizoda 2068: Způsoby čištění ve VBA.
Mám tu trochu tajemství, jeden komentář k jednomu z mých videí na YouTube od Rogera: Chci vymazat text v daném poli buněk, ale ne formátování. A Roger říká, že s .ClearContents vymaže vše v buňkách. Je možné vytvořit makro, které vymaže pouze text a vygeneruje další číslo faktury? Musíte tedy vymazat pouze text z buněk. A ve VBA existuje několik různých způsobů čištění. Dovolte mi přepnout sem na Alt + F11, kde se podíváme na všechny z nich. Takže existuje .Clear, který by měl vymazat všechno: ClearComments, ClearContents, ClearFormats, ClearHyperlinks, ClearNotes a ClearOutline.
Takže jsem zde vytvořil nějaká data a vidíte, že jdu do každého jednotlivého sloupce a používám různé metody VBA. Dobře, takže .Clear se všeho zbavil. .ClearComments, vidíte, že tady je komentář, který snad zmizí, jo. .ClearContent. Vidím, že jsem se nezbavil hranic ani vyplněných barev a trochu se k tomu vrátíme. ClearFormats opouští čísla, zbavuje se formátování. ClearHyperlinks, ahh, se měl hypertextového odkazu zbavit, ale nestalo se tak. Zajímavý. ClearNotes je jako jasné komentáře, kde byly naše komentáře v původní verzi nazývány poznámky, a poté se ClearOutline zbavil naší osnovy pro všechny řádky, dobře. To jsou tedy - to jsou možnosti, které máme.
A osobně se mi ClearContents líbí, protože ClearContents se zbaví čísel, ale ponechá formátování, dobře? Stačí napsat 1234, stisknout Ctrl + Enter a veškerý horní index, přeškrtnutí, barva výplně, formátování čísel, všechny tyto položky zůstanou. Takže podle mého názoru je ClearContents ten dobrý. Je to ten, který tam udržuje veškeré vaše formátování, všechny ohraničení, ale prostě se zbaví hodnoty. Takže jsem Rogerovou otázkou trochu zmatený, protože se zdá, že ClearContent by měl být tím, kdo dělá to, co dělá. Zajímalo by mě, jestli se Roger opravdu chce zbavit věcí, které nejsou vzorci. Dobře, takže tady budu dělat, ukázat vzorce s Ctrl a vážným přízvukem. A vidíte, že máme obsah, jsou to konstanty v B, C a G, ale pak vzorce v D, E a F.Zajímalo by mě, jestli se Roger pokouší zbavit se textu, ale nechat vzorce tam, dobře. A pokud je to situace, pak chceme jít o krok dále, v pořádku, kde specifikujeme celý rozsah B5 až G13. A než uděláme ClearContents, chceme říct .SpecialCells (xlCellTypeConstants). Jinými slovy, pokud jde o vzorec, nechte to tak. Když spustíme toto makro, uvidíte, že konstanty zmizí, ale všechny vzorce jsou stále tam. A teď bych měl napsat chybu IF, aby se nezobrazovaly jako pole, ale stále to platí, vzorec je tam. Nejsem si jistý, že mě Rogerova otázka trochu zmátla, protože se mi zdá, že by ClearContent měl dělat to, co dělá, ale jsou tu všechny možnosti.Pokud je situace, pak chceme jít o krok dále, v pořádku, kde specifikujeme celý rozsah B5 až G13. A než uděláme ClearContents, chceme říct .SpecialCells (xlCellTypeConstants). Jinými slovy, pokud jde o vzorec, nechte to tak. Když spustíme toto makro, uvidíte, že konstanty zmizí, ale všechny vzorce jsou stále tam. A teď bych měl napsat chybu IF, aby se nezobrazovaly jako pole, ale stále to platí, vzorec je tam. Nejsem si jistý, že mě Rogerova otázka trochu zmátla, protože se mi zdá, že by ClearContent měl dělat to, co dělá, ale jsou tu všechny možnosti.Pokud je situace, pak chceme jít o krok dále, v pořádku, kde specifikujeme celý rozsah B5 až G13. A než uděláme ClearContents, chceme říct .SpecialCells (xlCellTypeConstants). Jinými slovy, pokud jde o vzorec, nechte to tak. Když spustíme toto makro, uvidíte, že konstanty zmizí, ale všechny vzorce jsou stále tam. A teď bych měl napsat chybu IF, aby se nezobrazovaly jako pole, ale stále to platí, vzorec je tam. Nejsem si jistý, že mě Rogerova otázka trochu zmátla, protože se mi zdá, že by ClearContent měl dělat to, co dělá, ale jsou tu všechny možnosti.Jinými slovy, pokud jde o vzorec, nechte to tak. Když spustíme toto makro, uvidíte, že konstanty zmizí, ale všechny vzorce jsou stále tam. A teď bych měl napsat chybu IF, aby se nezobrazovaly jako pole, ale stále to platí, vzorec je tam. Nejsem si jistý, že mě Rogerova otázka trochu zmátla, protože se mi zdá, že by ClearContent měl dělat to, co dělá, ale jsou tu všechny možnosti.Jinými slovy, pokud jde o vzorec, nechte to tak. Když spustíme toto makro, uvidíte, že konstanty zmizí, ale všechny vzorce jsou stále tam. A teď bych měl napsat chybu IF, aby se nezobrazovaly jako pole, ale stále to platí, vzorec je tam. Nejsem si jistý, že mě Rogerova otázka trochu zmátla, protože se mi zdá, že by ClearContent měl dělat to, co dělá, ale jsou tu všechny možnosti.všechny možnosti.všechny možnosti.
Tato kniha nyní nepokrývá VBA, ale pokrývá spoustu věcí. Právě vyšla zbrusu nová kniha, Power Excel s. Klikněte na to „i“ v pravém horním rohu a podívejte se na to.
Dobře, takže shrnutí této epizody: Jak vyčistit ve VBA? K dispozici je sedm různých metod: Clear vymaže všechno; jen komentáře; zachovává formátování, vymaže hodnoty a vzorce; zbaví se pouze formátování; zbaví se pouze hypertextových odkazů; druhý způsob, jak vymazat komentáře, protože komentáře se dříve nazývaly poznámky; ClearOutline se zbaví skupiny a skupin osnovy; a pak tam pomocí speciálních buněk vybereme pouze konstanty nebo pouze vzorce a potom vymažeme obsah. Tam.
Hej, chci poděkovat Rogerovi za zaslání této otázky a chci poděkovat za to, že jsi se zastavil. Uvidíme se příště na dalším netcastu z.
Stáhnout soubor
Stáhněte si ukázkový soubor zde: Podcast2068.xlsm