Otra duda en VB

No se si lo habrás notado pero las preguntas (hechas por mi)que habían sido ya contestadas por ti fueron eliminadas y lógicamente la puntuación se perdió, ¿es cosa común en este sitio?
Bueno, pasando a otra cosa mi duda es la siguiente: Tal vez recuerdes que me diste una solución con un userform sobre como asignar los valores de los textboxes a la celda activa donde se ejecutara el macro, pero ahora me gustaría que un valor de esos textboxes se asignara y se acumulara también a cierta columna por ejemplo siempre seria la columna P pero en la misma fila donde se ejecute el userform considerando que el userform lo usaré a lo largo de todo la hoja activa. Espero haber sido claro con mi duda y que puedas ayudarme como siempre lo has hecho, hasta luego.
p.d. Te anexo el código que estoy usando para el userform
Private Sub CommandButton1_Click()
ActiveCell.Offset(0, 0).value = TextBox1.value
ActiveCell.Offset(0, 1).value = TextBox2.value
ActiveCell.Offset(0, 2).value = TextBox3.value
ActiveCell.Offset(0, 3).value = TextBox4.value
If OptionButton1.value = True Then
ActiveCell.Offset(0, 0).Interior.Color = RGB(204, 255, 204)
ActiveCell.Offset(0, 1).Interior.Color = RGB(204, 255, 204)
ActiveCell.Offset(0, 2).Interior.Color = RGB(204, 255, 204)
ActiveCell.Offset(0, 3).Interior.Color = RGB(204, 255, 204)
ElseIf OptionButton3.value = True Then
ActiveCell.Offset(0, 0).Interior.Color = RGB(255, 204, 153)
ActiveCell.Offset(0, 1).Interior.Color = RGB(255, 204, 153)
ActiveCell.Offset(0, 2).Interior.Color = RGB(255, 204, 153)
ActiveCell.Offset(0, 3).Interior.Color = RGB(255, 204, 153)
ElseIf OptionButton2.value = True Then
ActiveCell.Offset(0, 0).Interior.Color = RGB(255, 255, 153)
ActiveCell.Offset(0, 1).Interior.Color = RGB(255, 255, 153)
ActiveCell.Offset(0, 2).Interior.Color = RGB(255, 255, 153)
ActiveCell.Offset(0, 3).Interior.Color = RGB(255, 255, 153)
End If
UserForm1.Hide
Unload UserForm1
End Sub
Private Sub UserForm_Activate()
TextBox1.value = Now
TextBox2.SetFocus
End Sub

1 Respuesta

Respuesta
1
Respecto a tu primer comentario, pues no me he fijado que hayan borrado tus preguntas. Seguramente también han borrado otras, y es que a veces he notado que tienen algún problema en el mantenimiento de la página y ocurren errores (enlaces a preguntas que no funcionan, preguntas contestadas que pone que aun no lo están, ...)
Pero bueno, no me preocupa en exceso lo de las puntuaciones ya que creo que es una manera de incentivar un poco a los expertos, a modo de juego, pero no ganas nada. Yo contesto preguntas porque creo que esta bien poder ayudar, ya que a mi también me gusta que me ayuden, y gratis!
Vamos a tu pregunta.
Para asignar un valor a una celda en concreto seria:
Range("P1").Value = Textbox1.Value
Pero como te interesa que sea la misma fila que la celda activa, tendras que poner:
Range("P" & Activecell.Row).Value = Textbox1.Value
Lo he escrito sin comprobarlo, por lo que puede que haya cometido algún error "tonto". Si es así dímelo y lo revisaré.
Espero que sea eso lo que necesitas.
Hasta otra.
Ramon
Como siempre me funciono de maravilla solo lo tuve que modificar a
Range("P" & ActiveCell.Row).value = Range("P" & ActiveCell.Row).value + TextBox4.value
para que se fueran acumulando los valores.
Muchas gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas