Centar za edukaciju-BiH



#1 05.01.2017 14:19
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,807


Predmet:ubacivanje prazne celije radi uskladivanja dvije kolone
ABCD
1borovnicaborovnicaborovnicaborovnica
2brusnicabrusnicasipakbrusnica
3narandamandarinajabuka 
4tresnjatresnjadunjasljiva
5visnjabreskvasljivavisnja
6sljivamarelicavisnjatresnja
7  tresnjabreskva
8sljivamarelicabreskvamarelica
9visnjabreskvamarelica 
10tresnjatresnja marelica
11breskvavisnjamarelicabreskva
12marelicasljivabreskvatresnja
13  tresnjavisnja
14marelicasljivavisnjasljiva
15breskvavisnjasljiva 
16tresnjatresnja sljiva
17visnjabreskvasljivavisnja
18sljivamarelicavisnjatresnja
19  tresnjabreskva
20sljivamarelicabreskvamarelica
21visnjabreskvamarelica 
22tresnjatresnja marelica
23breskvavisnjamarelicabreskva
24marelicasljivabreskvatresnja
25  tresnjavisnja
26marelica visnjasljiva
27breskva sljiva 
28tresnja   
29visnja   
30sljiva   

ubacivanjem praznih kucica treba uskladiti te 4 kolone tako da se podudara niz:
sljiva
visnja
tresnja
breskva
marelica

marelica
breskva
tresnja
visnja
sljiva

rezultat nakon obrade treba izgledati ovako:
ABCD
1borovnicaborovnicaborovnicaborovnica
2brusnicabrusnicasipakbrusnica
3narandamandarinajabuka 
4tresnja dunja 
5visnja   
6sljiva   
7    
8sljiva sljivasljiva
9visnja visnjavisnja
10tresnjatresnjatresnjatresnja
11breskvabreskvabreskvabreskva
12marelicamarelicamarelicamarelica
13    
14marelicamarelicamarelicamarelica
15breskvabreskvabreskvabreskva
16tresnjatresnjatresnjatresnja
17visnjavisnjavisnjavisnja
18sljivasljivasljivasljiva
19    
20sljivasljivasljivasljiva
21visnjavisnjavisnjavisnja
22tresnjatresnjatresnjatresnja
23breskvabreskvabreskvabreskva
24marelicamarelicamarelicamarelica
25    
26marelicamarelicamarelicamarelica
27breskvabreskvabreskvabreskva
28tresnjatresnjatresnjatresnja
29visnjavisnjavisnjavisnja
30sljivasljivasljivasljiva


Prilozi:
Informacije o tipu datoteke za:rar  voce za sorirati.rar
Preuzimanja:363
Velicina datoteke:7.25 KB


zivot je moja domovina.
Ovaj post je ureden 1 puta. Posljednja izmjena 05.01.2017 14:21 od strane Avko. ↑  ↓

#2 05.01.2017 20:27
dex Van mreze
Super Moderator
Registrovan od:23.02.2012
Postovi:625


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
Interesantno.
Koliko sam shvatio kolona A sluzi kao mustra za redjanje.
Imas i voce koga nema u mustri
Vocke kojih nema u mustri ostaju tu gde jesu, ne diraju se
Nije mi jasno zbog cega su tresnje iz B4 otisle u B10 a nisu ostale tu gde su
↑  ↓

#3 05.01.2017 23:02
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,807


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
Citiraj dexxxl:
Interesantno.
Koliko sam shvatio kolona A sluzi kao mustra za redjanje.
Imas i voce koga nema u mustri
Vocke kojih nema u mustri ostaju tu gde jesu, ne diraju se
Nije mi jasno zbog cega su tresnje iz B4 otisle u B10 a nisu ostale tu gde su

morao se postivat niz tresnja, breskva, marelica to je prvi sljedeci niz koji odgovara prvoj koloni

mozda bi bilo ovako lakse:

excel, neslozeno , slozeno
nije stala tabla u post pa sam prikvacio

Prilozi:
Informacije o tipu datoteke za:rar  voce za sorirati.rar
Preuzimanja:376
Velicina datoteke:10.01 KB
Informacije o tipu datoteke za:rtf  neslozeno.rtf
Preuzimanja:358
Velicina datoteke:46.36 KB
Informacije o tipu datoteke za:rtf  slozeno.rtf
Preuzimanja:377
Velicina datoteke:46.50 KB


zivot je moja domovina.
Ovaj post je ureden 5 puta. Posljednja izmjena 06.01.2017 13:55 od strane Avko. ↑  ↓

#4 06.01.2017 16:29
dex Van mreze
Super Moderator
Registrovan od:23.02.2012
Postovi:625


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
Malo jasnije. Ipak mislim da je tresnja iz B4 trebala tu ostati jer je vec bila uz tresnju u A4, bar je tako po algoritmu koji mislim primeniti.
Kako sam razumeo kolonu A ne diramo, vec po njoj slazemo ostale?
↑  ↓

#5 06.01.2017 23:19
dex Van mreze
Super Moderator
Registrovan od:23.02.2012
Postovi:625


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
Na ovom principu bi moglo da profinkcionise
Nisam imao ideju kako da prekinem izvrsavanje u koloni, pa sam postavio brojac

Prilozi:
Informacije o tipu datoteke za:zip  TresnjaDex.zip
Preuzimanja:357
Velicina datoteke:16.36 KB

↑  ↓

#6 09.01.2017 11:43
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,807


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
ok , probacu kako radi kad stignem, a sada jedno pitanje
Vidim da ti prvo stavis funkciju, a onda kod. Kod zxz je obrnuto . On stavlja funkcije na kraju. Mozda je tvoj nacin bolji jer prvo imas funkcije na uvid pa pregledas kod, a mozda je stvar navike kako se tko navikne. Dobro, to nije pitanje to je komentar.

1. ono for m=1 to 5 je ukupno u nizu , imamo sljiva,visnja,tresnja,breskva,marelica 5 stvari. Znaci ja ako imam vise tih u nizu onda stavim veci broj, jel tako?

2. for i=1 to 40 je vjerojatno brojac o kojem si govorio. Malo kad cu isprobavati kod , ali za sada pretpostavljam da bi trebao broj biti puno veci zbog pomicanja celija prema dole?

PreuzmiIzvorni kôd (Visual Basic):
  1. Public Function Unizu(S As Range) As Boolean
  2.  
  3. Dim Nizz As Range
  4. Set Nizz = Range("M16", Range("M16").End(xlDown)) 'gde su celije za proveru
  5.  
  6. Unizu = False
  7.  
  8. For Each st In Nizz.Cells
  9.   If (S = st) Then
  10.   Unizu = True
  11.   GoTo kraj
  12.   End If
  13. Next st
  14. kraj:
  15. End Function
  16.  
  17. Public Sub slozi()
  18.  
  19. Dim r As Range
  20. Dim uzorak As Range
  21. Dim selekcija As Range
  22. Dim pocetna As Range
  23.  
  24. Set pocetna = Range("B2") 'odakle krece
  25. Set uzorak = Range("A2") 'prva celija sa kojom uporedjujemo
  26.  
  27. For m = 1 To 5
  28.     Set r = pocetna
  29.     For i = 1 To 40
  30.         If Unizu(r) Then     'proveravamo da li se vocka nalazi u grupi za slaganje
  31.  
  32.             Do Until r = uzorak
  33.                 Set selekcija = Range(r, r.End(xlDown)) 'pomeramo celiju i sve povezane
  34.                selekcija.Select                        'ispod nje za po jedno mesto na dole
  35.                Selection.Cut
  36.                 ActiveCell.Offset(1, 0).Range("A1").Select
  37.                 ActiveSheet.Paste
  38.                 Set uzorak = uzorak.Offset(1, 0)         'pa uzimamo sledecu ispod za uporedjivanje
  39.                                            'i tako dok ne poklopimo sa prvom kolonom
  40.            Loop
  41.         End If
  42.  
  43.         Set r = r.Offset(1, 0)
  44.         Set uzorak = uzorak.Offset(1, 0)
  45.  
  46.     Next i
  47.     Set pocetna = pocetna.Offset(0, 1) 'prelazak na sledecu kolonu
  48.    Set uzorak = Range("A2")
  49. Next m
  50. End Sub

ovo Offset mi je strano, ali o tome cemo drugi puta, za sada cu to samo prepisati bez pameti
hvala.
zivot je moja domovina.
Ovaj post je ureden 1 puta. Posljednja izmjena 09.01.2017 13:23 od strane Avko. ↑  ↓

#7 09.01.2017 17:53
dex Van mreze
Super Moderator
Registrovan od:23.02.2012
Postovi:625


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
Citat:
ono for m=1 to 5 je ukupno u nizu , imamo sljiva,visnja,tresnja,breskva,marelica 5 stvari. Znaci ja ako imam vise tih u nizu onda stavim veci broj, jel tako?
netacno, tu se prebacuje u sledecu kolonu, trebalo je da stoji od 1 do 3 posto imas tri kolone (kolonu A ne racunamo posto ona sluzi kao uzorak za slaganje), a ako ih ima vise, onda u kodu promeniti koliko ih ima.

Citat:
2. for i=1 to 40 je vjerojatno brojac o kojem si govorio. Malo kad cu isprobavati kod , ali za sada pretpostavljam da bi trebao broj biti puno veci zbog pomicanja celija prema dole?
Tacno. Nisam znao kako da prekinem kod, pa sam stavio brojac. ako postavis broj koji je jednak (ili veci) od broja redova sigurno prolazi

Citat:
Vidim da ti prvo stavis funkciju, a onda kod. Kod zxz je obrnuto .
Sasvim je svejedno. Funkcija se poziva iz procedure. Mogla je cak i da se stavi u drugi modul i opet da se poziva izprocedure (naravno, mora da bude public)

Funkcija moze da radi i nezavisno, a sluzi da proveri da li se celija nalazi u zadatom nizu. Vraca TRUE ili FALSE u zavisnosti od toga. Ovde u kodu stoji M16 jer je to prva celija niza, a nizom se smatra sve ispod nje do prve prazne. Znaci mozes ispod da dodas jos vockica, funkcija i dalje radi, a sama funkcija moze da radi i nezavisno ako zelis da proveris da li sadrzaj neke celije pripada nizu.

A da pojasnimo kako radi procedura
Krecemo od celije B2, proveravamo da li pripada nizu. Ako ne pripada ne radimo nista, prelazimo na celiju ispod.
Ako pripada proveravamo da li se njen sadrzaj poklapa sa celijom levo u koloni A.
Ako se poklapa opet ne radimo nista, idemo na sledecu ispod.
Ako se ne poklapa selektujemu nju i sve ispod nje do prve prazne i pomeramo za jedno mesto na dole, i tako sve dok je ne poklopimo sa odgovarajucom iz kolone A. Moramo svaki put iznova da selektujemo, jer smo pomeranjem nadole mozda zalepili za oblast ispod pa nem se oblast koju pomeramo povecala.

Citat:
ovo Offset mi je strano, ali o tome cemo drugi puta, za sada cu to samo prepisati bez pameti

Offset pomera izabranu celiju ili oblast prvi argument za koliko redova nadole, drugi za koliko kolona udesno
ako stavis sa minis pomera nagore, odnosno ulevo
↑  ↓

#8 09.01.2017 20:05
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,807


Predmet:Re: ubacivanje prazne celije radi uskladivanja dvije kolone
ovako detaljno mi jos nitko nije objasnio. hvala jos jednom preostaje mi malo igranja sa kodom. ono za funkcije da se mogu staviti u modul i pozivati me narocito zainteresiralo. do sada sam kopirao finkciju zadnjiRed () u svaki modul i pozivao. sada cu probati stavljati funkcije u jedan modul mada se bojim da se na kraju necu snaci u tome svemu
zivot je moja domovina.
↑  ↓

Stranice (1):1


Sva vremena su GMT +01:00. Trenutno vrijeme: 12: 06 am.