ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Worksheet Functions (https://www.excelbanter.com/excel-worksheet-functions/)
-   -   prevent empty rows from printing (https://www.excelbanter.com/excel-worksheet-functions/54897-prevent-empty-rows-printing.html)

dill_weed

prevent empty rows from printing
 
I have formulae in cells to reference another sheet, but if the referenced
cell is blank, then the new cell I made blank (using the IF function). The
problem is, when I want to print, Excel wants to print all of the cells with
entries in them - even the ones with formulae in them that are blank.

Is there any way to prevent the empty cells from printing?

dill_weed

prevent empty rows from printing
 
Clarification:
I have copied the formulae down several hundred rows, because it is a
template that will receive different sized files. So there are several
hundred rows with formulae in them, but they show up blank, and I would like
to avoid printing the blank cells.

Gary''s Student

prevent empty rows from printing
 
If the rows are either empty or contain formulae returning "empty", then hide
them
--
Gary's Student


"dill_weed" wrote:

Clarification:
I have copied the formulae down several hundred rows, because it is a
template that will receive different sized files. So there are several
hundred rows with formulae in them, but they show up blank, and I would like
to avoid printing the blank cells.


Harlan Grove

prevent empty rows from printing
 
dill_weed wrote...
I have copied the formulae down several hundred rows, because it is a
template that will receive different sized files. So there are several
hundred rows with formulae in them, but they show up blank, and I would like
to avoid printing the blank cells.


If all these blank rows will be clustered below the nonblank rows, you
could define the print area for the worksheet using a formula. For
example, if the worksheet were named WS, then run the menu command
Insert Name Define, enter WS!Print_Area in the topmost field in the
Define Name dialog and enter the formula

=OFFSET(WS!$A$1:$J$1,0,0,
LOOKUP(2,1/(WS!$A$2:$A$65536<""),ROW(WS!$A$2:$A$65536)))

in the 'Refers to' entry field, then click OK. Replace the worksheet
name, WS, as needed. Also note that the print range could start in any
cell, so replace the first argument to OFFSET, WS!$A$1:$J$10 in the
formula above, with the range address of the topmost row of your
intended print range, and adjust the LOOKUP call as needed to
correspond to changes in the location of the print range (note that
both ranges in the LOOKUP call begin in the cell immediately below the
top-left cell of the print range).


Sloth

prevent empty rows from printing
 
What's wrong with using File-Print Area-Set Print Area

"dill_weed" wrote:

Clarification:
I have copied the formulae down several hundred rows, because it is a
template that will receive different sized files. So there are several
hundred rows with formulae in them, but they show up blank, and I would like
to avoid printing the blank cells.


Harlan Grove

prevent empty rows from printing
 
Sloth wrote...
What's wrong with using File-Print Area-Set Print Area


Nothing if you're the sort of person who likes to do everything
manually, but some people prefer that tasks that could be automated are
automated.


dill_weed

prevent empty rows from printing
 
exactly - thank you harland. I am creating a template for others to use, and
I want entries to load automatically (referenced into several sheets), and
then be able to print easily - without making the user set a new print area
every for every single file that they create. As it is now, they will either
have to set a new print area every time they want to print a file, or if they
don't they will get several sheets of blank cells (because there are formulas
in them).

"Harlan Grove" wrote:

Sloth wrote...
What's wrong with using File-Print Area-Set Print Area


Nothing if you're the sort of person who likes to do everything
manually, but some people prefer that tasks that could be automated are
automated.



Sloth

prevent empty rows from printing
 
Wow, settle down guys. I meant no offence, and was just offering a
suggestion. I didn't know if you even considered that an option.

"dill_weed" wrote:

exactly - thank you harland. I am creating a template for others to use, and
I want entries to load automatically (referenced into several sheets), and
then be able to print easily - without making the user set a new print area
every for every single file that they create. As it is now, they will either
have to set a new print area every time they want to print a file, or if they
don't they will get several sheets of blank cells (because there are formulas
in them).

"Harlan Grove" wrote:

Sloth wrote...
What's wrong with using File-Print Area-Set Print Area


Nothing if you're the sort of person who likes to do everything
manually, but some people prefer that tasks that could be automated are
automated.



Harlan Grove

prevent empty rows from printing
 
Sloth wrote...
Wow, settle down guys. I meant no offence, and was just offering a
suggestion. I didn't know if you even considered that an option.

....

No, no one would have considered the obvious before you mentioned it.
You have everyone's deepest gratitude for mentioning it.


Sloth

prevent empty rows from printing
 
I just read a post where I guy wanted a function to replace a certain string
of characters with another one. Then he responded saying he used the
"replace" function. "Duh" he said. He knew the obvious, just not at that
moment. It's possible the OP could have had a similar brain fart, and just
needed a reminder.

It sounded too me like a perfect scenario for Set Print Area. Usually when
people want options other than the obvious they say "I don't want to Set
Print Area" or "I don't want to Sort" or "I don't want to use the ROUND
function" etc.

Also, the OP could have been really new to Excel and not even known about
Set Print Area. I used excel all through High School and College without
ever knowing you could set the print area.

Sometimes people like doing things the easiest, or most direct way. There
are a million reasons why my post was appropriate.

My post might not have been helpful to the OP, but it didn't hurt anything.
Your posts however are harmful (not as in my feelings are hurt). This forum
is good because of the community. You start posting stuff like that, and
this forum turns into a trolling forum. People will be afraid to post
anything, questions or answers. I honestly would like 7 wrong answers to one
of my questions, than no answers at all. People can still benefit from wrong
answers and obvious answers.

By the way your solution was very good. It works perfectly. I couldn't
find anything in the help though. The only thing I could find was naming
cells or ranges of cells. Do you have any suggestions where to look in the
help, or any links on the subject?

"Harlan Grove" wrote:

Sloth wrote...
Wow, settle down guys. I meant no offence, and was just offering a
suggestion. I didn't know if you even considered that an option.

....

No, no one would have considered the obvious before you mentioned it.
You have everyone's deepest gratitude for mentioning it.



Harlan Grove

prevent empty rows from printing
 
Sloth wrote...
I just read a post where I guy wanted a function to replace a certain string
of characters with another one. Then he responded saying he used the
"replace" function. "Duh" he said. He knew the obvious, just not at that
moment. It's possible the OP could have had a similar brain fart, and just
needed a reminder.

....

Possible. We differ on whether to start off assuming OPs are imbeciles
or newbies. Generally best to begin by assuming they're not, then
change to simpler approaches when their follow-ups make it clear they
need simple solutions.

It sounded too me like a perfect scenario for Set Print Area. Usually when
people want options other than the obvious they say "I don't want to Set
Print Area" or "I don't want to Sort" or "I don't want to use the ROUND
function" etc.


It was a perfect scenario for Print_Area (the defined name), but it can
be set using a function that can modify the print range dynamically
based on how cells evaluate.

Also, the OP could have been really new to Excel and not even known about
Set Print Area. I used excel all through High School and College without
ever knowing you could set the print area.

....

The OP was unlikely to have been a newbie since it was clear the OP
knew how to refer to other worksheets and use the IF function to mask
unwanted results.

My post might not have been helpful to the OP, but it didn't hurt anything.
Your posts however are harmful (not as in my feelings are hurt). This forum
is good because of the community. You start posting stuff like that, and
this forum turns into a trolling forum. People will be afraid to post
anything, questions or answers. I honestly would like 7 wrong answers to one
of my questions, than no answers at all. People can still benefit from wrong
answers and obvious answers.


Hard to see how my responses will deter OPs. Similar responses to other
respondents in the past don't seem to have reduced newsgroup traffic.

By the way your solution was very good. It works perfectly. I couldn't
find anything in the help though. The only thing I could find was naming
cells or ranges of cells. Do you have any suggestions where to look in the
help, or any links on the subject?


Read the newsgroups. They're more helpful than online help. Also,
experiment.


Vassago

prevent empty rows from printing
 

Harlan Grove Wrote:
dill_weed wrote...
I have copied the formulae down several hundred rows, because it is a
template that will receive different sized files. So there are

several
hundred rows with formulae in them, but they show up blank, and I

would like
to avoid printing the blank cells.


If all these blank rows will be clustered below the nonblank rows, you
could define the print area for the worksheet using a formula. For
example, if the worksheet were named WS, then run the menu command
Insert Name Define, enter WS!Print_Area in the topmost field in
the
Define Name dialog and enter the formula

=OFFSET(WS!$A$1:$J$1,0,0,
LOOKUP(2,1/(WS!$A$2:$A$65536<""),ROW(WS!$A$2:$A$65536)))

in the 'Refers to' entry field, then click OK. Replace the worksheet
name, WS, as needed. Also note that the print range could start in any
cell, so replace the first argument to OFFSET, WS!$A$1:$J$10 in the
formula above, with the range address of the topmost row of your
intended print range, and adjust the LOOKUP call as needed to
correspond to changes in the location of the print range (note that
both ranges in the LOOKUP call begin in the cell immediately below the
top-left cell of the print range).


I must say this is truly wonderful. I've been looking for a way to
dynamically set the print area that is ideal for a long time without
messing with hiding rows and cells and such. This has been working
perfectly on all of my templates so far!

Thanks!


--
Vassago
------------------------------------------------------------------------
Vassago's Profile: http://www.excelforum.com/member.php...o&userid=36906
View this thread: http://www.excelforum.com/showthread...hreadid=484040



All times are GMT +1. The time now is 06:51 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com