Imam veliko količino podatkov ki sem jih v del. list napolnil z SQL poizvedbo.
to so podatki
nap.
datum , mat_sredstvo, cena , količina itd..
Sedaj bi rad naredil da bi mi iz lista 1 naredil toliko novih delovnih listov kolko je različnih artiklov.
Ob vsaki spremembi artikla bi podatke prenesel na nov delovni list
Tako bi na vsakem del. listu rad imel samo izbran artikel.
Ker je teh različnih artiklov veliko (450) bi rad to nekako avtomatiziral.
Kaj mi svetujete, kako se tega lotiti.
Hvala
Delovni listi
Tako kot je že admin povedal. Za spremembe bi pa jaz predlagal, da na novem listu, ne bi bil izpisan izdelek kot besedilo ampak bi ga funkcija pobrala iz prvega lista. Poskusite posneti makro in ga prilagoditi. Ko pa se bo zataknilo povejte.
Lahko pa vam jaz spišem, samo povejte mi točno koliko je podatkov in to...
Lahko pa vam jaz spišem, samo povejte mi točno koliko je podatkov in to...
[img]http://shrani.si/f/3t/YL/4W2P37B9/office.gif[/img]
[img]http://shrani.si/f/12/aa/1rt1wj6i/1/userbardionaea.gif[/img]
[img]http://shrani.si/f/3D/nN/3RQySBCl/vista-copy.gif[/img]
[img]http://shrani.si/f/12/aa/1rt1wj6i/1/userbardionaea.gif[/img]
[img]http://shrani.si/f/3D/nN/3RQySBCl/vista-copy.gif[/img]
Kakršenkoli namig vam težko dam, ker ne vem koliko poznate programiranje. Sam algoritem pa je preprost:
- Sortirajte podatke
- V zanki se sprehodite od prvega do zadnjega zapisa
- Če je prebran zapis drugačen od prejšnjega odprite nov list in podatke pišite vanj sicer podatke pišite v trenuten list.
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Če prav razumem je rešitev nekaj v tem smislu:
Zgornja koda vam pogleda v "aktivno" vrstico ter preveri če je polje A prazno. Če je prazno gre ven sicer nadaljuje, ustvari nov list in v celico A1 zapiše funkcijo =Glavni!A1 , ki prevzame vrednost celice A1 na listu "Glavni". Za več celic si kodo prilagodite
Koda: Izberi vse
Dim i
i = 1
Do While Not Cells(i, 1).Value = "" 'če prva vrstica ni prazna nadaljuj
ThisWorkbook.Sheets.Add , Sheets(1)
Cells(1, 1).formula = "=Glavni!A" & i
i = i + 1
ThisWorkbook.Sheets(1).Select
Loop
[img]http://shrani.si/f/3t/YL/4W2P37B9/office.gif[/img]
[img]http://shrani.si/f/12/aa/1rt1wj6i/1/userbardionaea.gif[/img]
[img]http://shrani.si/f/3D/nN/3RQySBCl/vista-copy.gif[/img]
[img]http://shrani.si/f/12/aa/1rt1wj6i/1/userbardionaea.gif[/img]
[img]http://shrani.si/f/3D/nN/3RQySBCl/vista-copy.gif[/img]