Tisk pomocí makra Vyřešeno

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

luko02420
Level 2
Level 2
Příspěvky: 186
Registrován: únor 12
Pohlaví: Nespecifikováno

Tisk pomocí makra

Příspěvekod luko02420 » 31 kvě 2021 14:40

Dobrý den, potřeboval bych poradit, zda jde tisknout z excelu pomocí makra na tiskárnu, která není v systému nastavena jako výchozí.

Našel jsem makro od P. Lasaka, ale nějak mi to nefunguje. prosím o radu.
Děkuji

Kód: Vybrat vše

Sub tisk()


ActiveSheet.PrintOut From:=1, To:=100, Copise:=1, ActivePrinter:="ZDesigner GK420t na USB002", Collate:=True

End Sub

Reklama
Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13
Guru Level 13
Příspěvky: 21720
Registrován: březen 10
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod ITCrowd » 31 kvě 2021 14:48

A co konkrétně nefunguje?
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router

luko02420
Level 2
Level 2
Příspěvky: 186
Registrován: únor 12
Pohlaví: Nespecifikováno

Re: Tisk pomocí makra  Vyřešeno

Příspěvekod luko02420 » 31 kvě 2021 15:10

Tisk neproběhne a vypíše chybu
Run-time error 1004
Application -defined or object - defined error.

Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13
Guru Level 13
Příspěvky: 21720
Registrován: březen 10
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod ITCrowd » 31 kvě 2021 15:15

To vypadá, jako by ten název nebyl korektní. Opsal jsi to dobře?
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router

Uživatelský avatar
Grimm
Level 1.5
Level 1.5
Příspěvky: 128
Registrován: září 17
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod Grimm » 31 kvě 2021 23:18

Makro z odkazu vypíše nainstalované tiskárny do okna Immediate

https://wordmvp.com/FAQs/MacrosVBA/Avai ... inters.htm

luko02420
Level 2
Level 2
Příspěvky: 186
Registrován: únor 12
Pohlaví: Nespecifikováno

Re: Tisk pomocí makra

Příspěvekod luko02420 » 01 čer 2021 06:30

Dobrý den, tak jsem zkoušel makro od Grimma, postupoval jsem podle návodu a makro se mi vůbec nespustí.
Už nevím co dělám špatně.

Tak jsem si nechal vyjet seznam tiskáren přes PowerShell a mám vše správně. A přesto mi to makro nejede. Tak už nevím.

Už jsem našel chybu v kódu ve slově Copies, už mi to tiskne ale pořád na výchozí tiskárnu

Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13
Guru Level 13
Příspěvky: 21720
Registrován: březen 10
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod ITCrowd » 01 čer 2021 07:19

Tak jsem pohledal a dověděl jsem se, že VBA nelze tisknout na jinou tiskárnu, než na výchozí. Přesněji - ve woknech nejde tisknout na jinou tiskárnu žádným skriptem. Ani cmd, ani powershelem ani vbs.
Ve VBS to někdo řešil tak, že změnil výchozí tiskárnu na tu, která má tisknout, poslal na ni dokument a změnu vrátil zpět. Nemám ale tušení, zda by tohle fungovalo ve VBA. Pokud máš zájem, můžu zkusit to napsat.
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router

luko02420
Level 2
Level 2
Příspěvky: 186
Registrován: únor 12
Pohlaví: Nespecifikováno

Re: Tisk pomocí makra

Příspěvekod luko02420 » 01 čer 2021 08:29

Dobrý den, děkuji za informaci.
Pokud bude chtít něco zkusit napsat můžete, ale pokud jsi nejste jisty, že se to povede tak se na to vykašlete.
nechci Vás okrádat o čas.
Samozřejmě pokud by to fungovalo byl bych moc rád.

Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13
Guru Level 13
Příspěvky: 21720
Registrován: březen 10
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod ITCrowd » 01 čer 2021 09:05

V pohodě. není to zas taková trága. Horší je donutit excel, aby akceptoval kód :-)

Kód: Vybrat vše

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colPrinters = objWMIService.ExecQuery _
    ("Select * from Win32_Printer Where Default = TRUE")

For Each objPrinter In colPrinters
    strOldDefault = objPrinter.Name
    strOldDefault = Replace(strOldDefault, "\", "\\")
Next

Set colPrinters = objWMIService.ExecQuery _
    ("Select * from Win32_Printer Where Name = 'PDFCreator'")
   
For Each objPrinter In colPrinters
    objPrinter.SetDefaultPrinter
Next

Application.Wait (Now + TimeValue("0:00:02"))

' Sem doplň příkaz k tisku

Set colPrinters = objWMIService.ExecQuery _
    ("Select * from Win32_Printer Where Name = '" & strOldDefault & "'")

For Each objPrinter In colPrinters
    objPrinter.SetDefaultPrinter
Next

Set objWMIService = Nothing
Set colPrinters = Nothing



Co to dělá?
Načte výchozí tiskárnu. Uloží ji do proměnné strOldDefault. (replace je zapotřebí pro konverzi jména v případě že by výchozí tiskárna byla síťová).
Vyhledá podle jména požadovanou tiskárnu. Zde je to PDFCreator. Místo PDFCreator si doplníš svou tiskárnu.
Tuto tiskárnu nastaví jako výchozí.
Počká 2 sec (pro jistotu, aby měl systém čas udělat změny).
Následuje příkaz k tisku, který si doplníš sám.
Vyhledá tiskárnu dle uloženého jména v proměnné strOldDefault
Nastaví ji jako výchozí (tak vrátí změnu zpět).
Toť vše.

Ověřeno na excelu2016, funguje. Jediná zrada by mohla být v mezerách ve jméně té další tiskárny. To ale řešit nehodlám, prostě si tu tiskárnu přejmenuj.
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router

Uživatelský avatar
elninoslov
Level 2.5
Level 2.5
Příspěvky: 300
Registrován: červen 13
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod elninoslov » 01 čer 2021 10:16

No ja som to robil tak, že som si odložil aktuálnu tlačiareň, z nej som si vypreparoval predložku pred číslom portu (najdôležitejší krok, kvôli jazykovým mutáciám, napr. "na port", "on port", ...), z registru zobral názvy tlačiarní, zložil správny názov tlačiareň+predložka+port a nastavil ako východziu. Vytlačil a vrátil predchádzajúcu. Niekde to snáď nájdem.
Nemáte oprávnění prohlížet přiložené soubory.
Naposledy upravil(a) elninoslov dne 01 čer 2021 10:41, celkem upraveno 1 x.

luko02420
Level 2
Level 2
Příspěvky: 186
Registrován: únor 12
Pohlaví: Nespecifikováno

Re: Tisk pomocí makra

Příspěvekod luko02420 » 01 čer 2021 10:25

Tak to je bomba, funguje skvěle, tiskárnu jsem přejmenoval.
Děkuji moc za ochotu.
ještě počkám jestli najde kód mistr Elninoslov a po té zamknu.
Vcelku by mě to zajímalo.
Díky všem

Uživatelský avatar
ITCrowd
Tvůrce článků
Guru Level 13
Guru Level 13
Příspěvky: 21720
Registrován: březen 10
Pohlaví: Muž

Re: Tisk pomocí makra

Příspěvekod ITCrowd » 01 čer 2021 10:38

elninoslov: Myslím, že proto se nemusí chodit do registru. Název tiskárny se dá najít skriptem, a pak je třeba ošetřit ty mezery buď zdvojenými uvozovkami (analogie s replace "\", "\\"), popřípadě použít chr(32).
To ovšem za předpokladu, že by ty mezery vadily. Podle mě by nemusely, ale všechno je možné.

Dodatečně přidáno po 33 minutách 16 vteřinách:
Tak ve vbs to mezery akceptuje bez problémů.
Zkusili jste to vypnout a zapnout? Problémy řeším pouze v tématech. Do SZ mi proto píšete zbytečně.
Základní diagnostika WiFi Jak na diagnostiku sítě Router jako switch Proč je nesmysl chtít router s velkým dosahem Vybíráme router


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Uprava makra
    od luko02420 » 02 čer 2021 21:29 » v Kancelářské balíky
    2
    1534
    od luko02420
    13 čer 2021 08:57
  • Tisk do PDF
    od BigSandy » 22 říj 2021 19:27 » v Programy ke stažení
    6
    245
    od kanoe222
    23 říj 2021 11:05
  • Tisk z tiskarny
    od lucaso84 » 07 dub 2021 12:53 » v Vše ostatní (hw)
    7
    512
    od lucaso84
    08 dub 2021 12:29
  • Výběr tiskárny pro tisk fotek
    od Shashekk » 29 říj 2021 10:35 » v Rady s výběrem hw a sestavením PC
    3
    233
    od petr22
    29 říj 2021 14:32
  • Logitech StreamCam Privacy Cover (3D Tisk)
    od klimA. » 02 lis 2021 18:53 » v Poptávka po práci
    0
    171
    od klimA.
    02 lis 2021 18:53

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: CommonCrawl [Bot] a 1 host