Bug 120504 - VBA Worksheet.PrintOut method prints active sheet, not the one that calls the method
Summary: VBA Worksheet.PrintOut method prints active sheet, not the one that calls the...
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Macro-VBA
  Show dependency treegraph
 
Reported: 2018-10-11 09:49 UTC by Mike Kaganski
Modified: 2022-06-09 03:32 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments
A sample spreadsheet with a macro to test Worksheet.PrintOut (8.24 KB, application/vnd.oasis.opendocument.spreadsheet)
2018-10-11 09:49 UTC, Mike Kaganski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Kaganski 2018-10-11 09:49:18 UTC
Created attachment 145590 [details]
A sample spreadsheet with a macro to test Worksheet.PrintOut

In the attached sample spreadsheet, there is a macro:

> Option VBASupport 1
> 
> Sub Print_Out()
>   Dim sh As Worksheet
>   Set sh = Sheets("Sheet2")
>   sh.PrintOut
> End Sub

It is expected to print Sheet2, regardless of which sheet is active at the moment, using Worksheet.PrintOut (see https://docs.microsoft.com/en-us/office/vba/api/excel.worksheet.printout).

In reality, in LibreOffice it prints active sheet. You may test that by executing it when in Sheet1. In this case, Sheet1 will be output.

Tested with current master, and with Version: 6.1.2.1 (x64)
Build ID: 65905a128db06ba48db947242809d14d3f9a93fe
CPU threads: 12; OS: Windows 10.0; UI render: GL; 
Locale: ru-RU (ru_RU); Calc: CL

and also with OpenOffice.org 3.2.0 OOO320m12 (Build:9483).
Comment 1 Oliver Brinzing 2018-10-11 16:55:41 UTC
i can confirm this:

with enabled menu "Tools.../Options/LibrOffice Calc/Print"
[X] Print only selected sheets

lo prints the visible sheet.

and with disabled option lo always prints "Sheet1"
Comment 3 Andreas Heinisch 2020-06-08 12:39:33 UTC
I investigated this issue and I think that the problem lies deeper, because neither the printer API nor the printer dialog in calc does support something like  printing a specified sheet. Any thoughts?
Comment 4 QA Administrators 2022-06-09 03:32:38 UTC Comment hidden (spam)