Bucle en vba de excel

Hola, mira tengo que hacer un bucle en excel para que me vaya escribiendo unos números que yo le digo desde la casilla A1 hasta la casilla Ax, siendo por un numero que yo le doy, ¿cómo podría hacer eso? Muchas gracias por tu ayuda. Hasta luego

3 respuestas

Respuesta
1
Podría ser algo como esto:
x = inputbox("Celda final")
For y = 1 to x
range("A" & Ltrim(Str(y))).Value = "xyz"
Next y
Revisa para ver si te funciona.
Respuesta
1
Ante todo recibe un cordial saludo; lo que entiendo de tu pregunta es que quieres hacer como un formulario con el cual le introduzcas la cantidad de registros a procesdar. Para lo cual debes hacer lo siguiente; primero debes crear una macro y dentro de la macro introducir un formulario (UserForm).
Una vez hecho esto, debes insertar dos cajas de texto o TextBox; una donde quieres colocar el máximo numero de registros y la otra donde colocaras los registros que van a ser descargados en tu hoja; ademá es de un botón (CommandButton).
Luego debes insertar el siguiente código:
------------------- Codigo -------------->
Dim maximo, contador As Integer
Private Sub CommandButton1_Click()
contador = contador + 1
If contador <= maximo Then
Cells(contador, 1).Value = TextBox2.Value
End If
End Sub
Private Sub TextBox1_Change()
maximo = TextBox1.Value
End Sub
Private Sub UserForm_Click()
maximo = 0
contador = 0
End Sub
------------------- Fin -------------->
Espero te sirva la respuesta, de todas maneras si tienes algún inconveniente o duda al respecto, solo escríbeme y con mucho gusto te responderé nuevamente o envíeame tu dirección de e-mail y te enviaré el ejemplo en Excel.
Respuesta
1
Hay muchas maneras, creo que la más simple es esta:
Sub numero()
' introducir variables donde i es el numero de celdas a llenar, j el contador y "numero" es el numero que se captura
Dim numero, i, j As Integer
ActiveSheet.Range("a1").Activate
'activamos la celda a1 para empezar a capturar
i = InputBox("Ingrese hasta que casilla se captura", "Rellenar")
For j = 1 To i
numero = Val(InputBox("Ingrese un valor", "Captura"))
ActiveCell.Value = numero
ActiveCell.Offset(1, 0).Activate
Next j
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas