VBA Excel - smazání určitého řádku Vyřešeno
- mike007
- Master Level 7.5
- Příspěvky: 5860
- Registrován: srpen 07
- Bydliště: Pardubice
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: VBA Excel - smazání určitého řádku
Já si určitě počkám na finální verzi, protože se nejdříve ptáš jak smazat řádky s podmínkou ve sloupci A a najednou se z toho vyklubal dokument s více podmínkami v různých sloupečcích. Až si dáš dokupy co vlastně chceš, dej vědět. Dříve se tím určitě zabývat nehodlám.
Nejlepší hra je Excel!
• Pravidla fóra PC-help • Jak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.
• Pravidla fóra PC-help • Jak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku
Toto je finální verze ... 

-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku
to Branscombe:
precti si, cos napsal:
myslis, ze je to totozne vetou:
Pokud nejses schopen jasne a jednoznacne formulovat pozadavek, pak se dockas odpovedi lisicich se od tvych predstav.
PS.: Poslala manzelka programatora pro jeden chleb s dovetkem: 'Kdyz budou rohliky, vem jich deset". Rohliky byly. Co myslis, ze programator donesl?
// Ach ty manželky ...
// mike007
precti si, cos napsal:
smaže veškeré řádky v oblasti A4:A"poslední buňka" obsahující ve sloupci 2 podmínku z B1 a ve sloupci 3 podmínku z B2
myslis, ze je to totozne vetou:
smaže v oblasti A4:A"poslední buňka" veškeré řádky obsahující ve sloupci 2 podmínku z B1 a ve sloupci 3 podmínku z B2
Pokud nejses schopen jasne a jednoznacne formulovat pozadavek, pak se dockas odpovedi lisicich se od tvych predstav.
PS.: Poslala manzelka programatora pro jeden chleb s dovetkem: 'Kdyz budou rohliky, vem jich deset". Rohliky byly. Co myslis, ze programator donesl?
// Ach ty manželky ...

// mike007
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku
Myslím, že donesl deset chlebů ...
Chlap pokuřuje cigaretu a vyfukuje obláčky dýmu. Jeho přítelkyně se naštve a povídá mu:
"Nevidíš, že je na krabičce napsáno varování, že to škodí zdraví??!"
A chlap na to:
"Lásko, já jsem programátor, nás nezajímají warningy, jen errory..."
Zkusím to definovat lépe:
Potřebuji smazat veškeré řádky odpovídající oběma podmínkám od řádku 4 do konce listu (či naopak - od konce listu po řádek č.4).
Podmínky:
a) ve sloupci 2 se hodnota rovná B2
b) ve sloupci 3 se hodnota rovná B3
Chlap pokuřuje cigaretu a vyfukuje obláčky dýmu. Jeho přítelkyně se naštve a povídá mu:
"Nevidíš, že je na krabičce napsáno varování, že to škodí zdraví??!"
A chlap na to:
"Lásko, já jsem programátor, nás nezajímají warningy, jen errory..."
Zkusím to definovat lépe:
Potřebuji smazat veškeré řádky odpovídající oběma podmínkám od řádku 4 do konce listu (či naopak - od konce listu po řádek č.4).
Podmínky:
a) ve sloupci 2 se hodnota rovná B2
b) ve sloupci 3 se hodnota rovná B3
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku Vyřešeno
Pokud plati ukazka smazat_radky.xls, pak podminky v poslednim "upresneni":
nejsou splnitelne, protoze platne podminky jsou v B1 a B2.
Posledni navrh procedury:
a) ve sloupci 2 se hodnota rovná B2
b) ve sloupci 3 se hodnota rovná B3
nejsou splnitelne, protoze platne podminky jsou v B1 a B2.
Posledni navrh procedury:
Kód: Vybrat vše
Option Explicit
Sub SmazRadky()
Dim Condt1, Condt2, Blk As Range, Cll As Range
Dim i As Long, k As Long
Application.ScreenUpdating = False
With ActiveSheet
Set Blk = .Range(.Range("A4"), .Range("A4").End(xlDown))
Condt1 = .Range("b1").Value
Condt2 = .Range("b2").Value
i = Blk.Rows.Count ' pocet radku bloku
k = i - 1 ' ofset pro posledni radek bloku
Set Cll = Blk.Resize(1, 1) ' referencni bunka
Do While k > -1
With Cll
If .Offset(k, 1).Value = Condt1 And .Offset(k, 2).Value = Condt2 Then _
.Offset(k, 0).EntireRow.Delete
End With
k = k - 1
Loop
End With
Application.ScreenUpdating = True
Set Cll = Nothing
Set Blk = Nothing
End Sub
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku
Ahoj, máš pravdu - podmínky z B1 a B2... Díky za makro, ale potřeboval bych aby to makro prohledalo celý list (A4:A"poslední buňka), jelikož oblast může být i nesouvislá a může obsahovat prázné řádky. Vzhledem k tomu že excel 2003 a 2007 mají rozdílný počet řádku, potřeboval bych to asi vzít odspodu... Ale jinak super...
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku
A proc jsi to neuvedl hned?
V procedure nahrad radek timto:
V procedure nahrad radek
Kód: Vybrat vše
Set Blk = .Range(.Range("A4"), .Range("A4").End(xlDown))
Kód: Vybrat vše
Set Blk = .Range(.[A4], .Cells(.Rows.Count, 1).End(xlUp))
- Branscombe
- Level 3
- Příspěvky: 469
- Registrován: červen 09
- Pohlaví:
- Stav:
Offline
Re: VBA Excel - smazání určitého řádku
Díky moc, vše funguje jak má...
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 9
- 2753
-
od atari
Zobrazit poslední příspěvek
28 kvě 2025 18:09
-
-
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
- 4759
-
od Riviera kid
Zobrazit poslední příspěvek
02 zář 2024 16:21
-
-
-
Žádám o uzavření účtu a smazání příspěvků
od Uziv00 » 16 črc 2024 09:30 » v PC-HELP - připomínky k fóru - 1
- 4294
-
od Ltb
Zobrazit poslední příspěvek
16 črc 2024 10:10
-
-
- 2
- 12171
-
od Snekment
Zobrazit poslední příspěvek
29 led 2025 15:05
-
- 1
- 4565
-
od atari
Zobrazit poslední příspěvek
07 kvě 2025 09:41
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů