Select Printing Macro

  • Thread starter Thread starter saltnsnails
  • Start date Start date
S

saltnsnails

I have a workbook that contains about 60 timesheets on individual worksheets.
Not all of the worksheets have data filled in if a particular individial
does not work on that day. I print timesheets at the end of each day. What
I would like to do is run a macro that would print only the worksheets if the
date cell has the current date in it. The date cell is B1. I hope this
makes sense.
 
Something like this should be close.

Sub PrintUsedSheets()
Dim wks As Worksheet

For Each wks In Worksheets
If wks.Range("B1").Value = Date Then wks.PrintOut
Next wks
End Sub
 
Jim,
Thanks for the reply. I added the macro and nothing happened when I ran it.
not sure what to do. Any other thoughts?

-
-CRM
 
Is your value in Cell B1 and actual date or is it text? To check in some
other cell add
=B1 + 1
which should return the next day if your cell is a true date and not just
text. True dates can also be reformatted.

The other possibility is that your date is actually a date and time strung
together. Try reformatting the date using one of the built in date/time
formats. If the time is anything other than 12AM then you have a date and
time in the cell.

Let me know the results... If it is text then give me an example of the cell
value.
 
Jim,
Would it be plausible to rewrite the macro so that if cell B1 is greater
than 0, then print?
 
Try this
If wks.Range("B1").Value > 0 Then wks.PrintOut
or
If trim(wks.Range("B1").Value) <> "" Then wks.PrintOut
 
That did it!!! Thanks Jim!
--
-CRM


Jim Thomlinson said:
Try this
If wks.Range("B1").Value > 0 Then wks.PrintOut
or
If trim(wks.Range("B1").Value) <> "" Then wks.PrintOut
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top