Need text box to be invisible when printing

dpaton05

Well-known Member
Joined
Aug 14, 2018
Messages
1,478
I have a text box that has default text that disappears when you type in the box. What vba code would make the box invisible when printing if it contains the text "Please type notes here"?
 

Some videos you may like

Excel Facts

Format cells as time
Select range and press Ctrl+Shift+2 to format cells as time. (Shift 2 is the @ sign).

Michael M

Well-known Member
Joined
Oct 27, 2005
Messages
18,974
Office Version
2013
Platform
Windows
Use
Code:
textboxname.visible=false
and put it just before the print lines of code
 

dpaton05

Well-known Member
Joined
Aug 14, 2018
Messages
1,478
By having default text, I mean that I have the following code in my spreadsheet:

Code:
Private Sub TextBox1_Change()
TextBox1.Height = TextBox1.Height
'  TextBox1.Width = 540
End Sub


Private Sub TextBox1_GotFocus()
  TextBox1.Width = 540
  If TextBox1 = "Please type notes here" Then
    TextBox1 = ""
  End If
End Sub


Private Sub TextBox1_LostFocus()
  TextBox1.Height = TextBox1.Height
  TextBox1.Width = 540
  If TextBox1 = "" Then
    TextBox1 = "Please type notes here"
  End If
End Sub
I know that the code you provided would make it invisible but I only want it invisible if it contains "Please type notes here", meaning that it has not been typed in. Also, where would I put the code as I don't have any specific code that performs any printing action.
 

Michael M

Well-known Member
Joined
Oct 27, 2005
Messages
18,974
Office Version
2013
Platform
Windows
Soo...
Before the print lines, use

Code:
If TextBox1 = "Please type notes here" Then
    TextBox1.visible=false
 

dpaton05

Well-known Member
Joined
Aug 14, 2018
Messages
1,478
Which print lines?
 

Michael M

Well-known Member
Joined
Oct 27, 2005
Messages
18,974
Office Version
2013
Platform
Windows
Copy the lines I provided in post #4 , then insert them in the code that is doing the printing just before the code prints.
I'm assuming you are using code to do the printouts ??
 

dpaton05

Well-known Member
Joined
Aug 14, 2018
Messages
1,478
But I can't add the code just before the code that does the printing as I don't do it from my form, I print from the excel program, meaning I can't modify the code. I also print to pdf instead of printing with a printer. Not sure if that makes a difference or not.
 

Michael M

Well-known Member
Joined
Oct 27, 2005
Messages
18,974
Office Version
2013
Platform
Windows
Ok, maybe something like this then...in the "ThisWorkbook"

Code:
Sub Workbook_BeforePrint(Cancel As Boolean)
If TextBox1 = "Please type notes here" Then
    TextBox1.visible=false
End Sub
 

Watch MrExcel Video

Forum statistics

Threads
1,102,597
Messages
5,487,765
Members
407,610
Latest member
bellakim00

This Week's Hot Topics

  • Timer in VBA - Stop, Start, Pause and Reset
    [CODE=vba][/CODE] Option Explicit Dim CmdStop As Boolean Dim Paused As Boolean Dim Start Dim TimerValue As Date Dim pausedTime As Date Sub...
  • how to updates multiple rows in muliselect listbox
    Hello everyone. I need help with below code. code is only chaning 1st row in mulitiselect list box. i know issue with code...
  • Delete Row from Table
    I am trying to delete a row from a table using VBA using a named range to find what I need to delete. My Range is finding the right cell. In the...
  • Assigning to a variable
    I have a for each block where I want to assign the value in column 5 of the found row to the variable Serv. [CODE=vba] For Each ws In...
  • Way to verify information
    Hi All, I don't know what to call this formula, and therefore can't search. I have a spreadsheet with information I want to reference...
  • Active Cell Address – Inactive Sheet
    How to use VBA to get the cell address of the active cell in an inactive worksheet and then place that cell address in a location on the current...
Top