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

print preview iz vb za excel fajl

[es] :: Visual Basic 6 :: print preview iz vb za excel fajl

Strane: 1 2 3

[ Pregleda: 8039 | Odgovora: 46 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

draganchem
Dragan M
Novi Sad

Član broj: 156778
Poruke: 35
*.dynamic.sbb.rs.



Profil

icon print preview iz vb za excel fajl24.03.2009. u 21:55 - pre 182 meseci
Moze li neka pomoc oko print preview-a iz vb6 za excelov fajl? Pokusavam ali nece pa nece!
Dobro pazi sta zelis, mozda ti se zelja i ostvari!
 
Odgovor na temu

djpero.84
Pero Knezevic
Prijedor

Član broj: 120188
Poruke: 190
92.241.146.*

Sajt: www.littlefrog.ba


Profil

icon Re: print preview iz vb za excel fajl04.04.2009. u 17:09 - pre 182 meseci
1. Dodaj reference
Project -> References -> Microsoft Excel 12.0 Object Library (zavisi koji Office koristis, ovo je 2007 verzija)
2. I jedan Command button sa ovim kodom

Code:
Excel.Application.Visible = True
Excel.Application.Workbooks.Add
Excel.Application.ActiveCell.Value = "a"
Excel.Application.ActiveWorkbook.PrintPreview
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
77.46.197.*



+5 Profil

icon Re: print preview iz vb za excel fajl12.07.2009. u 23:47 - pre 179 meseci
vidoh ovu temu koja je slicna onome sto ja zelim pa cu vas zamoliti da mi pomognete
ja imam neke proracuune a reultati su prikazani u tex box -vima i iste bih zeleo sacuvati u excel-u
nasao sam kod za kreiranje xls fajla ali ne i upisa u njega
moze li mi neko reci kako upisati i podesiti tacno gde ja hocu na listu papira gde ce se postaviti neki broj
p.s.nesto slicno sa ovim kodom,ali sta ako ovo "a" zelim da pomerim na nekoj drugom mestu u okviru excel-a
hvala
 
Odgovor na temu

dzigilibonglica
NS

Član broj: 200040
Poruke: 294



+17 Profil

icon Re: print preview iz vb za excel fajl13.07.2009. u 10:56 - pre 179 meseci
Pozdrav!

Evo ti jedan moj kod, malo ga izmenjaj, ali ti to sve treba raditi...
Isto dodaj sta treba u references, imas gore sta treba. Da li je verzija 12 ili neka druga to ti zavisi od tvog Office-a. Ja ovde neki recordset iz baze prebacujem u excel, s'tim sto ga ja ubacujem u Excell template i to od 12-tog reda(stoga ono i+12, da te ne zbuni...)


Code:

Private Sub ExportExcell()

Dim RezultatExport as ADODB.Recordset
Dim i, Broj as Integer

Dim aplikacija As Excel.Application
Dim wSheet As Worksheet
Dim wBook As Workbook

On Error Resume Next
 
    Set RezultatExport = New ADODB.Recordset
    RezultatExport.CursorType = adOpenDynamic
    RezultatExport.CursorLocation = adUseClient
    RezultatExport.LockType = adLockOptimistic
    

        
    Set aplikacija = CreateObject("Excel.Application")
    Set wBook = aplikacija.Workbooks.Add(App.Path & "\Templates\Report.xlt")
    Set wSheet = aplikacija.Sheets(1)
    
    Err.Clear
    RezultatExport.Open UpitS, baza, , adCmdTable
    Broj = RezultatExport.RecordCount

    For i = 0 To Broj - 1
        If i = 0 Then
            RezultatExport.MoveFirst
        Else
            RezultatExport.MoveNext
        End If
        
        wSheet.Cells(i + 12, 1).Value = (i + 1)
        wSheet.Cells(i + 12, 2).Value = (RezultatExport.Fields.Item(0).Value)
        wSheet.Cells(i + 12, 3).Value = (RezultatExport.Fields.Item(1).Value)
        wSheet.Cells(i + 12, 4).Value = (RezultatExport.Fields.Item(2).Value)
        wSheet.Cells(i + 12, 5).Value = (RezultatExport.Fields.Item(3).Value)
        wSheet.Cells(i + 12, 6).Value = (RezultatExport.Fields.Item(4).Value)
        wSheet.Cells(i + 12, 7).Value = (RezultatExport.Fields.Item(5).Value)
        wSheet.Cells(i + 12, 8).Value = (RezultatExport.Fields.Item(6).Value)
        wSheet.Cells(i + 12, 9).Value = (RezultatExport.Fields.Item(7).Value)
        wSheet.Cells(i + 12, 10).Value = (RezultatExport.Fields.Item(8).Value)
        wSheet.Cells(i + 12, 11).Value = (RezultatExport.Fields.Item(9).Value)
        wSheet.Cells(i + 12, 12).Value = (RezultatExport.Fields.Item(10).Value)
        wSheet.Cells(i + 12, 13).Value = (RezultatExport.Fields.Item(11).Value)
        wSheet.Cells(i + 12, 14).Value = (RezultatExport.Fields.Item(13).Value)
        wSheet.Cells(i + 12, 15).Value = (RezultatExport.Fields.Item(14).Value)
        
        frmPoruka.Label4.Caption = CStr(i + 1) & "/" & CStr(Broj)
        frmPoruka.Label4.Refresh
    Next i

    If Err.Number <> 0 Then
        
        Me.Visible = True
        aplikacija.Quit
        Call MsgBox("Greska sa Excel-om", vbOKOnly)

    Else
        
        Me.Visible = True
        aplikacija.Visible = True
        aplikacija.ShowMe
        
        Set aplikacija = Nothing       'ovo je samo da se EXCELL Odkaci od programa i bude zasebno, pa tvoj program moze dalje saam da pici i radi sta treba
    End If
End Sub
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
91.150.97.*



+5 Profil

icon Re: print preview iz vb za excel fajl13.07.2009. u 23:30 - pre 179 meseci
hvala ti ali cu te zamoliti da mi samo objasnis sta i kako radi, meni je recimmo od samog pocetka nejasno:

kako se export prikazuje kada nemammo umesto Private Sub ExportExcell() ono Click (dugme)

kapiram da se upisuje od 12 polja ali ne znam sta, odnsono sta pises u excel, kako definises sta ces da upisujes???Kapiram i ovo RezultatExport.Fields.Item(1).Value ali ne znam sta je to, kao neki report (!?)

jel ti nije problem da okacis taj primer (delimicno, samo pisanje u excel) bice mi lakse da provalim sta kako radi

hvala jos jednom i na ovome
 
Odgovor na temu

dzigilibonglica
NS

Član broj: 200040
Poruke: 294



+17 Profil

icon Re: print preview iz vb za excel fajl16.07.2009. u 09:05 - pre 178 meseci
Sorry na kasnjenju, ali ja sam malo na odmoru.

Evo ovako druze: Ako hoces da ti to radi kada pritisnes neko dugme ima dva nacina da to uradis:

1) Stavis u dogadjaj Click nekog dugmeta ceo ovaj kod koji se nalazi izmedju <Private Sub ExportExcell()> i <End Sub>
2) Ostavish ovu proceduru kakva jeste, a u dogadjaju Click nekog dugmeta ubacis sledecu liniju <Call ExportExcell>


U sustini, dao sam ti primer iz jednog tekuceg projekta, ali da bih ti objasnio kako excell radi, evo ovako:


Najvaznije ti je sledece:
Code:

Dim aplikacija As Excel.Application 'definisanje objekta excell aplikacje
Dim wBook As Workbook 'Definisanje excell dokumenta
Dim wSheet As Worksheet ' Definisanje stranice-sheeta


Znaci treba ti aplikacija tipa Excell koja radi pod kontrolom VB-a, to ti je objekat aplikacija, treba ti neki dokument za Excell(wBook) i worksheet(znas da u Excell-u imas dole u levom uglu 3 sheeta)

Sada kako se ovi objekti definisu:

Code:

Set aplikacija = CreateObject("Excel.Application") 'Napravi ti excell aplikaciju u pozadini koja radi pod kontrolom VB-a
Set wBook = aplikacija.Workbooks.Add(App.Path & "\Templates\Report.xlt") 'Ova linija otvara neki Excell template
Set wSheet = aplikacija.Sheets(1)  'Ova linija podesava Focus na prvi sheet excell dokumenta


E sad napravili smo aplikaciju i ucitali neki dokument, tj napravili smo novi dokument na osnovu template-a. Ja cesto koristim ove .XLT template-ove za excell jer prvo sve lepo ispodesavam na dokumentu, ubacim logo,itd... pa samo na taj gotov sablon upisujem sta treba...Moze i da se pravi novi dokument za excell, ali je mnogo lakse kada prvo u Excell-u napravish neki template, i samo ga ucitavas(gnjavaza je iz VB-a podesavati sirinu polja, linije franica itd...)



Upis u excell:

Generalno: wSheet.Cells(BrojReda, BrojKolone).Value = VrednostKojaSeUpisuje
Moj Primer: wSheet.Cells(i + 12, 2).Value = (RezultatExport.Fields.Item(0).Value)

Dalje, da ti sve to prikaze kada lepo upisesh svoje vrednosti u Excell:
Code:

 aplikacija.Visible = True 'Excell je visible
 aplikacija.ShowMe   'Excell se sada prikaze preko tvog programa
 Set aplikacija = Nothing 'Excell se sada otkaci od tvog programa




Eto, nadam se da sada nije nejasno,Pozdrav!




 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
93.86.153.*



+5 Profil

icon Re: print preview iz vb za excel fajl16.07.2009. u 23:25 - pre 178 meseci
:) ali moram opet...
ovako,gotovo da sve kapiram i jasno mi je kako to funkcionise ali:
1) sta kada se dokument treba sacuvati na dugme "sacuvaj" / on ce uvek taj jedan isti prekopirati a meni je potrebno da se svaka izmena, svaki put na "sacuvaj" kreira NOVI xls koji a koji ce da se kreira tako sto ce imati promenljivu - vreme (sec) u svom imenu. Kako sam ja to zamislio i do negde uspeo srediti stvar, primer (sa komentarima koji mi prave problem):

Code:
Private Sub Command1_Click()
Dim ApExcel As Object 'To open Excel
Dim ime As String
Dim sacuvaj As Object / ovo ne radi kako sam ja zamislio
ime_fajla = Format(Date, "dd.yyyy.mm")  / ovde samo trebam ubaciti i vreme + sec
Open "C:\proba\" & ime & ".xls" For Append As #1
Set ApExcel = CreateObject("Excel.application") 'Creates an object
ApExcel.Visible = True ' So you can see Excel
ApExcel.Workbooks.Add 'Adds a new book.
ApExcel.cells(1, 1).Formula = Text1.Text 'Add Text to a Cell / ovde mogu definisati u kom polju ce koji tekst biti ispisan ali ne i njegovo formatiranje (sirenje celija, definisanje boje pozadina i t.d)
'You can use the line above, changing coordenates to go to any
'cell and you can also add Formulas
ApExcel.Range("A1:D2").BORDERS.Color = RGB(0, 0, 0) 'Use it to
'change the borders. / ovde umesto BORDERS ako upisem BACKGROUND ne funkcionise :D
ApExcel.Columns("A:AY").EntireColumn.AutoFit 'To adjust the
'column's width.
ApExcel.Selection.NumberFormat = "0" 'Adding different formats
sacuvaj.Save / ovo takodje ne radi :D
End Sub


Dakle kao sto mozes videti napredovao sam :D ali...

1) Korisnik preko comboa odabere parametre
2) Parametri (brojevi) se medjusobno mnoze,dele,sabiraju i t.d.
3) Dobijeni rezultat zajedno sa odabranim parametrima trebam na "SACUVAJ" sacuvati u xls na mestima gde ja zelim zajedno sa opcijama formatiranja (sirenje celija, definisanje boje pozadina i t.d)
4) Posle "SACUVAJ" automatski se predhodno otvoren excel dokument gasi pod imenom datum.mesec.godina.sat.minut.sekunda

Sve ovo osim SAVE-a i formatiranja umem da uradim a tvoj predlog sa sablonom mi deluje BAS ono sto mi treba ali:

1) Sablon je tamo negde u TEMP-u ???
2) Da li postoji opcija kreiranja istog a smestiti ga u zeljenom folderu a da taj sablon aplikacija vuce kao default, upise podatke i sacuva pod novim imenom ???


znam da davim ali zaista mi treba pomoc, vapim za istim na svim forumima i ne trazim gotov kod
pozdrav

[Ovu poruku je menjao miki987 dana 17.07.2009. u 00:37 GMT+1]
 
Odgovor na temu

dzigilibonglica
NS

Član broj: 200040
Poruke: 294



+17 Profil

icon Re: print preview iz vb za excel fajl17.07.2009. u 17:35 - pre 178 meseci
Pazi procitaj moj prvi post na ovu temu, i uradi ono sa EXCELL-om bas kao sto sam ja napisao.
Tu imas da ti je sablon u App.Path & "\Templates", sto znaci "PutanjaTvogExeFajla\Templates\ImeSablona.xlt". Kakav temp, nema temp. U excelu otvoris nov dokument, i kada ga napravis, odesh na SaveAs, odaberesh ekstenziju, i snimis ga pod kojim hoces imenom gde hoces, posle ga isto tako iskopirash gde hoces(najjednostavnije, napravish dir Templates tamo gde ti je EXE tvoje aplikacije).

Kada uradish add metod u Excellu, pogledaj moj primer, on ne otvara taj xlt fajl vec ti napravi novi fajl iz njega i to xls, koji kasnije mozes da sacuvas kako hoces.


Metod je sledeci:
Code:

wBook.SaveAs ime_fajla

 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
77.46.217.*



+5 Profil

icon Re: print preview iz vb za excel fajl18.07.2009. u 00:22 - pre 178 meseci
druze uspeo sam napraviti ono sto sam zeleo osim opcije SAVE:
evo kako izgleda poslednja nekoliko reda bez ovoga

Code:
wBook.SaveAs ime_fajla


vec ovako

Code:
aplikacija.Visible = True 'Excell je visible
aplikacija.ShowMe   'Excell se sada prikaze preko tvog programa
Set aplikacija = Nothing 'Excell se sada otkaci od tvog programa

ime_fajla = Format(Date, "dd.yyyy.mm")
wBook.SaveAs ime_fajla = App.Path & "\Templates\" & ime_fajla & ".xls"

End Sub


ali ne funkcionise
znaci zeleo bih da svaki put kada kreira dokument od templejta isti kreira sa imenom datuma a posto sam provalio da VB ne moze direktno automatski (pozivom neke funkcije) sacuva (SAVE) dokument ostaje mi da rucno na precicu iz otvorenog EXCEL-a sejvujem ali to nije problem, ovo mi je najbitnije dakle da se ime fajla zove danasnji datum
 
Odgovor na temu

dzigilibonglica
NS

Član broj: 200040
Poruke: 294



+17 Profil

icon Re: print preview iz vb za excel fajl18.07.2009. u 07:43 - pre 178 meseci
Vidim u cemu je problem. Ne mozes da sacuvas jer ti je obrnut redosled, odnosno otkacio si se od aplikacije, a ona radi proces SaveAs na wBook-u. Druga bitna stvar: ime_fajla mora da bude cela putanja sa sve imenom i extenzijom!

U wBook.SaveAs mora da ima samo jedna string promenjiva bez ikakvih jednakosti.

Evo ispravio sam ti, zameni onaj deo koda koji si mi postovao ovim kodom i radice sve STO %! Malu sam ti izmenu napravio kod imena fajla. Naime izbegavaj tacke u imenima fajla jer Excell nece znati koja je extenzija, glup je taj excell :)
Takodje sam ti obrnuo redosled godine,meseca i dana jer ces tako imati u folderu poredjane fajlove vremenski onako kako su nastajali.

Code:


ime_fajla = App.Path & "\Templates\" & Format$(Date, "yyyymmdd") & Format$(Time$, "HHMMSS") & ".xls"
wBook.SaveAs (ime_fajla)


aplikacija.Visible = True 'Excell je visible
aplikacija.ShowMe   'Excell se sada prikaze preko tvog programa
Set aplikacija = Nothing 'Excell se sada otkaci od tvog programa

End Sub


Javi ako si resio problem.
POZDRAV!
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
79.101.75.*



+5 Profil

icon Re: print preview iz vb za excel fajl18.07.2009. u 18:59 - pre 178 meseci
haha kako je prosto kad covek vidi goov kod :DDD a veruj mi pokusavao sam sve pa cak i ovo, i dok sam citao ovu poruku vec sam se pripremao odgovoriti kako nece ali ajde da probam kad ono radi :DD ali dobro, pocetnik jesam i misli mda sada kada kapiram mogu da brzo savladam jos toga
tebi druze hvala puno, sory zbog cimanja

eh da zavoravih jel sam do sada ignorisao msg nakon otvaranja excela, ovo mi pojavljuje kao problem

Run - time error '438'
Object doesn't support this property or method

U References sam cekirao MS EXCEL 12.0 Object Library
Koristim 2007 Office ali su mi zapisi u xls-u (ako je to uopste problem)

I jos jedno usputno pitanjce, da li VB t.j. exe program moze da salje txt dokument sa nekim zapisom na FTP ali da ne proverava usern ame i pass, ili da se definise u samom prigramu ...
 
Odgovor na temu

dzigilibonglica
NS

Član broj: 200040
Poruke: 294



+17 Profil

icon Re: print preview iz vb za excel fajl19.07.2009. u 12:16 - pre 178 meseci
Pa ne znam bas sto taj err message izbacuje, meni se to ne desava.... Moze biti da je drugacije kod razlicitih verzija office-a, ne znam stvarno.

Taj err mozes da izbegnes tako sto stavis
Code:

on error resume next


pa posle linije koja ti pravi err, stavis:
Code:

err.clear


Sa ftp-om i VB-om nisam nikada radio tako da ti tu ne mogu pomoci. Ali samo ti postavi temu ako ti je to toliko bitno, nacice se valda neko ko zna.
Pozdrav!
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
93.86.102.*



+5 Profil

icon Re: print preview iz vb za excel fajl04.08.2009. u 22:32 - pre 178 meseci
dzigilibonglica moze mala pomoc oko ovog excel koda kojeg imam...zapravo radi se o gasenju - unload excel-a iz memorije-task-a.stavio sam ga na True ali on i dalje ostaje, dakle ja sam ga uspeo samo sakriti...trebaa mi nesto sto ce najpre sacuvati fajl a onda ga unlodovati iz mem. HVala i pozzz
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.dynamic.sbb.rs.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: print preview iz vb za excel fajl05.08.2009. u 09:12 - pre 178 meseci
Ne možeš samo da zatvoriš aplikaciju... moraš da zatvoriš sve otvorene excel objekte, a neko nepisano pravilo je da ideš od krajnjeg child objekta ka parent objektu (aplikacija). Dakle, prvo zatvoriš worksheet, pa workbook, pa aplikaciju. Ovako nešto
Code:
Set wSheet = Nothing
wBook.Close False
Set wBook = Nothing
aplikacija.Quit
Set aplikacija = Nothing

Ovo bi trebalo da reši problem.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
212.200.212.*



+5 Profil

icon Re: print preview iz vb za excel fajl05.08.2009. u 17:06 - pre 178 meseci
Marko_L Hvala, to mi je resilo problem ali delimicno, sada mi "Project1.exe" ostaje aktivan t.j. ne gasi se kada napustim program klikom na x.Znaci isto kao sa excel-om ali sada ceo program!? p.s.status pratim u task-u
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
89.216.223.*

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: print preview iz vb za excel fajl05.08.2009. u 20:34 - pre 178 meseci
Pa to znači da nešto nisi dobro zatvorio. Prođi kroz kod i vidi šta imaš otvoreno od objekata, pa pozatvaraj, uključujući i forme.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
93.87.137.*



+5 Profil

icon Re: print preview iz vb za excel fajl06.08.2009. u 16:25 - pre 178 meseci
vidi jedino ako te forme prave problem, ostalo mi je sve bilo ok dok nisam ubacivao forme.evo na sta sumnjam:

Code:
Private Sub Command1_Click()

masina1.Operater = login.Combo1
masina1.Pomocnik = login.Combo2
masina1.Smena = login.Combo3

masina1.Show
Me.Close
End Sub


ovo je prva forma gde radnik unosi podatke ili izabere preko combo-a i isti se kasnije prenose na drugu formu koja se zove masina1

ako on sa ovim masina1.show otvori novu a sa ovim me.hide sakrije login onda je i ne gasi i verovatno to predstavlja problem.
e sad kako odnosno kojom opcijom pozvati Me.Hide kako bi zatvorio login formu
probao sam sa Me.Close,Quit,Exit i nece
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.dynamic.sbb.rs.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: print preview iz vb za excel fajl06.08.2009. u 16:50 - pre 178 meseci
Code:
Unload Me

-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

miki987

Član broj: 208123
Poruke: 511
93.87.137.*



+5 Profil

icon Re: print preview iz vb za excel fajl06.08.2009. u 17:13 - pre 178 meseci
:D medjutim probao i nece
unload me ovde funkcionise na aktivaciju dugmeta,a kako da napravim funkciju koja ce unload-ti ceo program klikom na x?
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.dynamic.sbb.rs.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: print preview iz vb za excel fajl06.08.2009. u 18:28 - pre 178 meseci
A zar nismo to apsolvirali ovde
http://www.elitesecurity.org/t...morije-objasnjenje-za-kod-time
Dobio si i kompletan kod kojim ćeš lepo zatvoriti aplikaciju,
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

[es] :: Visual Basic 6 :: print preview iz vb za excel fajl

Strane: 1 2 3

[ Pregleda: 8039 | Odgovora: 46 ] > FB > Twit

Postavi temu Odgovori

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