Jump to content
Rodrigo_MR

ANSWERED Funcion For Next con variable que defina el final

Recommended Posts

Hola que tal amigos, a ver si me podeis ayudar con lo siguiente.

Tengo una tabla en donde aparecen elementos en la columna A y procesos en la columna C. Estoy usando la función contar.si para contar la cantidad de veces que aparece la palabra "planificado" en la columna C, el número que da como resultado esa cuenta lo guardo como una variable de nombre "np", que se escribe en la celda F2. Ahora necesito usar una función For Next, para leer desde la celda A2 hasta la celda A(np+1), en este caso np=4 entonces leería los registros desde A2 hasta A5. Y la idea es ir leyendo cada celda, crear una variable de nombre Epi, con i que vaya desde 1 hasta en valor de la variable np. Necesito hacerlo así porque la cantidad de elementos no siempre será la misma, por lo tanto necesito determinar cuantos elementos son, y despues leer esa cantidad de celdas, y crear esa cantidad de variables. Adjunto planilla.

 

image.thumb.png.0406bf0ccf5f305664a910f4c11018b5.png

 

Les agradezco su ayuda!

 

CONTAR ELEMENTOS.xlsm

Share this post


Link to post
Share on other sites

No encuentro el sentido de lo que quieres realizar, por lo que te comparto lo que me imagino:

Sub Encontrar()
Dim i, Final, rl As Variant
Dim tm As Date
tm = Now
Final = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
rl = 0
For i = 2 To Final
    If Cells(i, 3).Value = "Planificado" Then
        rl = rl + 1
    End If
Next i

Range("E1").Value = "Tiempo de ejecución " & Now - tm & " segundos"
Range("f2").Value = rl
End Sub

 

Share this post


Link to post
Share on other sites

Hola, gracias por sus respuestas. Ninguna de las dos se acomoda a lo que quiero.

Lo que necesito es extraer la información de las n primeras celdas de la columna A, donde n es una variable, y el valor de n se define por la cantidad de veces que aparece la palabra "planificado" en la columna C. Necesito leer los n primeros datos y guardar cada uno de ellos en una variable que se llame por ejemplo Ve(i) con i=1,2,3...n. entonces por ejemplo, para n=4, leería los datos de las celdas A2, A3, A4 y A5 y crearía las variables ve1, ve2, ve3 y ve4.

La cosa es que el valor de n es variable para cada listado que se procese.

 

Los leo.

 

Saludos!

 

Share this post


Link to post
Share on other sites
Hace 3 horas, JSDJSD dijo:

Pue como no nos cuentes todo el proceso va a ser difícil darte una solución.

Estoy armando varios códigos para que sean parte de un programa más grande.

Esto es para una base de datos con información acerca de un plano de fabricación. Se tienen los elementos, los componentes que conforman esos elementos y los procesos por los cuales se conforma cada componente. Esa información viene en un determinado formato del tipo Elemento;cantidad;componente;perfil;proceso;estación de trabajo;categoría, entre otros atributos.

Cada componente puede tener más de un proceso y estación de trabajo asociado, y para cada proceso se mostrará el mismo componentes en el formato ya expuesto.

La idea es agrupar toda esa información en distintos formatos. Para el primer formato que necesito, es necesario identificar cuales son los elementos en ese listado, y para ello uso como identificador la palabra "planificado" ya que se muestran todos los elementos que están asignados a cada fase de la fabricación, siendo la primera fase la fase "planificado" por lo tanto contando la cantidad de veces que se repite esa palabra, puedo saber cuandos elementos hay en el listado (variable n) y leyendo las primeras n celdas puedo saber cuales son esos eleentos. y me interesa saber cuales son los elementos ya que más adelante cuando se estén leyendo todas las celdas, se necesita filtrar según elemento, y habrán algunos elementos que no quiero que se escriban, por lo tanto se usarán los elementos capturados para compararlos con los elementos leidos, si estos coinciden con alguno de los elementos capturados al comienzo, el dato se escribe, y si no, se salta al siguiente registro. Pero como les digo son pequeñas partes de un código mayor, por ahora voy recopilando funciones para estudiarlas y comprender como funcionan.

 

Gracias.

Share this post


Link to post
Share on other sites

Bueno, finalmente lo logré investigando más, aquí les dejo el ejemplo.

Se extraen los primeros n datos de la columna A (a partir de la fila 2), siendo n la cantidad de veces que aparece la plabra "planificado" en la columna C. Si se agrega la palabra "planificado" el valor de n cambiará la cantidad de datos extraidos también.

 

Saludos.

 

CONTAR ELEMENTOS.xlsm

Edited by Rodrigo_MR
cambio de ficher

Share this post


Link to post
Share on other sites
Hace 2 horas, Rodrigo_MR dijo:

Bueno, finalmente lo logré investigando más, aquí les dejo el ejemplo.

Se extraen los primeros n datos de la columna A (a partir de la fila 2), siendo n la cantidad de veces que aparece la plabra "planificado" en la columna C. Si se agrega la palabra "planificado" el valor de n cambiará la cantidad de datos extraidos también.

 

Saludos.

 

CONTAR ELEMENTOS.xlsm 21 kB · 2 descargas

Excelente, que gusto que ya tienes la solución amigo!

Por allí debiste haber empezado: investigando

Saludos!

Share this post


Link to post
Share on other sites

Hola Rodrigo

Hace 3 horas, Rodrigo_MR dijo:

Bueno, finalmente lo logré investigando más, aquí les dejo el ejemplo.

Se extraen los primeros n datos de la columna A (a partir de la fila 2), siendo n la cantidad de veces que aparece la plabra "planificado" en la columna C. Si se agrega la palabra "planificado" el valor de n cambiará la cantidad de datos extraidos también.

 

Saludos.

 

CONTAR ELEMENTOS.xlsm 21 kB · 2 descargas

Rodrigo: Enhorabuena que no te quedes esperando solo una respuesta, e investigar o buscar hasta poder resolver tu duda, solo así se podría aprender y para eso esta nuestro foro

Ahora debo decirte que ese código no siempre te va funcionar [hay detalles que quizás por tu nivel de conocimiento no los notaste], uno de ellos es que se recomienda crear un modulo estándar para poder correr nuestros procesos e insertar nuestros códigos, los módulos de hoja son mas utilizados para macros de eventos

Te adjunto mi versión, la búsqueda se carga en memoria, para hacer mas eficiente el proceso

 

Saludos a todos!

Obtener elementos Vba_GP.zip

Share this post


Link to post
Share on other sites
Hace 1 hora, Gerson Pineda dijo:

Hola Rodrigo

Rodrigo: Enhorabuena que no te quedes esperando solo una respuesta, e investigar o buscar hasta poder resolver tu duda, solo así se podría aprender y para eso esta nuestro foro

Ahora debo decirte que ese código no siempre te va funcionar [hay detalles que quizás por tu nivel de conocimiento no los notaste], uno de ellos es que se recomienda crear un modulo estándar para poder correr nuestros procesos e insertar nuestros códigos, los módulos de hoja son mas utilizados para macros de eventos

Te adjunto mi versión, la búsqueda se carga en memoria, para hacer mas eficiente el proceso

 

Saludos a todos!

Obtener elementos Vba_GP.zip 23 kB · 0 descargas

Muchas gracias Gerson, lo revisaré y estudiaré!

 

Saludos!

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.



×
×
  • Create New...

Important Information

Privacy Policy


CTA Templates.png