Skip to main content

How to print double sided in Excel

VBA Duplex Printing in Excel 2010

In my previous post I have shown how to manually print duplex using Excel 2010.

Using VBA we can set the printer settings in duplex mode and print.

Microsoft engineers are kind enough to show some code on how we can achieve it.

The code sample on the links provided below is for Microsoft Word but it also works on Excel as well.

Here's the link: Set Duplex Printing via VBA

In the link above, there is an instruction on how to use the code.

Open Excel and click on Developer Tab. If Developer tab is not yet enable on your Excel.

The quick way to enter code is to right click on the name of the worksheet (like right click on "Sheet 1") and you will see "View Code".

Click on "View Code" and it will open up the Visual Basic editor.

The instruction on the Microsoft link above is to "Insert a Module".

Create or Insert a Module, then copy the code on the link above that starts with "Option Explicit

Public Type PRINTER_DEFAULTS up to the End Function".

The second code on the MS link, is not needed.

But the instruction on the link is needed, so create or insert a form and put a command button on the form.

I have tested this on a single worksheet with 4 pages and so far it works fine.

When I printed only 2 paper comes out with double sided print.

Double click on the command button to open up the code window.

Here's the code that will make use of the module inserted and set the printer to duplex mode.

SetPrinterDuplex "FujiPrinter", 2 'Set the printer name to one word

ActiveSheet.PrintOut From:=1, To:=4 'Print 4 pages from the active sheet

MsgBox "Print Done" 'Just an informative message that printing has been done

That's it you already have a VBA that can do a duplex printing, provided of course that printer specified supports duplex printing.


Click VBA label below  for more VBA tips..


Happy Coding!!! Cheers!!!

======================================

Free Android App with No Ads.

Excel Keyboard shortcuts guide
https://play.google.com/store/apps/details?id=chrisjoms.myexcelapplicationguide

Android Divine Mercy Chaplet Guide  
https://play.google.com/store/apps/details?id=com.dmercyapp 

Linux Android App cheat sheet:
https://play.google.com/store/apps/details?id=com.LinuxMobileKit

Heaven's Dew Fall
https://play.google.com/store/apps/details?id=soulrefresh.beautiful.prayer


Android Catholic Rosary App - Guide
https://play.google.com/store/apps/details?id=com.myrosaryapp&hl=en-GB


Educational App for Android Kids:

https://play.google.com/store/apps/details?id=com.letsmultiply

Comments

  1. I have the Microsoft code controlling my printer driver the problem I have is that i can not control the "Print on both sides" button.

    ReplyDelete
  2. I will try to recover the excel file with the VBA code to print double sided, I will share it with you

    ReplyDelete
  3. Hi Shane, i found the workbook but don't know how to share it with you. :)

    ReplyDelete
  4. Hi, Christopher Siguan

    Can u send it to ronyjohn@live.com.

    Thanks
    Rony

    ReplyDelete
  5. I tried this code. It appears to work with Word documents, but Excel seems to keep the values last set manually in the worksheet.

    ReplyDelete
  6. What do you mean Excel seems to keep the values last set manually? Do you mean that the printout of does not tally to the current values on your worksheet?

    Have you tried to display the values (like msgbox variable_value) before printing out?
    Because it could be that your desired output are not process.
    Printing should get whatever current values in your worksheet.

    ReplyDelete
  7. No that is not what he means...
    Excel does keep the printer settings (per WorkSheet), and saves the information in the document. It might even be you will send this information to customers or suppliers when you send the document by email....
    Not funny.

    See http://support.microsoft.com/kb/2526211
    or http://support.microsoft.com/kb/829766 (contains a registry edit to fix this)

    ReplyDelete

Post a Comment

Popular posts from this blog

Notepad++ convert multiple lines to a single line and vice versa

Notepad++ is an awesome text editing tool, it can accept regex to process the text data. If the data is in a “.csv” format or comma separated values which is basically just a text file that can either be opened using a text editor, excel or even word. Notepad++ can process the contents of the file using regex. Example if the data has multiple rows or lines, and what is needed is to convert the whole lines of data into a single line. Notepad++ can easily do it using regex. However, if the data is on a single line and it needs to be converted into multiple lines or rows then regex can also be used for this case. Here’s an example on how to convert multiple rows or lines into a single line. Example data: Multiple rows, just a sample data. Press Ctrl+H, and  on "Find what" type: [\r\n]+ and on "Replace with" type with: , (white space) --white space is needed if need to have a space in between the data. See image below, "Regular Expression" must be se

WMIC get computer name

WMIC get computer model, manufacturer, computer name and  username. WMIC is a command-line tool and that can generate information about computer model, its manufacturer, its username and other informations depending on the parameters provided. Why would you need a command line tool if there’s a GUI to check? If you have 20 or 100 computers, or even more. It’s quite a big task just checking the GUI to check the computer model and username. If you have remote computers, you need to delegate someone in the remote office or location to check. Or you can just write a batch file or script to automate the task. Here’s the code below on how get computer model, manufacturer and the username. Open an elevated command prompt and type:     wmic computersystem get "Model","Manufacturer", "Name", "UserName" Just copy and paste the code above, the word “computersystem” does not need to be change to a computer name. A

How to check office version from command line

The are quite a few ways to check office version it can be done via registry, PowerShell or VBScript and of course, good old command line can also do it. Checking Windows office version whether it is Office 2010, Office, 2013, Office 2016 or other version is quite important to check compatibility of documents; or just a part of software inventory. For PowerShell this simple snippet can check the office version: $ol = New-Object -ComObject Excel.Application $ol . Version The command line option will tell you where’s the path located; the result will also tell whether office is 32-bit, 64-bit and of course the version of the office as well. Here’s the command that will check the office version and which program directory the file is located which will tell whether it’s 32-bit or 64-bit. Command to search for Excel.exe: DIR C:\ /s excel.exe | find   /i "Directory of"  Above command assumes that program files is on  C: drive. Sample Outpu