Přejít k hlavnímu obsahu
 

Jak automaticky přizpůsobit výšku řádku sloučených buněk v aplikaci Excel?

Autor: Xiaoyang Naposledy změněno: 2024-08-07

V aplikaci Excel můžeme rychle upravit výšku řádku podle obsahu buňky pomocí Přizpůsobit Výška řádku funkce, ale tato funkce zcela ignoruje sloučené buňky. To znamená, že nemůžete použít Přizpůsobit Výška řádku Chcete-li změnit velikost výšky sloučených buněk, musíte ručně upravit výšku řádku pro sloučené buňky jeden po druhém. V tomto článku mohu představit několik rychlých metod řešení tohoto problému.

Automatické přizpůsobení výšky řádku sloučených buněk kódem VBA


šipka modrá pravá bublina Automatické přizpůsobení výšky řádku sloučených buněk kódem VBA

Předpokládám, že mám list s některými sloučenými buňkami, jak ukazuje následující snímek obrazovky, a teď potřebuji změnit velikost výšky řádku buňky, abych zobrazil celý obsah, níže uvedený kód VBA vám může pomoci automaticky přizpůsobit výšku řádku více sloučených buněk, prosím jak následuje:

vzorek dat

1. Podržte ALT + F11 klíče a otevře se Okno Microsoft Visual Basic pro aplikace.

2, klikněte Vložit > Modula vložte následující kód do Okno modulu.

Kód VBA: Automatické přizpůsobení výšky řádku více sloučených buněk
Option Explicit
Public Sub AutoFitAll()
  Call AutoFitMergedCells(Range("a1:b2"))
   Call AutoFitMergedCells(Range("c4:d6"))
    Call AutoFitMergedCells(Range("e1:e3"))
End Sub
Public Sub AutoFitMergedCells(oRange As Range)
  Dim tHeight As Integer
  Dim iPtr As Integer
  Dim oldWidth As Single
  Dim oldZZWidth As Single
  Dim newWidth As Single
  Dim newHeight As Single
  With Sheets("Sheet4")
    oldWidth = 0
    For iPtr = 1 To oRange.Columns.Count
      oldWidth = oldWidth + .Cells(1, oRange.Column + iPtr - 1).ColumnWidth
    Next iPtr
    oldWidth = .Cells(1, oRange.Column).ColumnWidth + .Cells(1, oRange.Column + 1).ColumnWidth
    oRange.MergeCells = False
    newWidth = Len(.Cells(oRange.Row, oRange.Column).Value)
    oldZZWidth = .Range("ZZ1").ColumnWidth
    .Range("ZZ1") = Left(.Cells(oRange.Row, oRange.Column).Value, newWidth)
    .Range("ZZ1").WrapText = True
    .Columns("ZZ").ColumnWidth = oldWidth
    .Rows("1").EntireRow.AutoFit
    newHeight = .Rows("1").RowHeight / oRange.Rows.Count
    .Rows(CStr(oRange.Row) & ":" & CStr(oRange.Row + oRange.Rows.Count - 1)).RowHeight = newHeight
    oRange.MergeCells = True
    oRange.WrapText = True
    .Range("ZZ1").ClearContents
    .Range("ZZ1").ColumnWidth = oldZZWidth
  End With
End Sub

Poznámky:

(1.) Ve výše uvedeném kódu můžete přidat nové rozsahy pouze zkopírovat Volání AutoFitMergedCells (Range ("a1: b2")) skriptujte, kolikrát chcete, a změňte sloučené rozsahy buněk podle svých potřeb.

(2.) A měli byste změnit název aktuálního listu Sheet4 na použitý název listu.

3. Pak stiskněte tlačítko F5 klíč ke spuštění tohoto kódu a nyní můžete vidět, že všechny sloučené buňky byly automaticky přizpůsobeny jejich obsahu, viz screenshot:

výsledek automatického přizpůsobení výšky řádku sloučených buněk pomocí kódu vba



Související článek:

Jak automaticky přizpůsobit šířku sloupce v aplikaci Excel?

Nejlepší nástroje pro produktivitu v kanceláři

🤖 Kutools AI asistent: Revoluční analýza dat založená na: Inteligentní provedení   |  Generovat kód  |  Vytvořte vlastní vzorce  |  Analyzujte data a generujte grafy  |  Vyvolejte funkce Kutools...
Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!