[ ib.kroki @ 02.10.2012. 10:53 ] @
Imam xls dokument koji je baza poručenih artikala.
Da li postoji mogućnost da se automatski iz pomenutog dokumenta dobiju novi doc dokumentu koji bi bili Otpremnica (ako ne može doc u obzir dolazi i pdf jer bi se radilo na Office 2010).

Dostavljam xls primer.

- Koliko ima različitih REFERENCI toliko bi trebalo da se dobije novih doc fajlova.
- Svi novi fajlovi imaju različit broj artikala koji bi se prikazivali u tabeli.
- Datumi, Referenca i Naziv klijenta bi se pojavili samo jednom na novom dokumentu na određenom mestu.

P.S.
Ne poznajem VBA pa zato pitam da li postoji mogućnost.


EDIT:
Evo i primer kako bi trebao da izgleda doc fajl. Sve što je crveno povlači se iz xls fajla.




[Ovu poruku je menjao ib.kroki dana 02.10.2012. u 12:38 GMT+1]
[ ib.kroki @ 02.10.2012. 12:21 ] @
Razmišljam ...
Može li na drugom listu da se napravi šablon otpremnice. Makro da povlači podatke iz baze, štampa u pdf i tako dok ne odradi.
Možda pričam gluposti jer ne poznajem mogućnosti VBA.
???
[ FOX028 @ 02.10.2012. 12:26 ] @
to bi moglo, i mislim da bi bilo najpametnije resenje. Napravi sablon tvoje otpremnice pa cemo pokusati da odradimo ostalo.
[ 3okc @ 02.10.2012. 13:05 ] @
Koliko mogu da vidim iz Šablona, ovo je isto kao da štampaš fakturu iz xls, npr u pdf; sve možeš da završiš formatiranjem u Excelu i "SaveAs pdf" - ne vidim ni jedan razlog da se pravi doc fajl.

Na Ozgridu imaju parče koda (piše da je već 'preuzeto' pa može i ovde): Creating a Word Document with Excel VBA
Code:

Sub CreateNewWordDoc()
     ' to test this code, paste it into an Excel module
     ' add a reference to the Word-library
     ' create a new folder named C:\Foldername or edit the filnames in the code
    Dim wrdApp As Word.Application
    Dim wrdDoc As Word.Document
    Dim i As Integer
    Set wrdApp = CreateObject("Word.Application")
    wrdApp.Visible = True
    Set wrdDoc = wrdApp.Documents.Add
     ' or
     'Set wrdDoc = wrdApp.Documents.Open("C:\Foldername\Filename.doc")
     ' sample word operations
    With wrdDoc
        For i = 1 To 100
            .Content.InsertAfter "Here is a sample test line #" & i
            .Content.InsertParagraphAfter
        Next i
        If Dir("C:\Foldername\MyNewWordDoc.doc") <> "" Then
            Kill "C:\Foldername\MyNewWordDoc.doc"
        End If
        .SaveAs ("C:\Foldername\MyNewWordDoc.doc")
        .Close ' close the document
    End With
    wrdApp.Quit ' close the Word application
    Set wrdDoc = Nothing
    Set wrdApp = Nothing
End Sub
[ ib.kroki @ 02.10.2012. 13:18 ] @
@3okc
Ma ne pomaže meni ovo ništa, VBA ne poznajem uopšte tako da ne bih umeo ništa primeniti.
A što se tiče formata, ne mora doc, može i pdf.
Napisao sam doc jer se sve ovo radi ručno iz xls u doc.


@FOX028
Pogledaj da li se može šta uraditi.


U međuvremenu sam malo doradio i sredio bazu, a evo i list koji je šablon otpremnice.
Ubacio sam heder i futer u otpremnicu.

Ključ za otpremnicu je REFERENCA.
Broj Referenci varira, ide od 1 pa do 100.
Žuta polja u otpremnici bi trebalo da se povuku iz lista baza, a tabela bi imala redova koliko i artikala referenca za koju se izrađuje otpremnica. Za otpremnicu Reference 1 imaju 3 reda, Referenca 2 ima 6 redova, Referenca 3 ima 1 red.
Broj otpremnica je koliko ima različitih referenci u bazi (u ovom primeru trebalo bi uraditi tri otpremnice), format A4.


Unapred hvala ...
[ ib.kroki @ 03.10.2012. 12:28 ] @
@3okc
Gledao sam ovo, nije primenjivo.

@FOX028
Postoji li, što bi političari rekli, održivo rešenje?
[ FOX028 @ 03.10.2012. 12:43 ] @
Pa sad ako bi hteo odrzivo resenje, ja bi to sve odradio u Access-u, jednostavnije je za koriscenje i preglednije za razliku od Excel-a, a posto ce se raditi u novijem Office-u 2007 postoji dodtana Microsoft-ova alatka za snimanje u PDF-u

http://www.microsoft.com/en-us/download/details.aspx?id=9943
[ ib.kroki @ 03.10.2012. 12:55 ] @
U Accessu znam da uradim, ali ne odgovara.
Ovo radim za ženu, video sam pre neki dan da se pati i "čekića" ručno sa copy paste pa bih da joj malo olakšam posao. Mora Excel, tako rade u firmi i nema menjanja, jbg.
Znam za ovaj dodatak, ali ne umem macro da napravim koji bi povlačio robu iz baze.
Ako može nešto datse nabudži u excelu i da se dobijaju pdf fajlovi, bilo bi od velike koristi.
Da li je izvodljivo?

P.S.
Koristi Office2010.
Da li treba instalirati ovaj dodatak ili 2010 već ima opciju da snimi kao pdf?
[ 3okc @ 03.10.2012. 13:18 ] @
Koliko se sećam, imala ga je i v2007, možda samo inicijalno nije ali zato već od sledećeg SP bi trebalo da jeste (piše Date published: 11/8/2006).
Svejedno, pošto si rekao da doc ne mora ja ne vidim šta se dalje traži?! Samo ideš na SaveAs PDF u tom listu koji si spremio za štampu (tj tvoja žena). Ako ti(joj) to treba eno imaš gotov primer fakture među TOP temama, poslednja poruka.
[ ib.kroki @ 03.10.2012. 13:55 ] @
^ Ali u xls bazi nekada ima i do 500 redova i do 100 referenci pa je to sve veliki smor copy paste (pogledaj bazu iz koje se vuku podaci, nije primenjiva priča o pomenutoj fakturi jer se dobije xls kao list baza pa iz njega se prave otpremnice).

@FOX028
Kako ja ne poznajem VBA, uradio sam jedno rešenje što bi ja rekao uz pomoć štapa i kanapa.
U bazu sam ubacio dve pomoćne kolone TMP1 i TMP2, a u otpremnici sve što je plavo treba da bude sakriveno.

Ne treba više da radi copy paste, ima ručnog posla ali dosta manje.
Potrebno je da u listu otpremnica odabere referencu iz opadajućeg menija, kada to odabere pojave se svi ostali elementi i uradi SAVE AS u PDF.

Ovo rešenje nije "održivo".
:)
- Problem je što je otpremnica ograničena na 30 artikala, a zna da ih bude više pa mora pratiti i takve otpremnice da ručno odradi.
- Malo je glupo što će uvek imena primio/predao biti na dnu A4 papira, ali to i nije problem.


[ 3okc @ 03.10.2012. 14:16 ] @
Auu, baza od 500 redova! :o ...Šalim se. :-)

Ok, ne možeš 30 stavki jednu ispod druge pa ćeš ih sve u istu ćeliju, razdovojene zarezima. Pa jel' može onda makro da puni ćeliju izborom sa padajuće liste?
Skoro sam nešto slično video na blogu Debre Dagliš. Evo, pogledaj: Select Multiple Items from Excel Data Validation List
[ ib.kroki @ 03.10.2012. 14:33 ] @
Nisam razumeo ništa.
Možda je problem što ne znam VBA.
Ako može neko da pomogne biće odlično, a za sada je i ovo moje trapavo rešenje bolje i brže od onoa kako je radila do sad.

Ne može sve u jednu ćeliju!
[ Brodoplovac @ 03.10.2012. 20:02 ] @
Ovo je posao za mail merge.

http://cornell.veplan.net/article.aspx?a=3815
[ ib.kroki @ 03.10.2012. 20:41 ] @
Hmmm. Aj da pokušam, ali sumnjam da ću se snaći.

Razmišljao sam o mail merge ali ja znam da napravim doc iz xls kada čitam podatke iz jednog reda, a to ovde nije primenjivo.
[ FOX028 @ 04.10.2012. 10:11 ] @
Odradio sam ti nesto, odradio bi i ranije nego nisam imao bas nesto vremena da se posvetim problemu, ali vazno da je reseno. Ja sam ti odradio da ga exportuje u pdf i to u istom folderu gde ti se nalazi excel fajl sa nazivom Reference
[ ib.kroki @ 04.10.2012. 10:41 ] @
Nisam u prilici da pogledam fajl, neću biti pri računaru do večeras.
HVALA TI!!!
[ ib.kroki @ 04.10.2012. 19:08 ] @
@FOX028

Joj, izvini ...
Nisam bio jasan.

Sad mi krivo, mučiš se radiš a ja kao najveći glupan ne objasnim lepo šta sam zamislio.

Primer koji sam ja postavio nije ono čemu sam težio, to je kako sam najbolje umeo (tj. nisam umeo) ali olakšano u odnosu na ono kako je do sad radila.
Ti si sredio predloženu tabelu, izbacio pomoćne kolone, ispod artikala se upisuje ko je isporučio ... Sve to je odlično i mnogo je naprednije, ali ...

Šta je najveći problem, kada ima 100 referenci potrebno je 100 puta da odabere referencu i da klikne na dugme ...
Da li je izvodljivo napraviti makro koji bi bio povezan sa jednim dugmetom i kada bi se kliknulo da preračuna koliko ima referenci, i da se odrađuje SAVE AS u PDF za sve reference (bez forme za biranje), a da PDF fajlovi imaju isti naziv kao referenca?

Ako nisam bio jasan, molim te nemoj se cimati.




Bila je zadovoljna i mojim trapavim rešenjem, a ovo tvoje je veliki napredak!

Izvini još jednom!!!


EDIT:
Molim moderatore da u naslovu teme DOC preprave u PDF.

[Ovu poruku je menjao ib.kroki dana 04.10.2012. u 20:33 GMT+1]
[ FOX028 @ 04.10.2012. 19:57 ] @
Prepravio sam malo kod, sa sve otpremnice kreira jednim klikom. Proces moze potrajata ako je veci broj stavki u bazi. Jedino sto ces morati rucno je da napravis listu referenci u Sheet-u baza i to pocevsi od polja K5. Mada to mozes i formulama, bitno je samo da postoji lista svih referenci.
[ ib.kroki @ 04.10.2012. 21:03 ] @
Waaaauuuuuu.

Tačno kako sam zamislio.
HVALA!!!

Ostaje mi samo da se šunjam po tvom kodu, ne bi li ga bar malo shvatio jer je dizajn malo promenjen pa da to odradim sam.

Smorio sam te, izvini, za hvala nema ništa da se kupi ...
[ FOX028 @ 04.10.2012. 21:20 ] @
ima, grizini
[ ib.kroki @ 14.10.2012. 13:09 ] @
Evo mene opet.
Problem je rešio @FOX028, a u međuvremenu sam i ja malo čačkao VBA pa sam napravio nešto na svoj način (moj prvi VBA kod).

Od člana @FOX028 pored rešenja dobio sam i literaturu koja mi je bila od velike koristi, kao i dosta saveta preko PP poruka.
Član @neptuncokg poslao mi je svoju literaturu, koja je takođe bila od koristi.

HVALA KOLEGAMA NA NESEBIČNOJ POMOĆI!!!

U prilogu fajl koji sam ja uradio, ako nekom zatreba ...
Popunjava se list BAZA od C do J kolone, kolone A,B i K su formule.
Na listu POMOCNA upisuju se adrese objekata i datumi, a tu se i pokreće makro.

Ovaj fajl se koristi kada se od jednog klijenta dobije trebovanje za više njegovih objekata, pa se iz dobijene tabele automatski urade otpremnice po objektima.

Pre pokretanja fajla potrebno je kreirati folder na C disku pod imenom Otpremnice, tu se snimaju PDF fajlovi.

Pozdrav, nadam se da će nekom biti od koristi.

P.S.
Trenutno je u kodu postavljeno da se u PDF prebacuje pomoću integrisanog alata za Excel 2010, a ima i kod kojim se uz pomoć PDFCreatora može prebacivati u PDF sa Excelom 2003.

Oba makroa pronašao sam ovde na forumu.