Como utilizar "RandBetween" en otra hoja

Como podría utilizar "RandBetween" en otra hoja y mostrarlo en un textbox.

Private Sub CommandButton1_Click()

Dim xRow As Long
xRow = [RandBetween(13,39)]
TextBox1 = Cells(xRow, 2)

End Sub

Lo que quisiera poder hacer es que siga escogiéndome los datos de las filas y columnas de la hoja "C. FILIACIÓN" , y mostrándose en cualquier otra hoja mediante un textbox.

La macro lo que hace es mostrar el nombre de un estudiante al azar, establecido en los rangos (13,39), de la hoja (C. Filiación).

1 Respuesta

Respuesta
2

Debes poner la hoja de referencia:

Private Sub CommandButton1_Click()
  Dim xRow As Long
  xRow = [RandBetween(13,39)]
  TextBox1 = Sheets("C. FILIACIÓN").Cells(xRow, 2)  'nombre de tu hoja
End Sub

[Avísame cualquier duda, no olvides la valoración.

funciona muy bien, estaba cerca de lograrlo... 

xRow = [RandBetween(13,39)]

desde la fila 13 a la 39, ¿se podría hacer que sea hasta la ultima fila con datos 'dé la Columna "B"'?

es de decir (13, x) seria variable de acuerdo a la cantidad de estudiantes.

Prueba esto:

Private Sub CommandButton1_Click()
Dim xRow As Long, lr as long

lr = Sheets("C. FILIACIÓN").Range("B" & rows.count).End(3).Row
XRow = Evaluate("=RandBetween(13," & lr & ")")
TextBox1 = Sheets("C. FILIACIÓN").Cells(xRow, 2) 'nombre de tu hoja
End Sub

Te paso el código:

Private Sub CommandButton1_Click()
  Dim xRow As Long, lr As Long
  lr = Sheets("C. FILIACIÓN").Range("B" & Rows.Count).End(3).Row
  xRow = Evaluate("=RandBetween(13," & lr & ")")
  TextBox1 = Sheets("C. FILIACIÓN").Cells(xRow, 2) 'nombre de tu hoja
End Sub

Buenas noches Danto Amor, me sale ese error, al buscar algunos nombres, con la anterior macro no funciona bien.

muchas gracias por su tiempo.

Ese error que pusiste no es parte de mi código.

Es un problema diferente, debes crear una pregunta nueva.

Veo que en tu código ya estás utilizando lo que te envié, entonces en el texbox1 ya estás obteniendo un valor.

Si en el textbox1 no está regresando un número la función randbetween, con gusto lo reviso.

Pero si ya te está regresando un valor y el problema es otro en tu código, entonces crea una nueva pregunta y también con todo gusto lo reviso.

[No olvides la valoración de esta respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas