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: 203
Registrován: únor 12
Pohlaví: Nespecifikováno
Stav:
Offline

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.5
Guru Level 13.5
Příspěvky: 23603
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

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: 203
Registrován: únor 12
Pohlaví: Nespecifikováno
Stav:
Offline

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.5
Guru Level 13.5
Příspěvky: 23603
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

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 2
Level 2
Příspěvky: 162
Registrován: září 17
Pohlaví: Muž
Stav:
Offline

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: 203
Registrován: únor 12
Pohlaví: Nespecifikováno
Stav:
Offline

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.5
Guru Level 13.5
Příspěvky: 23603
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

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: 203
Registrován: únor 12
Pohlaví: Nespecifikováno
Stav:
Offline

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.5
Guru Level 13.5
Příspěvky: 23603
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

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: 369
Registrován: červen 13
Pohlaví: Muž
Stav:
Offline

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.
Přílohy
Tlačiť dočasne na inú tlačiareň2.xlsm
(29.18 KiB) Staženo 40 x
Naposledy upravil(a) elninoslov dne 01 čer 2021 10:41, celkem upraveno 1 x.

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

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.5
Guru Level 13.5
Příspěvky: 23603
Registrován: březen 10
Pohlaví: Muž
Stav:
Offline

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
  • excel-posun makra
    od actionboy » 12 bře 2024 18:59 » v Kancelářské balíky
    1
    375
    od Grimm Zobrazit poslední příspěvek
    12 bře 2024 21:43
  • Tisk ELD souboru
    od Jandak » 30 dub 2023 09:53 » v Problémy s hardwarem
    4
    1119
    od Grander Zobrazit poslední příspěvek
    09 čer 2023 21:31
  • Nekvalitní tisk Příloha(y)
    od Dolpi » 21 led 2024 21:09 » v Problémy s hardwarem
    3
    1145
    od Dolpi Zobrazit poslední příspěvek
    25 led 2024 18:23
  • tisk samolepicich etiket
    od jirino92 » 02 led 2024 10:08 » v Vše ostatní (hw)
    4
    882
    od Martab Zobrazit poslední příspěvek
    02 led 2024 13:11
  • Scan a tisk u dvou tiskáren
    od amirinda » 14 říj 2023 06:49 » v Vše ostatní (sw)
    12
    1913
    od amirinda Zobrazit poslední příspěvek
    14 říj 2023 16:39

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

Kdo je online

Uživatelé prohlížející si toto fórum: Myerina a 3 hosti