Sloučená buňka kolik vidíte v ohraničené oblasti celkem čtverců?

Podobné dokumenty
Úvodní kód VBA berte na tomto místě spíš jako informativní, i když je okomentovaný, smysl má odkrokovaný a to za současného sledování dění na listu.

Odstranění řádků (na základě hodnoty)

Tabulka obsluhovaná kódem VBA

V článku Skrytý obsah na listu (1) jsme se zabývali obecnými možnosti skrývání obsahu. Dnes se na dané téma podíváme prakticky.

Různé barvy v grafu pro skutečnost a plán

Dialog Vzhled stránky

Na úvod tip, jak kontrolovat šířku tabulky před a po změně. Chování makra ukazují obrázky. Jak změnit rastr v hotové tabulce Excelu

Panely pro práci s barvami a ohraničením v Excelu 2003 a 2010

Spojování textových řetězců na listu

VÝŘEZ OBLASTI BUNĚK VZORCEM

Standardní šířka sloupce je průměrná šířka číslic 0-9 standardního písma.

Na chvilku se vžijte do situace, kdy pořádáte jednodenní konferenci a potřebujete naplánovat jednotlivé přednášky včetně přestávek.

8. Formátování. Úprava vzhledu tabulky

Tabulka aneb Seznam čili ListObject

8 Makra Příklad 4 Excel 2007

Excel 2007 praktická práce

KAPITOLA 8 TABULKOVÝ PROCESOR

Test z programování v jazyce VBA v rámci předmětu Počítače II Vzorová zadání a vypracování

Excel tabulkový procesor

František Hudek. duben Informační a komunikační technologie MS Excel Úvod do Excelu III

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

Formátování buněk EU peníze středním školám Didaktický učební materiál

Dialog Najít a nahradit

MS Excel 3: Pokročilý kurz

Jak vložit obrázek do oblasti buněk

Buňka typy buněk, formát buňky

OBSAH Úvod do VBA... 6 K čemu VBA... 6 Když VBA nestačí... 6 Historie Visual Basicu... 7 Objektový model, vlastnosti, metody, události a funkce...

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Rotace, transpozice a zrcadlení matice hodnot

Excel tabulkový procesor

MS Excel makra a VBA

Tabulkový procesor. Orientace textu. O úroveň níž O úroveň výš

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

Popis výukového materiálu

Pracovní prostředí Excel 2010

VKLÁDÁNÍ OBJEKTŮ - tabulka

DUM 07 téma: Proměnné, konstanty a pohyb po buňkách ve VBA

ZŠ ÚnO, Bratří Čapků 1332

MS Excel Lekce 1. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU

Jak definovat pravidlo pro více buněk naráz

Nové kreativní týmy v prioritách vědeckého bádání CZ.1.07/2.3.00/ Tento projekt je spolufinancován z ESF a státního rozpočtu ČR.

EXCELentní tipy a triky pro mírně pokročilé. Martina Litschmannová

Hromadná změna datumu a času v buňkách

PRACOVNÍ SEŠIT MS EXCEL KOMPLET. Optimálním doplňkem stálého vzdělávání jsou elektronické kurzy.

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Projekt Využití ICT ve výuce na gymnáziích, registrační číslo projektu CZ.1.07/1.1.07/ MS Excel

Obsah. Několik slov o Excelu 2007 a Operace při otvírání a ukládání sešitu 15. Operace s okny 27. Kapitola 1

JAK DEFINOVAT PRAVIDLO PRO VÍCE BUNĚK NARÁZ

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 4. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

MS Excel Základy maker. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU

Makra. Orámování oblasti

Slíbená princezna. Univerzální ComboBox

Empty, Null, Nothing, Missing, prázdný řetězec a buňka

Povrchový (obrysový graf)

Nápověda ke cvičení 8

Odstavení automatického zpracování hypertextových odkazů

POVRCHOVÝ (OBRYSOVÝ GRAF)

Tabulky. V té to ka pi to le:

ZoomText 11 - Klávesové zkratky

Soukromá střední odborná škola Frýdek-Místek, s.r.o. VY_32_INOVACE_05_IVT_MSOFFICE_03_Excel

Registrační číslo projektu: Škola adresa: Šablona: Ověření ve výuce Pořadové číslo hodiny: Třída: Předmět: Název: MS Excel II Anotace:

MS Word základy. Úvod do MS Word. Nový dokument. Vytvoření zástupce programu na ploše. Otevření dokumentu a popis prostředí: Ukládání souboru:

První cestou, jak vynechat jakákoliv data v grafu, je jejich skrytí, ať už přímo či filtrem aplikovaným na řádcích.

Relativní a absolutní adresa buňky, pojmenování buňky/rozsahu

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Různé barvy v grafu pro skutečnost a plán

Přehledy pro Tabulky Hlavním smyslem této nové agendy je jednoduché řazení, filtrování a seskupování dle libovolných sloupců.

Manuál: Editace textů v textovém editoru SINPRO Úprava tabulek a internetových odkazů, řádkování

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout. tel:

Úvod do problematiky ÚPRAVY TABULKY

PÁS KARET. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika

František Hudek. duben Informační a komunikační technologie MS Excel Úvod do Excelu II. Základy práce s listy a buňkami.

T6: Program MS Excel II. (standard) Určeno pro získání standardní úrovně znalostí (2 4 hodiny)

K 2 - Základy zpracování textu

Stěžejní funkce MS Excel 2007/2010, jejich ovládání a možnosti využití

Příručka Vzdělávacího střediska Konero ke kurzu RNDr. Milan Myšák

Popis výukového materiálu

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 2. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Níže uvedená tabulka obsahuje technické údaje a omezení aplikace Excel (viz také článek Technické údaje a omezení aplikace Excel (2007).

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných

Kurz Databáze. Obsah. Formuláře. Práce s daty. Doc. Ing. Radim Farana, CSc.

II. Vzorce v Excelu Tipy pro práci s Wordem Kontingenční tabulky v Excelu, 1. část

Supernova 16 Ovládací zkratky. Akce Funkce Stolní počítač Přenosný počítač Automatické popisování grafických objektů LEVÝ CONTROL + PRAVÁ HRANATÁ

Excel Board příprava. ProExcel.cz Excel Board výuková a prezentační tabule pro Excel 1

EU-OPVK:VY_32_INOVACE_FIL19 Vojtěch Filip, 2014

1. Otevřete dokument, který chcete číst. 2. Na kartě Zobrazení klikněte ve skupině Zobrazení dokumentů na položku Čtení na celé obrazovce.

Základní práce s Excelem 2007

Test z programování v jazyce VBA v rámci předmětu Počítače II Vzorová zadání a vypracování

Nápověda k webové aplikaci určené k revizi. ochranných pásem vodních zdrojů a vodárenských nádrží

Excel Podrobný průvodce uživatele. Miroslav Navarrů

Informace o zdroji učebního textu a poučení o jeho užívaní. Petr Broža, Libor Kříž, Roman Kučera, Pavel Nygrýn

INFORMATIKA WORD 2007

VY_32_INOVACE_In 6.,7.13 Vzorce vložení funkce

Práce s MS Excel v Portálu farmáře a využití pro stažení dat KN z LPIS a sestav z EPH

Dialog Najít a nahradit nám v dnešním článku předvede další svou schopnost vyhledávat podle formátu. Zde jsou předchozí díly:

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 3. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

4. Vzorce v Excelu Tipy pro práci s Wordem Kontingenční tabulky v Excelu

FUNKCE 3. Autor: Mgr. Dana Kaprálová. Datum (období) tvorby: září, říjen Ročník: sedmý. Vzdělávací oblast: Informatika a výpočetní technika

Transkript:

Hned zkraje se nabízí otázka, zda-li používat termín sloučená buňka nebo sloučené buňky. Obojí je správně. Fyzicky se jedná o sloučené buňky, nicméně jak uvidíte později navenek se oblast chová jako jednobuňková (dovolím si i výraz prvobuňková ). Sloučená buňka kolik vidíte v ohraničené oblasti celkem čtverců? Pro potřeby optického překrývání oblasti hodnotou je sloučená buňka fajn, nicméně po stránce technické (datové) je to bez pardonů svinstvo. Předesílám, že vizuálně ji dokáže zastoupit volba Vodorovně: Na střed výběru (viz dialog Formát buňky a záložka Zarovnání, použití ukázáno na hlavičce s filtrem dále v článku). Úvodní kód VBA berte na tomto místě spíš jako informativní, i když je okomentovaný, smysl má odkrokovaný a to za současného sledování dění na listu. Tip: Ve Windows 7 můžete aktivní okno zarovnat do levé (pravé) části obrazovky s pomocí klávesové zkratky WIN+šipka v daném směru. Pokud bych měl popsat programový způsob práce se sloučenou oblastí jen jednou větou, pak vězte, že v nabídce jsou metody Merge (sloučit) a UnMerge (rozdělit) nebo vlastnost MergeCells s hodnotou True (sloučeno) a False (rozděleno). ProExcel.cz 1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 Sub SloucenaBunka() 'kód si krokujte a sledujte zpracovávanou oblast Dim rngsloucenebunky As Range Dim rngsloupec As Range Dim dblhodnotab3 As Double Dim dblhodnotab4 As Double Dim dblsirkasloupceb3 As Double Dim dblsirkasloupceb3d5 As Double Dim dblsirkatemp As Double Dim intpocetbunek As Integer Dim boolsoucastslouceneoblasti As Boolean Dim stradresa As String 'aktivace listu pro účely testování wshtesty.activate '1. Metoda Merge poprvé 'výběr buňky B3 Range("B3").Select 'sloučení všech buněk oblasti 'metoda Merge 'výběr B3 se nezmění 'formát z B3 Range("B3:D5").Merge 'B3 stradresa = Selection.Address(0, 0) 'výběr B3 se nezmění Range("B3").Activate 'výběr B3 se změní na B3:D5 'Range("B3").Select 'výběr C3 se změní na B3:D5 'Activate stejně jako Select Range("C3").Activate 'zápis do buňky B3 Range("B3") = 100 '100 dblhodnotab3 = Range("B3") 'zápis do buňky B4 neproběhne! 'žádné chybové hlášení Range("B4") = 1000 '0 dblhodnotab4 = Range("B4") 'rozdělení sloučených buněk 'metoda UnMerge 'B3 přebírá po rozdělení obsah (vzorec), 'formát hodnoty, pozadí i písma ze sloučení 'resetuje se ohraničení a zarovnání buňky Range("B3:D5").UnMerge 'Metoda Merge podruhé 'výběr buňky B3 Range("B3").Select 'znovusloučení všech buněk oblasti Range("B3:D5").Merge 'šířka buňky B3 (units) '20 dblsirkasloupceb3 = Range("B3").ColumnWidth 'šířka oblasti B3:D5 'lze použít jen pro stejně široké sloupce oblasti! 'Null 'dblsirkasloupceb3d5 = Range("B3:D5").ColumnWidth 'Null 'dblsirkasloupceb3d5 = Range("B3").MergeArea.ColumnWidth 'korektně For Each rngsloupec In Range("B3").MergeArea.Columns dblsirkatemp = dblsirkatemp + rngsloupec.columnwidth Next rngsloupec '30 dblsirkasloupceb3d5 = dblsirkatemp 'šířka buňky B3 (points) '108,75 dblsirkasloupceb3 = Range("B3").Width 'šířka oblasti B3:D5 '168,75 (points) dblsirkasloupceb3d5 = Range("B3:D5").Width 'totéž '168,75 dblsirkasloupceb3d5 = Range("B3").MergeArea.Width 'rozdělení sloučených buněk Range("B3:D5").UnMerge 'Vlastnost MergeCells poprvé 'sloučení všech buněk oblasti 'vlastnost MergeCells 'výběr se automaticky změní na B3:D5 Range("B3:D5").MergeCells = True 'sloučená oblast, do níž buňka náleží 'B3:D5 stradresa = Range("C5").MergeArea.Address(0, 0) 'F3, nikoliv D3! 'totéž pro C3, D3 'tj. posun od pravého okraje průniku (3.) řádku 'se sloučenými buňkami Range("B3").Offset(0, 2).Select 'spadá-li cílová buňka do jiné sloučené oblasti 'vybírá ji celou 'E4:F4 'totéž pro C4, D4 Range("B4").Offset(0, 2).Select 'rozdělení sloučených buněk Range("B3:D5").MergeCells = False 'Vlastnost MergeCells podruhé 'nelze 'Set rngoblast = Range("B3:D5").Merge 'výběr buňky B3 Range("B3").Select 'sloučení všech buněk oblasti 'vlastnost MergeCells Range("B3:D5").MergeCells = True 'vlastnost MergeArea je aplikovatelná pouze 'na jednu buňku (sloučené) oblasti 'nelze 'Range("B3:D5").MergeArea.Select Set rngoblast = Range("B3").MergeArea 'počet buněk v oblasti '9 intpocetbunek = rngoblast.cells.count 'leží buňka ve sloučené oblasti? 'True boolsoucastslouceneoblasti = Range("C5").MergeCells = True 'vložení vzorce (nelze aplikovat maticový) Range("B3").MergeArea.FormulaLocal = "=DNES()" 'nebo Range("B3:D5").FormulaLocal = "=DNES()+1" 'rozdělení sloučených buněk Range("B3:D5").MergeCells = False End Sub ProExcel.cz 2

V oblasti sloučených buněk nelze nastavit maticový vzorec (FormulaArray). Oblast ovšem může převzít maticový vzorec (vracející jednu hodnotu) z první buňky před sloučením lze aplikovat vyhledávací funkce, můžete se ovšem dočkat nečekaných výsledků (hodnotu obsahuje pouze první buňka sloučené oblasti) lze sice po technické stránce aplikovat filtr, ale rozhodně se tomuto nečistému stylu práce vyhýbejte nelze jednotlivé buňky vybírat myší, klávesou TAB ani šipkami či programově (Activate, Select) lze procházet rohové buňky přes CTRL+. (tečka), ovšem případný zápis hodnoty se do buňky nepromítne (neskončí ale ani chybou). Výběrem se mění objekt ActiveCell (změnu lze okem pozorovat pouze v Řádku vzorců). je možné se vzorcem či programově odkazovat na jednotlivé buňky. S výjimkou první (levé horní) buňky této oblasti jsou všechny prázdné a nelze do nich zapisovat (pokus neskončí ale ani zde chybou). Změna formátu či například přidaný komentář se vizuálně projeví na celé sloučené oblasti, fakticky jsou ovšem tyto vlastnosti vázány na první buňku. Posun (Offset) respektuje rozměr sloučené oblasti v daném směru. Změna velikosti (Resize) vychází z rozměrů sloučené oblasti. Sloučená oblast se tedy navenek prezentuje jako jednobuňková (jednořádková, jednosloupcová). Pokud posun nebo změna velikosti zasahuje do jiné sloučené oblasti, pak dochází k expanzi podle této oblasti. Pozn. Sloučená buňka je jako švédská bedna. Ačkoliv je výška skoku různá podle jejího sestavení, vždy je ke splnění tělocvičného prvku uznatelný pouze jeden odraz a s ním spojený skok. ProExcel.cz 3

Švédská bedna Následuje ukázka výsledků funkcí aplikovaných na oblast se sloučenou buňkou. Funkci užité na oblasti se sloučenou buňkou Snímek níže ukazuje, jak se chová sloučená buňka užitá v hlavičce s filtrem a jak se k tomu štábně postavit. ProExcel.cz 4

Sloučená buňka v hlavičce s filtrem A nyní se podíváme na jedno obzvláště šťavnaté téma. AutoFit přizpůsobení šířky a výšky sloučené buňky přizpůsobení šířky sloupce podle aktuálního výběru ručně: karta Domů / skupina Buňky / Formát, Přizpůsobit šířku sloupců programově: Bunka.Columns.AutoFit přizpůsobení šířky sloupce podle nejdelšího obsahu ve sloupci ručně: dvojklik na rozhraní sloupců programově: Bunka.EntireColumn.AutoFit Pro řádky je to obdobné Rows.AutoFit, EntireRow.AutoFit. Automaticky zalomený text zpravidla Excel zvládá, u ručně zalomeného textu čekejte obtíže, a u ProExcel.cz 5

sloučených buněk už narazí kosa na kámen. Poradí si s tím VBA? Inu jde to, ale dře to. Doslova jsem se prošoupal do cíle s odřenými lokty i ušima. Obrázky dokumentují stav před a po zpracování. Víceřádková, jednosloupcová sloučená buňka ProExcel.cz 6

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 Sub SloucenaBunka1AutoFit() Dim rngsloucenabunka As Range Dim rngsloupec As Range Dim rngbunka As Range Dim astrtextmaxdelka Dim dblbunka1prizpusobenasirka As Double Dim dblbunka1prizpusobenavyska As Double Dim intpocetradku As Integer Dim strobsah As String Dim strtemp As String 'aktivace listu pro účely testování wshautofit.activate 'Příklad 1 'reset výšky řádků a šířky sloupců do výchozí podoby příkladů With ActiveSheet.UsedRange.EntireRow.RowHeight = 15.EntireColumn.ColumnWidth = 8.43 End With 'víceřádková, jednosloupcová sloučená buňka se zalomením 'Set rngsloucenabunka = Range("B2:B3") Set rngsloucenabunka = Range("B2").MergeArea 'výběr sloučené buňky rngsloucenabunka.select 'počet řádků sloučené buňky intpocetradku = rngsloucenabunka.rows.count With rngsloucenabunka 'zrušení sloučení.mergecells = False 'nekorektní pro ručně zalomený víceřádkový obsah '.Cells(1).EntireColumn.AutoFit 'původní obsah první buňky strobsah =.Cells(1).Text 'zrušení sloučení.mergecells = False 'a) nastavení šířky první buňky podle původní šířky sloučené buňky '.Cells(1).ColumnWidth = dblsloucenabunkapuvodnisirka 'b) přizpůsobení šířky buňky podle její nejdelší textové položky 'vytvoření řetězce maticové konstanty z obsahu buňky strtemp = "={""" & Replace(strObsah, vblf, """;""") & """}" 'přidání dočasného definovaného názvu ActiveWorkbook.Names.Add Name:="XYZnazev", RefersToR1C1:=strTemp 'text s maximální délkou (vyhodnocen jako maticový vzorec) astrtextmaxdelka = _ Evaluate("=INDEX(XYZnazev,MATCH(MAX(LEN(XYZnazev)),LEN(XYZnazev),0))") 'odstranění dočasného názvu ActiveWorkbook.Names("XYZnazev").Delete 'nejdelší textová položka (řádek) první buňky jako dočasný obsah.cells(1) = astrtextmaxdelka(1) 'zrušení zalamování.cells(1).wraptext = False 'přizpůsobení šířky první buňky nejdelší textové položce.cells(1).columns.autofit 'šířka po přizpůsobení dblbunka1prizpusobenasirka =.Cells(1).ColumnWidth 'navrácení původního obsahu.cells(1) = strobsah 'navrácení zalamování (po vložení textu k němu dojde automaticky).cells(1).wraptext = True 'přizpůsobení výšky první buňky.cells(1).rows.autofit 'výška po přizpůsobení dblbunka1prizpusobenavyska =.Cells(1).RowHeight 'znovusloučení.mergecells = True 'nastavení přizpůsobené šířky pro první buňku '.Cells(1).ColumnWidth = dblbunka1prizpusobenasirka 'rovnoměrné rozdělení potřebné výšky na všechny řádky 'sloučené buňky.rowheight = dblbunka1prizpusobenavyska / intpocetradku End With End Sub ProExcel.cz 7

Jednořádková, vícesloupcová sloučená buňka ProExcel.cz 8

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 Sub SloucenaBunka2AutoFit() Dim rngsloucenabunka As Range Dim rngbunka As Range Dim astrtextmaxdelka Dim dblsloucenabunkapuvodnisirka As Double Dim dblbunka1puvodnisirka As Double Dim dblbunka1prizpusobenasirka As Double Dim dblbunka1prizpusobenavyska As Double Dim intpocetradku As Integer Dim strobsah As String Dim strtemp As String 'aktivace listu pro účely testování wshautofit.activate 'Příklad 2 'reset výšky řádků a šířky sloupců do výchozí podoby With ActiveSheet.UsedRange.EntireRow.RowHeight = 15.EntireColumn.ColumnWidth = 8.43 End With 'jednořádková, vícesloupcová sloučená buňka se zalomením 'Set rngsloucenabunka = Range("D5:E5") Set rngsloucenabunka = Range("D5").MergeArea 'výběr sloučené buňky rngsloucenabunka.select 'přizpůsobení výšky pouze pro první řádek obsahu 'rngsloucenabunka.entirerow.autofit 'totéž 'rngsloucenabunka.cells(1).entirerow.autofit With rngsloucenabunka 'celková šířka sloučené buňky 'v nastavitelných jednotkách (units) 'ColumnWidth nelze aplikovat přímo na sloučenou buňku 'pro nestejně široké sloupce vrací Null For Each rngbunka In rngsloucenabunka dblsloucenabunkapuvodnisirka = dblsloucenabunkapuvodnisirka + _ rngbunka.columnwidth Next 'původní obsah první buňky strobsah =.Cells(1).Text 'původní šířka první buňky oblasti 'dblbunka1puvodnisirka =.Cells(1).ColumnWidth 'zrušení sloučení.mergecells = False 'a) nastavení šířky první buňky podle původní šířky sloučené buňky '.Cells(1).ColumnWidth = dblsloucenabunkapuvodnisirka 'b) přizpůsobení šířky buňky podle její nejdelší textové položky 'vytvoření řetězce maticové konstanty z obsahu buňky strtemp = "={""" & Replace(strObsah, vblf, """;""") & """}" 'přidání dočasného definovaného názvu ActiveWorkbook.Names.Add Name:="XYZnazev", RefersToR1C1:=strTemp 'text s maximální délkou (vyhodnocen jako maticový vzorec) strtextmaxdelka = _ Evaluate("=INDEX(XYZnazev,MATCH(MAX(LEN(XYZnazev)),LEN(XYZnazev),0))") 'odstranění dočasného názvu ActiveWorkbook.Names("XYZnazev").Delete 'nejdelší textová položka (řádek) první buňky jako dočasný obsah.cells(1) = strtextmaxdelka(1) 'zrušení zalamování.cells(1).wraptext = False 'přizpůsobení šířky první buňky nejdelší textové položce.cells(1).columns.autofit 'šířka po přizpůsobení dblbunka1prizpusobenasirka =.Cells(1).ColumnWidth 'navrácení původního obsahu.cells(1) = strobsah 'navrácení zalamování (po vložení textu k němu dojde automaticky).cells(1).wraptext = True 'přizpůsobení výšky první buňky.cells(1).rows.autofit 'výška po přizpůsobení dblbunka1prizpusobenavyska =.RowHeight 'znovusloučení 'nerespektuje nastavenou velikost.mergecells = True 'nastavení původní šířky a přízpůsobené výšky pro první buňku '.Cells(1).ColumnWidth = dblbunka1puvodnisirka 'nastavení přizpůsobené šířky a výšky pro první buňku.cells(1).columnwidth = dblbunka1prizpusobenasirka.cells(1).rowheight = dblbunka1prizpusobenavyska End With End Sub ProExcel.cz 9

Sešit ke stažení: excel-sloucena-bunka.zip ProExcel.cz 10