Excel - Cuadro de texto automático al completar un valor

 
Vista:

Cuadro de texto automático al completar un valor

Publicado por Nicolas (2 intervenciones) el 10/03/2015 14:33:43
Buenos Días,

Si alguien es experto en Excel le agradecería mucho explicarme como puedo realizar la siguiente acción.
Lo que busco es que al poner un valor en una celda, por ejemplo "1", se abra un cuadro dentro del cual salgan instrucciones y un espacio para escribir mayores detalles de la respuesta, siendo esta información enviada a otra celda.
En el caso de que el cuadro no sea posible, me gustaría que al poner el valor, te lleve automáticamente a otra hoja y celda para completar la información.
Quedo atento a sus comentarios.
De antemano muchas gracias por toda su ayuda

Saludos

Nicolás
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 3
Ha aumentado su posición en 2 puestos en Excel (en relación al último mes)
Gráfica de Excel

Cuadro de texto automático al completar un valor

Publicado por Martin (10 intervenciones) el 11/03/2015 18:18:41
La única forma que se me ocurre que podrías hacer es con código de VBA con el evento Change de la clase Worksheet, siempre que las celdas originales estén acotadas (de otra forma se dispararía cada vez que modifiques el valor de cualquier celda de la hoja. Con el evento Change puedes evaluar cuál fue la celda que lo originó, su valor, y llamar a un UserForm con los datos que necesites completar para luego escribirlos en una celda de otra hoja.

Sería algo así, como ejemplo donde las celdas que modificas van desde A2 hasta D20 (Necesitas un Userform con un Label y un TextBox):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Private Sub Worksheet_Change(ByVal Target As Range)
 
    'Aqui evaluamos si el valor introducido en la celda es distinto de vacío y si la celda está entre las
    'que queremos utilizar
 
    If Target.Value <> Empty And _
       (Target.Row >= 2 And Target.Row <= 20) And _
       (Target.Column >= 1 And Target.Column <= 4) Then
 
        'Cargamos las intrucciones que queremos visualizar en el Label del Userform
        UserForm1.Label1.Caption = "Instrucciones que quieres poner"
 
        'Vaciamos el cuadro de texto
        UserForm1.TextBox1.Text = Empty
 
        'Llamamos al formulario
        UserForm1.Show vbModal
 
        'Luego escribimos el valor del TextBox en la celda destino.
        Sheets("HojaDestino").Range("C1").Value = UserForm1.TextBox1.Text
 
    End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar