Makro v MS Excel - problém se sloučenými buňkami

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

Moderátor: Mods_senior

MatesBossy
Level 1
Level 1
Příspěvky: 55
Registrován: duben 12
Bydliště: Bludov
Pohlaví: Muž
Stav:
Offline

Makro v MS Excel - problém se sloučenými buňkami

Příspěvekod MatesBossy » 02 kvě 2017 00:13

Dobrý pozdní večer,
řeším následující problém:

V rámci 1 sešitu mám více listů, na všech listech se nachází naprosto stejná tabulka. Potřebuji makro, které po aktivaci aktualizuje tabulku na prvním listu s daty ze všech ostatních listů. Níže uvádím VB kód, který používám. Pokud ho použiji na sešit, ve kterém nepoužívám sloučené buňky je vše v pořádku. Pokud ho použiji v sešitu se sloučenými buňkami (v záhlaví tabulky), makro nefunguje. Problém je zřejmě s identifikací řádků resp. sloupců, které mají sloučené buňky. Přijde mi, že VB pracuje s "viditelnými řádky" (2 sloučené počítá jako jeden) a ne s excelem označenými řádky (2 sloučené jako 2).

Prosím o radu, jak makro upravit popřípadě jaký jiný způsob použít.
Předem mockrát díky za všechny rady ;-)

Kód pro tabulku s 54 sloupci:


  1. Sub SpojListy()
  2. Dim ws As Worksheet, rs As Long, rd As Long
  3.   With Application
  4.     .EnableEvents = False
  5.     .ScreenUpdating = False
  6.   End With
  7.   With ThisWorkbook
  8.     With .Worksheets("List1")
  9.       rs = .Cells(Rows.Count, 4).End(xlUp).Row - 1
  10.       If rs > 0 Then .Cells(4, 1).Resize(rs, 54).ClearContents
  11.     End With
  12.     For Each ws In .Worksheets
  13.       rs = .Worksheets("List1").Cells(Rows.Count, 4).End(xlUp).Row
  14.       With ws
  15.         If .Name <> "List1" Then
  16.           rd = .Cells(Rows.Count, 4).End(xlUp).Row - 1
  17.           If rd > 0 Then ThisWorkbook.Worksheets("List1").Cells(rs + 1, 1).Resize(rd, 54).Value = .Cells(4, 1).Resize(rd, 54).Value
  18.         End If
  19.       End With
  20.     Next ws
  21.   End With
  22.   With Application
  23.     .EnableEvents = True
  24.     .ScreenUpdating = True
  25.   End With
  26. End Sub

Reklama
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3202
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: Makro v MS Excel - problém se sloučenými buňkami

Příspěvekod atari » 02 kvě 2017 12:50

Makro ignoruje sloučené buňky. Ovšem umí do sloučených buněk psát pouze pokud tu sloučenou buňku označíš původní buńkou v levém horním rohu. Pokud zadáš jinou původní buňku, tak makro neudělá nic.

Dodatečně přidáno po 12 minutách 16 vteřinách:
Napíší to srozumitelněji: Sloučené buňky (např. B2 až E10) si makro označí jedinou buňkou, a to původní levou horní. V tomo případě "B2", a ta pak pro makro reprezentuje všechny sloučené buňky. Takže veškeré operace s těmi součenými buňkami musíš zadávat pouze přes "B2" nebo Cells(2,2).

Dodatečně přidáno po 6 hodinách 34 minutách 36 vteřinách:
Ještě poznámka:
Doporučuji zrušit sloučené buňky. Podle mě nejsou potřeba. Způsobuje to problémy, například při kopírování celých listů.
Před 10 lety jsem sloučené buňky u nás v práci zakázal. Tabulky se sloučenýma buňkama jsem předělal na nesloučené buňky. Sice to dá trochu více práce, ale stojí to za to. Od té doby neřeším problémy se sloučenýma buňkama.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Excel - problém se vzorci
    od honzzicek » 28 čer 2023 21:45 » v Kancelářské balíky
    2
    1784
    od honzzicek Zobrazit poslední příspěvek
    01 črc 2023 08:57
  • Makro pro myš Rapture Python
    od mmmartin » 27 srp 2023 15:18 » v Problémy s hardwarem
    9
    1124
    od mmmartin Zobrazit poslední příspěvek
    29 srp 2023 16:47
  • Excel a OneDrive
    od sginfo » 11 zář 2023 15:28 » v Kancelářské balíky
    16
    6243
    od mirekol Zobrazit poslední příspěvek
    20 říj 2023 08:31
  • Excel - vlastní formát Příloha(y)
    od Story-Long » 11 srp 2023 14:50 » v Kancelářské balíky
    3
    1970
    od Story-Long Zobrazit poslední příspěvek
    14 srp 2023 10:11
  • Excel - funkce když
    od Martyn20 » 13 črc 2023 11:56 » v Kancelářské balíky
    5
    2509
    od mmmartin Zobrazit poslední příspěvek
    13 črc 2023 18:44

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

Kdo je online

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