Texto por defecto en Cuadro de Texto Excel Macros

Quisiera hacer que mi cuadro de texto(Activex) que tengo en mi hoja tengo un texto por defecto o predeterminado, y al posicionar el cursor se coloque al inicio del texto por defecto, y cuando escriba algo se borre. Asi como lo hace el buscador de Todoexpertos.

Muchas Gracias de Antemano

1 Respuesta

Respuesta
3

Pon el siguiente código en los eventos de la hoja.

Option Explicit
Const texto = "Texto por defecto"
'
Private Sub TextBox1_Change()
  With TextBox1
    If .Value = vbNullString Or .Value = texto Then
      Call inicio
    Else
      .Value = Replace(.Value, texto, "")
    End If
  End With
End Sub
'
Private Sub TextBox1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  Call inicio
End Sub
'
Private Sub TextBox1_GotFocus()
  Call inicio
End Sub
'
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
  Call inicio
End Sub
'
Sub inicio()
  With TextBox1
    If .Value = vbNullString Or .Value = texto Then
      .Text = texto
      .SelStart = 0
    End If
  End With
End Sub

Sigue las Instrucciones para poner el código en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas