Saltar al contenido

Recommended Posts

publicado

Buenas y Felices Fiestas!!!!

Busco una Macro que elimine Filas en base a un Texto “X”, elimine desde ese texto  incluido 85 Filas, estarán ahora en la columna A.

Saludos….

publicado

Subo libro…

Tal cual  explico en el post.

Columna A como ejemplo donde esta NOMBRE A4, será el nombre como referencia que buscara la Macro para eliminar 85 filas (esta en color amarillo)

En la columna A habrá muchas más con este patrón en diferentes celdas, ejemplo A200, A280, A350 ect… ejemplo hasta  A3.000

 

PARA FORO EXCEL.xlsx

publicado

Después del primero post explicando y un segundo post con explicación más detallada, más el libro que me pediste subir, en este momento no se me ocurre ninguna otra explicación más clara.

Voy a dar otra explicación que se me ocurre aún más detallada y si de esta no la pillas puf...Tendré que esperar a otra persona lo vea por ejemplo Antoni.

En la primera fila donde pone nombre esto quiere decir que el nombre puede ser cualquiera Pepe,Luis,Botella,Amigo,ect.. este nombre puede estar en cualquier posición de la columna A repetido varias veces, entre medias de esto hay otros datos, simplemente la macro tiene que buscar ejemplo el nombre "Pepe" los datos que corresponden a Pepe como se ve en el libro ocupa 85 celdas o lo que es lo mismo 85 filas (a la derecha claramente se ve escrito ELIMINAR) pues... la Macro eliminará esas 85 filas tantas veces se encuentre Pepe en la columna A.

Blanco y en botella....

Saludos...

publicado (editado)
hace 12 horas, JSDJSD dijo:

Con el ejemplo que has subido, no llego a pillar lo que pretendes, a ver si puedes explicarlo mas detalladamente.

Comparto totalmente la  opinión de JSDJSD

O subes un ejemplo con el antes y el después o te quedas sin respuesta.

Editado el por Antoni
publicado
hace 2 horas, Antoni dijo:

Comparto totalmente la  opinión de JSDJSD

O subes un ejemplo con el antes y el después o te quedas sin respuesta.

No entiendo ??? doy Tres explicaciones escritas, subo libro con el ejemplo y me pides subir otra vez el libro con el ejemplo ¿??

 

Perdona pero no acabo de entender que más puedo explicar ¿?

 

Creo que quizás lo que falta es me digáis que es lo que no entendéis de lo que pido  y acabaríamos antes. Porque que no se entienda algo bien, pero que no se entienda nada….

 

Saludos……

publicado

Estimado @eugeniocol

No olvides que desde este lado de la pantalla no tenemos poderes sobrenaturales y no podemos saber exactamente lo que pretendes, todo depende de ti. Si dos de los más grandes colaboradores del foro te dicen algo, pues por algo es ¿no crees? Quizás tú ves tu archivo y relees lo que has colocado y consideres que todo se entiende todo, pero no olvides que es así porque todo está en tu mente y tú eres el del dilema y por eso, obviamente, lo entiendes. Ojo, vas a tener que subir un archivo con un BUEN ejemplo, no como el que has subido porque esas equis, ese color amarillo y ese eliminar no nos dice nada a nosotros. En una hoja coloca las cosas tal como son y en otra tal como deberían quedar. Asimismo, te pido un poco más de paciencia y, sobre todo, respeto a todos los que aquí colaboramos sin ganar un solo euro/dólar/peso/sol/etc.

publicado
hace 5 horas, eugeniocol dijo:

y si de esta no la pillas puf...Tendré que esperar a otra persona lo vea por ejemplo Antoni.

Pues nada Antoni todo tuyo, y como alguna que otra vez comentaste en el foto "Abro la nevara"

hace 5 horas, eugeniocol dijo:

Blanco y en botella....

Tela marinera ¡¡¡¡¡¡

publicado
hace 4 horas, JSDJSD dijo:

image.thumb.gif.d5c56a9d74e59a272f3db5bf230d4d51.gif

Como explique por escrito y con el Libro, cada Nombre le pertenece con datos la 84 filas o celdas siguientes hacia abajo en la misma Columna A, esto de los filtros ya lo intente y solo me elimina la fila que contiene el nombre el resto de 84 filas No…… en el libro de ejemplo en B puse ELIMINAR y en C 1, 2,3 ect.. todo en Amarillo para que elimine la macro A4:A85.

Los datos reales están en columna A el rango de datos de cada nombre contiene 85 celdas o filas A4:A85, pero ejemplo PEPE  Empezado en A4 está en A10, A2758, A8158 ect.. hasta la última en A44843 cada una contando PEPE son 85 filas para eliminar.

El rango de datos que contiene la columna A es A4:A46252.

Voy a preparar un libro con Macro encontrada en San Google (siempre antes de lanzarme a los foros busco y busco y después pregunto) que se aproxima a lo que quiero, ahora lo subo he intento explicar….  Bueno que si yo la entendí que no tengo ni idea pues…..

Saludos.

 

publicado

* Hoja Ejemplo 1º es el primer ejemplo en el libro

* Hoja ELIMINAR FILA POR TEXTO, Macro encontrada en San Google es muy intuitiva yo he capado en la Macro esta parte 'Sheets(HojaActual).Copy Before:=Sheets(1)

 

*Nissan, Toyota, Kia, Mercedes la que elijas después de ejecutar la macro, voy a centrarme en columna A que es donde yo tengo los datos.

*Ejemplo selecciono A>Toyota, está macro me eliminara todas las filas que esta Toyota pero… (Yo no sé añadirle a la Macro) que Elimine Toyota y 84 filas más hacia abajo haya donde este Toyota en A.

*Espero esta vez que esté claro lo que trato de explicar y si no, pues con preguntarme sería suficiente

Saludos….

 

PARA FORO EXCEL 2.xlsm

publicado

Si te fijas bien el el gif se borran todas las filas que contengan el nombre elegido independientemente si hay 85, 100, 500,1000……..,,

publicado
hace 1 hora, eugeniocol dijo:

Como explique por escrito y con el Libro

No me lo tome a mal pero para transmitir una idea en la que le van a ayudar otras personas debe imperar la paciencia y repetir si es necesario, una, dos, tres, las veces que sea necesario.

En 25/12/2023 at 7:38 , eugeniocol dijo:

elimine desde ese texto  incluido 85 Filas

En 25/12/2023 at 12:51 , eugeniocol dijo:

que buscara la Macro para eliminar 85 filas (esta en color amarillo)

hace 11 horas, eugeniocol dijo:

pues... la Macro eliminará esas 85 filas tantas veces se encuentre Pepe en la columna A.

hace 1 hora, eugeniocol dijo:

cada una contando PEPE son 85 filas para eliminar.

Hace 1 hora, eugeniocol dijo:

que Elimine Toyota y 84 filas más hacia abajo haya donde este Toyota en A.

Y sí, creo entender que la parte anterior es la que está costando a usted trabajo que los Maestros la visualicen.

hace 1 hora, eugeniocol dijo:

Espero esta vez que esté claro lo que trato de explicar y si no, pues con preguntarme sería suficiente

Si ha tenido que repetirlo y aún no "le entienden" diferentes personas, le recomiendo intentar otra forma de explicarlo, hacer lo mismo lleva al mismo resultado.

Dice estar abierto a las preguntas, entonces trate de verlo así, usted tiene un dato en la fila 1, y elimina 84 filas debajo de éste, la fila 86 pasará hacer la fila 2 ¿Que pasa con los valores intermedios? ¿Esos ya no importan? Al final parece que usted quiere juntar esos datos, ¿no es así? ¿Por qué importa que elimine 84 filas + hacia abajo, si las va a dejar juntas? Al final, después de eliminar no tiene manera de validar que elimino esa filas. ¿En realidad quiere dejar juntos esos datos? ¿Solo importa uno de esos datos o se tienen que organizar para que no se eliminen en caso de estar entre filas?

hace 1 hora, eugeniocol dijo:

Bueno que si yo la entendí que no tengo ni idea pues…..

Sobre el comentario anterior, uno es responsable de lo que escribe, no de lo que lee, aunque espero no sea en tono de soberbia porque a pesar de eso le siguen tratando de ayudar con las explicaciones que usted, reconozco intenta exponer. Tome en cuenta, está intercambiando opiniones e ideas con personas, aunque si esto mismo lo expusiera en una IA, CHAT GPT (por ejemplo) con seguridad le pediría ser más claro.

En la calidad de la pregunta esta la originalidad de la respuesta.

De mi parte me gusta ayudar, pero en este tema tiene a dos grandes Maestros participando así que solo dejaré lo que quería expresarle.

Saludos cordiales.

publicado
hace 14 horas, Israel Cassales dijo:

No me lo tome a mal pero para transmitir una idea en la que le van a ayudar otras personas debe imperar la paciencia y repetir si es necesario, una, dos, tres, las veces que sea necesario.

Y sí, creo entender que la parte anterior es la que está costando a usted trabajo que los Maestros la visualicen.

Si ha tenido que repetirlo y aún no "le entienden" diferentes personas, le recomiendo intentar otra forma de explicarlo, hacer lo mismo lleva al mismo resultado.

Dice estar abierto a las preguntas, entonces trate de verlo así, usted tiene un dato en la fila 1, y elimina 84 filas debajo de éste, la fila 86 pasará hacer la fila 2 ¿Que pasa con los valores intermedios? ¿Esos ya no importan? Al final parece que usted quiere juntar esos datos, ¿no es así? ¿Por qué importa que elimine 84 filas + hacia abajo, si las va a dejar juntas? Al final, después de eliminar no tiene manera de validar que elimino esa filas. ¿En realidad quiere dejar juntos esos datos? ¿Solo importa uno de esos datos o se tienen que organizar para que no se eliminen en caso de estar entre filas?

Sobre el comentario anterior, uno es responsable de lo que escribe, no de lo que lee, aunque espero no sea en tono de soberbia porque a pesar de eso le siguen tratando de ayudar con las explicaciones que usted, reconozco intenta exponer. Tome en cuenta, está intercambiando opiniones e ideas con personas, aunque si esto mismo lo expusiera en una IA, CHAT GPT (por ejemplo) con seguridad le pediría ser más claro.

En la calidad de la pregunta esta la originalidad de la respuesta.

De mi parte me gusta ayudar, pero en este tema tiene a dos grandes Maestros participando así que solo dejaré lo que quería expresarle.

Saludos cordiales.

Como bien dices yo pregunto he intento explicar cuantas veces sea necesario. También sería más fácil para mí que se me comentara en el que no se entiende, si solo se me dice No lo pillo pues.. la prueba esta las veces que replanteo mi explicación.

 

 

publicado (editado)
hace 16 horas, JSDJSD dijo:

Para que lo veas más claroimage.thumb.gif.e794af7ff1cd164ffcfc8b28b5ab0204.gif

Esta es la Macro que subi y se como va perfectamente, elimina FIlas y sus datos que estan todos  en Horizontal y yo quiero en eliminar sus datos en Vertical en A que como lo tengo ,a estas alturas está bastante claro todos los datos esta en una sola Columna A en Vertical no Horizontal.

Veo o me parece ver que se maneja con filtros pero controlado por una Macro de lo cual no tengo ni idea como montar eso.

Como ya también he comentado desde el uso de filtros simple que ya he comprobado no me vale, por que ….. pues porque en esa columna A con un montón de datos y de grupos dentro del mismo grupo buscando eliminar a PEPE en sus 85 filas en  otros varios y diferentes celdas de A la 84 celdas no coinciden los datos casi ninguna. Por lo que el uso de Filtros simple en A no me vale sería un súper rollo o por lo menos así yo lo veo.

Continuo en otro hilo que subí el último Libro mío con macro.

Editado el por eugeniocol
rectificar
publicado (editado)
hace 16 horas, JSDJSD dijo:

Si te fijas bien el el gif se borran todas las filas que contengan el nombre elegido independientemente si hay 85, 100, 500,1000……..,,

Inicio este post pidiendo una Macro y tratando de explicar lo mejor que puedo, sé que de lo que se escribe a lo que por el otro lado se lee no es igual.

El último libro con Macro que está arriba de este hilo pienso.. creo…. O doy erróneamente por hecho que está bastante claro, es ajustar esa Macro  que es lo que pido (que yo lo intente y nada de nada) que cuando seleccione en la segunda pantalla “CRITERIO”  a ejemplo PEPEE  elimine EN TOTAL 85 Filas junto con PEPE.

En esa columna A tengo más grupos que eliminar de diferente tamaño, pero lo poco que entiendo de Macros iría cambiando el rango de eliminar por el que vaya necesitando, que en definitiva es lo pido desde el inicio una MACRO.

Subo otro libro colocando su posicion  en A y los datos de cada marca a eliminar en Vertical,cada Marca y sus datos a eliminar ocupan 5 celdas.

Gracias.

Saludos….

PARA FORO EXCEL 3.xlsm

Editado el por eugeniocol
subir libro
publicado

Tu código modificado

Sub ElimarFilaSegunCriterio()
    With Hoja2
        U = .Cells(Rows.Count, 1).End(xlUp).Row
        contador = 0
        qCriterio = InputBox("Columna del criterio (A,B,C, etc)")
        For i = U To 1 Step -1
            If Cells(i, 1) = qCriterio Then
                Cells(i, 1).EntireRow.Delete
                contador = contador + 1
            End If
        Next
        MsgBox "Líneas encontradas y borradas   " & contador
    End With
End Sub

image.thumb.gif.2a490a4bb227eedbcf27fb52205cebb0.gif

publicado
En 25/12/2023 at 14:38 , eugeniocol dijo:

Buenas y Felices Fiestas!!!!

 

Busco una Macro que elimine Filas en base a un Texto “X”, elimine desde ese texto  incluido 85 Filas, estarán ahora en la columna A.

 

Saludos….

 

Esta macro hace lo que has pedido inicialmente:

Sub Eliminar85FilasColumnaA()
Dim Texto As String, Celda As Range
Texto = InputBox("Texto a buscar")
If Not Texto = "" Then
   Set Celda = Columns("A").Find(Texto, , , xlWhole)
   If Not Celda Is Nothing Then
      Range(Celda).Resize(85, 1).EntireRow.Delete
   End If
End If
End Sub

 

publicado (editado)
hace 2 horas, Antoni dijo:

Esta macro hace lo que has pedido inicialmente:

Sub Eliminar85FilasColumnaA()
Dim Texto As String, Celda As Range
Texto = InputBox("Texto a buscar")
If Not Texto = "" Then
   Set Celda = Columns("A").Find(Texto, , , xlWhole)
   If Not Celda Is Nothing Then
      Range(Celda).Resize(85, 1).EntireRow.Delete
   End If
End If
End Sub

 

me da este error

Range(Celda).Resize(85, 1).EntireRow.Delete

ademas doy por hecho que el 85 se puede modificar por otro numero ??

pero de todas formas tal cual esta la macro me da ese error,los datos empiezan en A4

Editado el por eugeniocol
RECTIFICAR
publicado
hace 6 horas, JSDJSD dijo:

Tu código modificado

Sub ElimarFilaSegunCriterio()
    With Hoja2
        U = .Cells(Rows.Count, 1).End(xlUp).Row
        contador = 0
        qCriterio = InputBox("Columna del criterio (A,B,C, etc)")
        For i = U To 1 Step -1
            If Cells(i, 1) = qCriterio Then
                Cells(i, 1).EntireRow.Delete
                contador = contador + 1
            End If
        Next
        MsgBox "Líneas encontradas y borradas   " & contador
    End With
End Sub

image.thumb.gif.2a490a4bb227eedbcf27fb52205cebb0.gif

Esta Macro hace lo mismo que la mia original solo elimina la Fila del Nombre,pero no las 85 o  x filas o celdas restantes hacia abajo.

Y esta vez si que esta  si que esta bien explicado,mira la macro de Antoni pese a que no va de momento en la Macro veras el dato o numero 85 que son la Filas o celdas junto al Nombre solo buscado que tendria que eliminar la macro.

 

publicado

La verdad que no le veo la lógica, pero si es eso lo que quieres te dejo la macro de Antoni modificada para que te funcione

Sub Eliminar85FilasColumnaA()
    Dim Texto As String, Celda As Range, Hoja As Worksheet
    Set Hoja = ThisWorkbook.Sheets("ELIMINAR FILA POR TEXTO")
    Texto = InputBox("Texto a buscar")
    If Not Texto = "" Then
       Set Celda = Hoja.Columns("A").Find(Texto, , , xlWhole)
       If Not Celda Is Nothing Then
          Hoja.Range(Celda, Celda.Offset(84, 0)).EntireRow.Delete
       End If
    End If
End Sub

 

publicado

Y bueno aunque nadie lo pidió pero por si alguien más lee el tema, un resumen técnico:

¿Qué hacen las macros?

Macro 1: ElimarFilaSegunCriterio (Versión 1)

Esta macro elimina todas las filas en Hoja2 que coinciden con un criterio de búsqueda especificado por el usuario en la columna A. El número total de filas eliminadas se muestra al final.

Macro 2: Eliminar85FilasColumnaA (Versión 1)

Esta macro elimina un total de 85 filas en la hoja ELIMINAR FILA POR TEXTO que comienzan con la fila donde se encuentra el texto especificado por el usuario en la columna A.

Macro 3: Eliminar85FilasColumnaA (Versión 2)

Esta macro elimina un total de 85 filas en la hoja de cálculo activa que comienzan con la fila donde se encuentra el texto especificado por el usuario en la columna A.

Macro 4: ElimarFilaSegunCriterio (Versión 2)

Esta macro elimina todas las filas en la hoja de cálculo activa que coinciden con un criterio de búsqueda especificado por el usuario en la columna especificada.

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.