¿Cómo puedo crear filas en excel a partir de una variable?

Tengo un archivo de excel para determinar un equipo adecuado para cada sitio. En la primera hoja existe una celda donde el usuario pone la cantidad de sitios. Lo que quiero es que en una segunda hoja, se creen tantas filas como sitios se definieron. En cada una de esas filas el usuario debería ingresar el nombre del sitio y otra variable. En la misma fila deben aparecer otros datos automáticos de acuerdo a estas entradas. ¿Existe una manera de crear las filas exactas a partir del datos del numero de sitios?

1 Respuesta

Respuesta
1

Se puede hacer una macro, pero para hacerlo tienes que decirme con detalle, lo siguiente:

1. ¿Cómo se llama la hoja1?

2. ¿En cuál celda de la hoja1 vas a poner el número de filas?

3. ¿Cómo se llama la hoja2?

4. ¿A partir de cuál fila quieres que se inserten las filas?

5. Quieres que sea en automático, es decir, después de escribir el número de filas y presionar enter quieres que se ejecute la macro; ¿O prefieres presionar un botón y que se ejecute la macro?

6. ¿Lo único que quieres es que se inserten las filas o quieres que lleven datos esas filas? Si quieres que lleven datos debes especificar qué datos y de dónde se van a tomar esos datos.

Muchas Gracias por tu rápida respuesta.

Te respondo tus preguntas:

1. Se llama "DATOS"

2. En la celda C3

3. Se llama "SITIOS"

4. De la fila 5

5. Preferiblemente automático

6. He aquí un poco el dilema ya que en una sola fila hay datos para ingresar y fórmulas. Por ejemplo cada columna de la fila tiene estos datos.

Columna A: Nombre del Sitio -- Este dato queda en blanco para que el usuario lo introduzca

Columna B: Cantidad de Usuarios -- Este dato queda en blanco para que el usuario lo introduzca

Columna C: Ancho de Banda -- Este dato queda en blanco para que el usuario lo introduzca

Columna D: Conexiones - Es multiplicar el numero de usuarios por un valor que esta en la HOJA "DATOS" en la celda C2

Columna E: Equipo Seleccionado - Hice una macro para que con base en la cantidad de conexiones y ancho de banda, calcule el equipo. Esta es la fórmula CalcularCon(CX, DX) donde X es el numero de la fila

Espero que mi respuesta sea clara :) y ante todo muchísimas gracias.

Pon la siguiente macro en los eventos de tu hoja "DATOS", cada vez que pongas un número en la celda C3 y presiones enter, en automático se insertarán las filas con las fórmulas.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Target.Count > 1 Then Exit Sub
    If Target.Address(False, False) <> "C3" Then Exit Sub
    If Not IsNumeric(Target.Value) Then Exit Sub
    If Target.Value < 1 Then Exit Sub
    '
    Set h1 = Sheets("DATOS")
    Set h2 = Sheets("SITIOS")
    '
    f = Int(h1.[C3]) + 5
    h2.Rows("6:" & f).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    h2.Range("D6:D" & f) = "=RC[-2]*DATOS!R2C3"
    h2.Range("E6:E" & f) = "=CalcularCon(RC[-2],RC[-1])"
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. Del lado derecho copia la macro

S a l u d o s . D a n t e A m o r

Recuerda valorar la respuesta.

¡Gracias! Que excelente respuesta!!!

Si ya no tienes dudas, podrías cambiar tu valoración.

Dante una consulta,

Si para el caso expuesto en la Columna F el usuario debe escoger valores de soporte de una lista, por ejemplo Silver, Gold, Platinum y en la Columna E se calcula ese valor con base en el input de la columna F, ¿cómo se podría hacer?

No entendí lo que necesitas, podrías crear una nueva pregunta y me explicas con ejemplos o con imágenes lo que necesitas, escribe en el desarrollo de la pregunta que va dirigida a Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas