Stránka 1 z 1

Makro - smazání prázdných řádků

Napsal: 18 pro 2017 10:03
od Michremi
Ahoj, mám různé excelové sešity s asi padesáti listy a potřeboval bych z nich vymazávat prázdné řádky.

Všechny návody a rady, které jsem našel se týkaly vždycky jenom jednoho listu, třeba tenhle:

ActiveSheet.UsedRange.Select
Dim i As Long
For i = Selection.Rows.Count To 1 Step -1
If WorksheetFunction.CountA(Selection.Rows(i)) = 0 Then
Selection.Rows(i).EntireRow.Delete
End If
Next i
End Sub

dělá přesně, co potřebuju, ale musím ho použít na každý list zvlášť, šel by nějak rozšířit, aby fungoval na všechny listy v souboru najednou? Makru nerozumím, tak si to sám předefinovat neumím :(

Re: Makro - smazání prázdných řádků

Napsal: 18 pro 2017 13:51
od guest
vnější cyklus

Kód: Vybrat vše

Dim wshList As Worksheet

For Each wshList in Worksheets...

a zde pracovat s wshList.UsedRange

Next wshList


Nicméně celé by to chtělo ještě překopat...

Re: Makro - smazání prázdných řádků

Napsal: 18 pro 2017 14:53
od elninoslov
Vymazávať prázdne riadky v iných súboroch a ešte to nechať na automatiku je extrémne nebezpečné. Treba aspoň minimálne logovať, čo sa deje. Skúsil som Vám načrtnúť návrh ako aspoň niečo kontrolovať. Najskôr sa poriadne oboznámte s tým čo makro robí, a skúšajte to VÝHRADNE na kópii súborov v nejakom cvičnom adresári. Až keď si to poriadne ošaháte a manuálne prekontrolujete, môžete pokračovať ...