< návrat zpět

MS Excel


Téma: Smazání některých řádků rss

Zaslal/a 14.8.2013 18:11

Zdravím,

potřebuji zhruba z 200 sešitů, které mají identický počet řádků, smazat vybrané řádky, které nelze podle ničeho filtrovat, a tudíž jsem si napsal skript "natvrdo":

Sub Macro1()

Dim x As Long
Dim i As Long

x = Rows.Count

For i = 1 To x
If (i <> 1260 And i <> 1239 And i <> 1218 And i <> 1197 And i <> 1177 And i <> 1158 And i <> 1135 And i <> 1116 And i <> 1094 And i <> 1072 And i <> 1052 And i <> 1029 And i <> 1009 And i <> 987 And i <> 966 And i <> 946 And i <> 926 And i <> 907 And i <> 885 And i <> 865 And i <> 843 And i <> 822 And i <> 801 And i <> 778 And i <> 759 And i <> 736 And i <> 715 And i <> 695 And i <> 674 And i <> 654 And i <> 634 And i <> 612 And i <> 591 And i <> 570 And i <> 548 And i <> 527 And i <> 506 And i <> 483 And i <> 464 And i <> 442 And i <> 422 And i <> 403 And i <> 381 And i <> 360 And i <> 340 And i <> 318 And i <> 296 And i <> 275 And i <> 254 And i <> 232 And i <> 212 And i <> 190 And i <> 171 And i <> 152 And i <> 129 And i <> 108 And i <> 88 And i <> 66 And i <> 45 And i <> 23 And i <> 2) Then
Rows(i).Delete
End If
Next

End Sub

Problémem je, že se mi při spuštění makro zasekne, respektive vykonávání trvá nekonečně dlouho. Existuje nějaká rychlejší varianta, respektive - přehlížím něco?

Děkuji za odpověď

Zaslat odpověď >

#014706
avatar
Pokud se mažou řádky je lepší je mazat od spodu.
For i = Rows.Count To 1 Step -1citovat
#014709
Opičák
Pokud to má mazat řádky komě vybraných. Snad to bude rychlejší.
Příloha: zip14709_mazani-radku-krom-vybranych.zip (20kB, staženo 19x)
citovat
icon #014711
eLCHa
Opět úplně zbytečný cyklus. Přitom stačí jen jeden řádek (vypisovat to vše nebudu, takže jen příklad):
Range("2:3,7:7,9:10").Delete

Pokud byste to nechtěl vypisovat ručně, můžete v prvním sešitu vybrat ty řádky které chcete mazat a potom

Dim sRowsToDelete as String
sRowsToDelete = Selection.Address
'a pak už jen
Range(sRowsToDelete).Delete


Cyklus budete muset udělat na těch 200 souborů
Nejlépe si udělejte do nějakého listu jejich seznam (celé cesty) a potom to jen pofičí ;)))citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje