Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  vba märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
kaupmees
HV kasutaja
kaupmees

liitunud: 27.05.2004




sõnum 10.11.2014 16:50:33 vba vasta tsitaadiga

Tere,

Proovisin teha taha aga ei tööta:

Sub QuickChangePrinter()
Dim sNewPrinter As String
sNewPrinter = ActivePrinter
ActivePrinter = "Kyocera color"
Application.PrintOut Filename:=""
ActivePrinter = sNewPrinter
End Sub

Vaja et peale nupu vajutust prindiks konkreetsesse printerisse, see on võrguprinter aga mitte põhiprinter.
tagasi üles
vaata kasutaja infot saada privaatsõnum
alfreedo
HV vaatleja

liitunud: 20.06.2010




sõnum 10.11.2014 22:49:01 vasta tsitaadiga

kaupmees.

tsitaat:
Vaja et peale nupu vajutust prindiks konkreetsesse printerisse, see on võrguprinter aga mitte põhiprinter.


Väga segadusse ajav lause.
Tegin midagi kiiresti.
Selle najal saad paremini ehk väljendada mida soovid!
Kas "Kyocera color" on printeri nimi?

http://web.zone.ee/alfreedo/Prindi.xlsm
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
kaupmees
HV kasutaja
kaupmees

liitunud: 27.05.2004




sõnum 11.11.2014 09:20:07 vasta tsitaadiga

Tere,

Soov on teha vba koodi nupule, nii et nupu vajutamisega saaksin välja printida teatud leheküljed, mitte kõik.
Võrguprinter mille nimi on "Kyocera color". Samas "Kyocera color" ei ole vaikeprinter.
tagasi üles
vaata kasutaja infot saada privaatsõnum
pmq
HV kasutaja

liitunud: 29.01.2007



Autoriseeritud ID-kaardiga

sõnum 11.11.2014 10:38:17 vasta tsitaadiga

kaupmees kirjutas:
Tere,

Soov on teha vba koodi nupule, nii et nupu vajutamisega saaksin välja printida teatud leheküljed, mitte kõik.
Võrguprinter mille nimi on "Kyocera color". Samas "Kyocera color" ei ole vaikeprinter.

Põhimõtteliselt peaks su esialgne kood töötama.
Probleem on selles, et ActivePrinter ei sisalda ainult printeri nime, vaid ka lisainfot pordi kohta. ( näiteks ' on Ne00:' )

Kui tahad selle asja ainult ühes arvutis tööle saada, siis kõige lihtsam viis on selline:
Muuda see 'Kyocera color' ajutiselt vaikeprinteriks, ja siis jooksuta koodi: MsgBox ActivePrinter
Näed täpselt ära, mis kujul selle printeri nimi kirjas peab olema.

Kui kood peab toimima mitmes arvutis (printeri nimed/pordid võivad olla erinevad), siis http://www.cpearson.com/Excel/GetPrinters.aspx

Tegelikult ei olegi vaja seda ActivePrinter väärtust vahepeal muuta, võid kohe teha nii:
.PrintOut Copies:=kogus, ActivePrinter:=printer
Kommentaarid: 121 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 95
tagasi üles
vaata kasutaja infot saada privaatsõnum
kaupmees
HV kasutaja
kaupmees

liitunud: 27.05.2004




sõnum 11.11.2014 12:27:19 vasta tsitaadiga

printimisega on nüüd koodiga OK.
Nüüda aga enne pintimist on vaja et VBA koodiga muuta pivotis üks filtri väärtus.

Nimelt iga nädal on vaja printida uus info välja.
Näiteks nädal 46 on vaja printida välja eelmise nädala kokkuvõtte.
Selleks peaks filtri väärtus olema 45.
Sooviks nii et esilehel kus on nupp "print" kõrval tühi lahter kus kirjas nädala nuber mida soov printida n:A1=45
Siis print nuppu vajutades muudaks kõigepealt ära pivot tabelis filtir väärtuse ja asendaks selle selle numbriga mis on kirjutadud A1 kasti.

Hetkel kasutan koodi:
Sheets("CRP-Graafikud").Select
ActiveSheet.PivotTables("PivotTable15").PivotFields("W").ClearAllFilters
ActiveSheet.PivotTables("PivotTable15").PivotFields("W").CurrentPage = "45"
Sheets("Index").Select

Dim STDprinter As String
STDprinter = Application.ActivePrinter
Application.ActivePrinter = "Kyocera color on Ne05:"
ActiveSheet.PrintOut
Application.ActivePrinter = STDprinter
End Sub

Kuna neid lehti ja Pivot tabeleid ja graafikuid palju siis ei sooviks iga kord üks haaval muuta.
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  vba
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.