![]() |
![]() |
|
|||||||
| Excel Questions All Excel/VBA questions - formulas, macros, pivot tables, general help, etc. Please post to this forum in English only. |
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
Board Regular
Join Date: Apr 2002
Location: Oxford, Connecticut USA.
Posts: 235
|
Hi,
We have an Excel workbook that we produce every quarter that has approx. 20 charts in it. We have been experiencing problems printing it where there are blocks within a given chart(s) that do not print, not a missing data point, it looks like a rectangle super-imposed over the chart that is empty or blank. There are some people who can print the workbook without problems. I used to be able to print it fine, now I have the same problem as the others. Any thoughts ??? Thanks, Joe |
|
|
|
|
|
#2 |
|
MrExcel MVP
Join Date: Feb 2002
Location: Denver, Colorado USA
Posts: 4,014
|
Hi Joe,
Is the block also missing when you display the charts using Print Preview?
__________________
Keep Excelling. Damon VBAexpert Excel Consulting (My other life: http://damonostrander.com ) |
|
|
|
|
|
#3 |
|
Board Regular
Join Date: Apr 2002
Location: Oxford, Connecticut USA.
Posts: 235
|
No, the charts look and preview correctly, it is only a printing problem. I am not even convinced that it's an Excel problem per se. It's just that that's the program we use to generate and print all our charts. I print 100's of pages of reports from Access every month with no problem.
|
|
|
|
|
|
#4 |
|
Board Regular
Join Date: Mar 2002
Location: Boston, MA
Posts: 105
|
My guess is your macro processes the sheets as one giant print job. try using a short loop to print each sheet separately. Worked for me when I had a similar problem with an HP LaserJet4000N
|
|
|
|
|
|
#5 |
|
Board Regular
Join Date: Apr 2002
Location: Oxford, Connecticut USA.
Posts: 235
|
I don't use a macro to do the printing, I just highlight all the tabs that need to be printed and then print them. I can try printing them one at a time but then if that worked that would be a pain in the butt....?
|
|
|
|
|
|
#6 |
|
Board Regular
Join Date: Mar 2002
Location: Boston, MA
Posts: 105
|
You could use a really easy macro like this:
'Prints every sheet Dim ws as Worksheet Sub PrintMe() For Each ws in ActiveWorkbook.Worksheets ws.PrintOut Next ws End Sub If you need to print only certain pages, let me know. You can then assign the macro to a button on the toolbar for easy access hth |
|
|
|
|
|
#7 |
|
Board Regular
Join Date: Apr 2002
Location: Oxford, Connecticut USA.
Posts: 235
|
Yes, actually we don't print every sheet. Some sheets are just links or data sheets where raw data comes in either through MS Query are direct linking. So how would I specify which sheets I want printed ??
Thanks, Joe |
|
|
|
|
|
#8 |
|
Board Regular
Join Date: Mar 2002
Location: Boston, MA
Posts: 105
|
There's a lot of different ways to do this. If I asked how you differentiate the sheets you need from the others, what would you say?
|
|
|
|
|
|
#9 |
|
Board Regular
Join Date: Mar 2002
Location: Boston, MA
Posts: 105
|
In general, here's some options:
(1) if you know specific names (2) if they are in a certain order (3) If a certain cell on each page is special examples of modifying the scrip For Each ws in ActiveWorkbook.Worksheets If ws.Index >0 and ws.Index <11 then ws.Printout end if 'Prints the first 10 tabs If ws.name = "A Certain tab Name" then ws.printout end if 'prints a tab if it's name is something special If ws.Range("A1").Value = "Print" then ws.printout end if 'Checks cell A1 on each page What I do is reorder my sheets at the end of the running some macros. Since I always know the name of the first and last sheet I need to print, i use this setup. Dim ws as Worksheet Dim FirstPage as Integer, LastPage as Integer Sub PrintMe() FirstPage = Sheets("FirstToPrint").Index LastPage = Sheets("LastToPrint").Index For Each ws in Activeworkbook.Worksheets If ws.index >= FirstPage and ws.index <= LastPage then ws.Printout End If Next ws End Sub |
|
|
|
|
|
#10 |
|
Board Regular
Join Date: Apr 2002
Location: Oxford, Connecticut USA.
Posts: 235
|
Thank you very much for you reply journeyman. I think your last method may work. I can't use the "value of cell A1" because half of the sheets are chart sheets. So say then that the workbooks has 20 sheets. 4 sheets are data links or whatever, of the 16 remaining, 8 are full chart sheets, the other eight are worksheets with small charts embedded on them. If I order all 20 sheets with the 4 I don't want either at the very end and then specify my print worksheet(s) range by giving naming chart sheet 1 as "beginning" and worksheet 16 as "ending" of range I can let it go at that??
|
|
|
|
![]() |
| Bookmarks |
| Thread Tools | |
| Display Modes | |
|
|