Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

kako izbrisati svaki n-ti red / kolonu

[es] :: Office :: Excel :: kako izbrisati svaki n-ti red / kolonu

[ Pregleda: 4735 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mirjanagb
mirjana kovacevic
austrija

Član broj: 160826
Poruke: 184
*.bankgutmann.co.at.



+1 Profil

icon kako izbrisati svaki n-ti red / kolonu14.10.2008. u 16:14 - pre 188 meseci
npr imam 20 kolona i 11000 redova

gde mi se nalaze brojevi i tekst...

svaka 54-ti red je prazan ...

postoji li mogucnost da izbrisem svaki 54 re da mogu od 21 kolone nastaviti dalje da radim?
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2898



+66 Profil

icon Re: kako izbrisati svaki n-ti red / kolonu14.10.2008. u 16:41 - pre 188 meseci
Citat:
mirjanagb : postoji li mogucnost da izbrisem svaki 54 re da mogu od 21 kolone nastaviti dalje da radim?
Pogledaj
http://www.elitesecurity.org/t228087-0#1360084
http://www.elitesecurity.org/t245843-0#1477414

btw: naslov je za "kolone" a tražiš brisanje "redova"
 
Odgovor na temu

mirjanagb
mirjana kovacevic
austrija

Član broj: 160826
Poruke: 184
*.swlan.wu-wien.ac.at.



+1 Profil

icon Re: kako izbrisati svaki n-ti red / kolonu14.10.2008. u 21:06 - pre 188 meseci
dobro, dobro, kad sam poslala onda sam skontala gresku


nego imam jedno pitanje ...

ja hocu da mi se svaki 54 red brise i vidim da ovaj makro to i radi.

sta znaci ovo:
Const COLUMN_COUNT = 10
Const ROW_COUNT = 10000

razumem da treba da napisem ako imam 5000 redova, umesto 10000, 5000. a jel treba nesto sa ovim

Const COLUMN_COUNT = 10

ili ako imam samo 5 kolona, jel umeso 10 napisem 5?



Sub DeleteEmptyRow()
Dim lngCounter As Long
Dim lngCounter2 As Long
Dim cellTMP As Range
Dim blnEmpty As Boolean
Dim lngRowsDeleted As Long

Const COLUMN_COUNT = 10
Const ROW_COUNT = 10000

lngRowsDeleted = 0

For lngCounter = 1 To ROW_COUNT

blnEmpty = True

For lngCounter2 = 1 To COLUMN_COUNT

Set cellTMP = Cells((lngCounter - lngRowsDeleted), lngCounter2)

If (cellTMP.Text & "") <> "" Then

blnEmpty = False
Exit For

End If
Next

If blnEmpty Then

Rows((lngCounter - lngRowsDeleted) & ":" & (lngCounter - lngRowsDeleted)).Select
Selection.Delete Shift:=xlUp
lngRowsDeleted = lngRowsDeleted + 1

End If

Next

End Sub
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Moderator
Član broj: 25683
Poruke: 2268
*.bisinter.net.

Sajt: www.gowi.rs


+109 Profil

icon Re: kako izbrisati svaki n-ti red / kolonu15.10.2008. u 08:19 - pre 188 meseci
Kratak odgovor bio bi DA.

Malo duži. Program ima dve petlje jednu po redovima i drugu po kolonama. Unutrašnja petlja, po kolonama, proverava svaku ćeliju tekućeg reda u kolonama 1 do COLUMN_COUNT da li je prazna. Ukoliko su sve ćelije u ovim kolonama prazne taj red se briše. To znači da sa konstantom COLUMN_COUNT određuješ oblast koja se pretražuje da vidiš da li red treba brisati ili ne. To jest, ako odlučiš da brišeš red ako su prve dve kolone u tom redu prazne stavićeš COLUMN_COUNT = 2 i red će biti obrisan čak i ako ima nešto uneto u koloni 3 ili 10.
Spoljna petlja, po redovima, jednostavno prolazi kroz sve redove od 1 do ROW_COUNT, red po red, u potrazi za redom koji treba da se briše. Dakle ako je tvoja oblast do 5000 možeš da staviš 5000 za ROW_COUNT, ali i ne moraš. U tom slučaju višak redova (koji su prazni) će biti izbrisani i nadoknađeni praznim redovima sa kraja tabele, tako da će se jedino izgubiti neko vreme u obradi.

Ukoliko imaš neku kolonu za koju znaš da mora biti popunjena ukoliko red nije prazan, onda ti unutrašnja petlja nije nephodna i možeš provaravati samo ćeliju u toj koloni da li je prazna. Za određivanje poslednjeg popunjenog reda u tom slučaju možeš primeniti sledeći kod, tako da nije potrebno zadavanje ROW_COUNT u kodu nego se on izračuna.
Code:
ROW_COUNT = Cells(65535, cl).End(xlUp).Row 

gde je cl kolona koja je sigurno popunjena. Pri tome ROW_COUNT mora se deklarisati kao promenljiva, a ne kao konstanta jer se menja u kodu.

Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

3okc
Χoᴘᴦoѡ

Moderator
Član broj: 811
Poruke: 1319

Jabber: 3okc@elitesecurity.org


+116 Profil

icon Re: kako izbrisati svaki n-ti red / kolonu16.10.2008. u 15:59 - pre 188 meseci
Postoji i rešenje BEZ makroa. U kontrolnu kolonu upiši formulu
Code:
=MOD(ROW();54)=0

i pomoću AutoFiltera onda izdvoji sve redove koji su TRUE, pa Delete Entire Row.

Savet1: Primer koji sam ti postavio, označava svaki 54. red, počev od 1. Ako ti treba sa nekim OFFSET-om, samo stavi umesto =0 neki broj do 53.

Savet2: Pre filtriranja poništi formule (COPY /Paste Values) da ti ne uspori pri filtriranju.

..that's easy. ;)
Have you found helpful examples, solutions or ideas-in-work, please consider the
following:
• Citation of *actual page* you are going to using is welcome.
• Have you saw "Value Added" examples you are going to incorporate to your
profitable blog, daily job or any money making venture: How about online donation?
↗Ana & Vlade Divac Foundation
Hvala!
 
Odgovor na temu

[es] :: Office :: Excel :: kako izbrisati svaki n-ti red / kolonu

[ Pregleda: 4735 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.