Just nu i M3-nätverket
Gå till innehåll
Nizzze

Byta skrivare i vba

Rekommendera Poster

Jag har en standardskrivare i mitt nätverk men jag vill att ett visst excelblad skall skrivas ut på en annan skrivare i mitt nätverk

jag vill inte att standardskrivaren ändras

kan man göra detta i vba

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Har 6 skrivare i LibreOffice som jag kan välja när jag skriver ut på jobbet(vista).

Den sista brukar kommas ihåg vid senaste utskriften.

Några ggr. har man varit för snabb och fått hämta utskriften i ett annat rum :)

Hur det görs i vba kan jag tyvärr ej hjälpa dig med.

 

Och detta gäller i de flesta program där jag kan välja vilken skrivare som ska skriva ut.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

jag tror inte det kan ske automatiskt när du skriver ut. Du kan iofs lösa det med en knapp och kod som väljer skriva åt dig men går de via vanliga skriv ut så kommer vanliga dialogen upp.

 

Här finns några exempel

http://www.mrexcel.com/forum/excel-questions/79535-printing-visual-basic-applications-code-select-printer.html

eller här

http://www.ozgrid.com/forum/showthread.php?t=136018

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Efter lite pysslande så löste jag det. fick skriva ut det i en cell för att se vad skrivaren hette egentligen

 

Sub test()
 
 
Dim myprinter As String
 
 
    myprinter = Application.ActivePrinter
    Cells(1, 1) = ActivePrinter
   Application.ActivePrinter = "HP LJ300-400 color M351-M451 PCL 6 på Ne01:"
    Cells(2, 1) = ActivePrinter
  
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
 
    Application.ActivePrinter = myprinter
    Cells(3, 1) = ActivePrinter
End Sub
 
Tack Monshi

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

 

Efter lite pysslande så löste jag det. fick skriva ut det i en cell för att se vad skrivaren hette egentligen

 

Sub test()
 
 
Dim myprinter As String
 
 
    myprinter = Application.ActivePrinter
    Cells(1, 1) = ActivePrinter
   Application.ActivePrinter = "HP LJ300-400 color M351-M451 PCL 6 på Ne01:"
    Cells(2, 1) = ActivePrinter
  
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
 
    Application.ActivePrinter = myprinter
    Cells(3, 1) = ActivePrinter
End Sub
 
Tack Monshi

 

Upptäckte ett annat problem om man vill köra detta makrot från annan dator så blir det inte samma namn på skrivaren

dvs ändelsen   "på Ne01" är bunden till den datorn man skriver ifrån

 

Man borde kunna skriva en stjärna eller något men hur gör man det??

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Nja, du får nog leta i listan på skrivare på datorn (borde gå), leta i denna och använda den som matchar den du vill ha bäst..

typ...

Återkommer om jag har en idé om hur det kan göras i praktiken.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...