Excel-makro na promazání řádků Vyřešeno

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

Moderátor: Mods_senior

spejle
nováček
Příspěvky: 17
Registrován: září 10
Pohlaví: Nespecifikováno
Stav:
Offline

Excel-makro na promazání řádků

Příspěvekod spejle » 15 zář 2010 12:32

Dobrý den,
mám excel s mnoha řádky dat z experimentů a potřebovala bych nějaký předpis na to, aby mi v listu zůstal například každý desátý nebo každý druhý řádek a zbylé byly vymazány. Nevím si s tím rady, proto Vás moc prosím o pomoc. Předem děkuji, Iva.

Reklama
navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro na promazání řádků

Příspěvekod navstevnik » 15 zář 2010 12:47

Pouzij nize uvedenou proceduru (v editoru VBA - Alt+F11 - vloz do standardniho modulu, uprav nazev listu: Worksheets("nazev listu").., zavolej z nabidka Nastroje>Makro>...):

Kód: Vybrat vše

Option Explicit

' ponechat kazdy n-ty radek:
' Kazdy=(2;3;4;...,255) - ponecha pocinaje n-tym radkem nebo pocatkem kazdy m-ty radek
Sub OdstranRadky()
Dim MyArea As Range, PoslRadek As Long, Kazdy As Byte, Pocatek As Long
Dim Odstran As Range, Ofs As Long
  Set MyArea = Worksheets("list3").UsedRange
  If IsEmpty(MyArea) Then End
  PoslRadek = MyArea.Rows.Count
  Application.ScreenUpdating = False
'************************
  Pocatek = 0 ' nastavit
  Kazdy = 5 ' nastavit
'************************
  Set Odstran = Worksheets("list3").Range("1:" & Kazdy - 1).Rows
  If Pocatek = 0 Then
    Ofs = Kazdy
  Else
    Ofs = Pocatek
  End If
  Kazdy = Kazdy - 1
  Do While Ofs < PoslRadek
    Odstran.Offset(Ofs, 0).EntireRow.Delete
    Ofs = Ofs + 1
    PoslRadek = PoslRadek - Kazdy
  Loop
  If Pocatek = 0 Then Odstran.EntireRow.Delete
  Range("a1").Select
  Application.ScreenUpdating = True
End Sub

Testuj na kopii sesitu, jinak hrozi v pripade chyby ztrata dat!
vice k VBA zde: http://www.officir.ic.cz/excelentne.html

Uživatelský avatar
Poki
Level 2
Level 2
Příspěvky: 237
Registrován: prosinec 09
Pohlaví: Muž
Stav:
Offline

Re: Excel-makro na promazání řádků  Vyřešeno

Příspěvekod Poki » 15 zář 2010 12:49

Zdravim,
otazka je, jestli tim 'zustal' myslite to, jestli se nepotrebne radky maji smazat nebo odstranit. Zkusim obe varianty.
Timto kodem muzete radky jen Smazat (kolikaty radek bude smazat zalezi na hodnote promenne Pocet):

Kód: Vybrat vše

Sub Smazat()
Dim Pocet As Integer
Pocet = 2
For i = 1 To Application.WorksheetFunction.CountA(Range("a:a")) Step Pocet
   Rows(i).ClearContents
Next
End Sub

Pokud chcete radky Odtranit, pouzijte tento kod (kolikaty radek bude smazat zalezi na hodnote promenne Pocet):

Kód: Vybrat vše

Sub Odstranit()
Dim Pocet As Integer
Pocet = 2
For i = Pocet To Application.WorksheetFunction.CountA(Range("a:a")) Step Pocet - 1
   Rows(i).Delete
Next
End Sub

spejle
nováček
Příspěvky: 17
Registrován: září 10
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel-makro na promazání řádků

Příspěvekod spejle » 15 zář 2010 13:27

Moc děkuji


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • EXCEL -jak otevřít 2 excel sobory abych je viděla současne a samostatně
    od Ketty02 » 30 srp 2024 21:19 » v Vše ostatní (sw)
    2
    4772
    od Riviera kid Zobrazit poslední příspěvek
    02 zář 2024 16:21
  • Přechod z Excel 21 na Excel 24
    od Snekment » 29 led 2025 13:46 » v Kancelářské balíky
    2
    12185
    od Snekment Zobrazit poslední příspěvek
    29 led 2025 15:05
  • Pohoda a excel Příloha(y)
    od brownwld » 06 kvě 2025 17:28 » v Kancelářské balíky
    1
    4593
    od atari Zobrazit poslední příspěvek
    07 kvě 2025 09:41
  • Excel - výpočet nočních hodin Příloha(y)
    od Uziv00 » 17 říj 2024 11:22 » v Kancelářské balíky
    3
    3316
    od lubo. Zobrazit poslední příspěvek
    24 říj 2024 00:00
  • Excel 2016 - vzorec kombinace podmínek Příloha(y)
    od MK_Vs » 08 led 2025 17:56 » v Kancelářské balíky
    5
    4065
    od lubo. Zobrazit poslední příspěvek
    14 led 2025 00:51

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

Kdo je online

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