Vaciar TextBox

gustavomeeuwes

New Member
Joined
Aug 13, 2010
Messages
46
Hola!
Aquí de nuevo con una nueva duda.

Tengo un textbox, TextBox1, copio el valor en A1:

Code:
Private Sub TextBox1_Change()
Range("A1") = TextBox1
End Sub

Como sigo para borrar el contenido del TextBox pero que lo mantenga en A1 hasta tanto escriba un nuevo valor en el TextBox?
O si esto es complicado con poder borrar el textbox me alcanza, ya que puedo copiar el valor de A1 en A2 y hacer Pegado Especial y hacerlo como Valor. No será la forma más elegante pero cumple la función

Para borrar el TextBox probé, entre otras que ví en los foros, con:

Code:
TextBox1 = Empty

Pero no hace nada.
Cual sería la instrucción correcta?

Desde ya muchas gracias.
Saludos
Gustavo
 

Excel Facts

Pivot Table Drill Down
Double-click any number in a pivot table to create a new report showing all detail rows that make up that number
En lugar de poner el código en
Private Sub TextBox1_Change()
Range("A15") = TextBox1
End Sub

Ponlo en:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Range("A15") = TextBox1
TextBox1=Empty
End Sub


o tambien TextBox1="" funciona

TextBox1_Change() tiene un enlace directo con el Rango
en cuanto cambia el TextBox1 Cambia Tambien el rango

Espero te sirva
 
Upvote 0
Hola Leonel:
Gracias por tu respuesta.
Pero el código que me enviaste no copia el valor a A1.
Desde ya muchas gracias
Gustavo
 
Upvote 0
Hola Leonel:
Quizás no me expresé bien.
No es un problema del número de celda.
No lo copia directamente.

Gracias
Saludos
Gustavo
 
Upvote 0
Hola:
El problema a mi entender sigue siendo que aunque ejecute la instrucción en forma independiente:
Code:
TextBox1 = Empty
ó
TextBox1 = ""
ó
TextBox1.Value =  Empty
u otras
No las ejecuta. Me da error.
De poder hacer esta instrucción ya puedo solucionar mi problema.
Gracias.
Saludos
 
Upvote 0
Hola Gustavo.

Prueba esto :

Code:
Private Sub TextBox1_LostFocus()
    Range("A1") = TextBox1
End Sub
 
Upvote 0
Hola de Nuevo:
Jaafar, el code

Code:
Private Sub TextBox1_LostFocus()
Range("A1") = TextBox1
End Sub

Hace lo msimo que el code

Code:
Private Sub TextBox1_Change()
Range("A15") = TextBox1
End Sub

Me copia el valor del TextBox en la celda. Cualquiera de los 2 funciona igual.
Hasta ahí todo bien, ya que el valor de A1 puedo copiarlo en A2 con Pegado Especial -> Valores, así que si A1 se borra mantengo ese valor en A2.
Lo que no pude hacer es borrar el valor del TextBox, con

Code:
TextBox1 = Empty

u otro similar. Probé todos los que están en los foros y nada.

Pero para borrarlo finalmente fui a Propiedades del TextBox1 y en LinkedCell le asigné el valor A1, con lo que al borrar A1 se borra también el TextBox1.
No creo que sea la forma más elegante pero funciona OK.
Si conoce alguna más "Elegante" se lo agradecería.

Saludos
Gustavo
 
Upvote 0
Me abuso de vuestra gentileza y hago por aquí otra pregunta:
Dentro de una macro tengo:

Code:
    Application.DisplayAlerts = False
    Sheets("Hoja1").Delete
    Sheets("Hoja4").Delete
    Application.DisplayAlerts = True

para borrar 2 hojas de mi libro. Le pongo el Application.DisplayAlerts para evitar la ventana de confirmación de eliminación.

Todas las hojas del libro están protegidas de forma tal que se puedan ingresar datos sólo en algunas celdas.
El Code empezó trabajando bien, la macro se ejecutaba bien sin errores.
Algo cambió, o cambié, no se qué, pero al ejecutar la macro llega hasta el code de arriba, borra la Hoja1, y aparece ventana:

"No se puede entrar en tiempo de interrupción en este momento"

y me da la opción de continuar. Si hago click en continuar la macro sigue, borra Hoja4 y continúa.
Probé agregando al Code desproteger primero las hojas, pero lo mismo.
¿Hay alguna forma de evitar esta ventana? O porque aparece así puede ver en mi macro donde está el error. No encontré ninguna información útil.

Nuevamente gracias por la paciencia.
Saludos
Gustavo
 
Upvote 0
Aclaración:
Si borro las hojas manualmente, con todo el libro protegido, puedo hacerlo sin problemas, sólo me aparece la ventana de confirmación de eliminación que en la macro evito con Application.DisplayAlerts = False.
COmo dije antes lo raro es que antes funcionaba bien.

Saludos
Gustavo
 
Upvote 0

Forum statistics

Threads
1,223,956
Messages
6,175,611
Members
452,660
Latest member
Zatman

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top