Eliminar Filas VBA

14/08/2004 - 20:54 por Javier R | Informe spam
actualmente tengo el siguient ecodigo y lo quiero
complementar chequen:
Sub EliminarRepetidos()
contador = 0
Range("b1").Select
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
While ActiveCell.Value <> ""
If ActiveCell.Value = valor Then
'aqui quiero seleccionar toda la fila o cuando menos que
elimine las filas de dos columnas
'actualmente me esta posicionando en una celda y solo
elimina esa celda con el siguiente select
Selection.Delete Shift:=xlUp
contador = contador + 1
Else
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
End If
Wend
Respuesta = MsgBox("Se han encontrado " & contador & "
elementos repetidos", 1, "Número de repetidos")
End Sub
espero sus respuestas amigos.
Saludos

Preguntas similare

Leer las respuestas

#6 Javier R
16/08/2004 - 18:22 | Informe spam
Selection.EntireRow.Delete Shift:=xlUp
Listo agregue esto y ya quedo el objetivo...
Gracias y saludos
javier
el objetivo revisando nuevamente al situarme el la celda
inicial b1 es para qeu apartir de ahi inicie el proceso


de
por ejemplo
Columna
A B

Ciudad Ruta
Mexico 1
Mexico 1
Mexico 2
MExico 2
Mexico 2
Sinaloa 1
Sonora 3
Sonora 4


Resultado actual con la macro:
Ciudad Ruta
Mexico 1
Mexico 2
Mexico 1
MExico 3
Mexico 4
Sinaloa
Sonora
Sonora

Objetivo que busco:
Ciudad Ruta
Mexico 1
Mexico 2
Sinaloa 1
Sonora 3
Sonora 4

Lo siento por no haber sido tan explicito al principio
pero haber si me pueden ayudar a complementar el codigo
ya que yo soy aprendiz en esto de las macros...
Muchas gracias amigos






Les agradezco mucho su Valiosa ayuda , seguimos en
contacto en el foro...
Saludos
desde Mexico
actualmente tengo el siguient ecodigo y lo quiero
complementar chequen:
Sub EliminarRepetidos()
contador = 0
Range("b1").Select
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
While ActiveCell.Value <> ""
If ActiveCell.Value = valor Then
'aqui quiero seleccionar toda la fila o cuando menos






que
elimine las filas de dos columnas
'actualmente me esta posicionando en una celda y solo
elimina esa celda con el siguiente select
Selection.Delete Shift:=xlUp
contador = contador + 1
Else
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
End If
Wend
Respuesta = MsgBox("Se han encontrado " & contador & "
elementos repetidos", 1, "Número de repetidos")
End Sub
espero sus respuestas amigos.
Saludos
.



.



.

Respuesta Responder a este mensaje
#7 David Canales
16/08/2004 - 23:58 | Informe spam
Tu codigo inicial con algunas modificaciones:
1.-Se cambiaron los nombres de las variables para hacerlo mas amigable.
2.-Se agrego la variable del nombre de la ciudad para tomarlo en cuenta en el
IF.
3.-Se ordena la lista en caso que no este ordenada.
4.-Las referencias toman en cuenta que hay un encabezado.
5.-El If evalua la Ruta y la Ciudad.
6.-No es necesario usar Value dado que es la propiedad por defecto de Range y
Activecell.
7.-No es necesario usar una variable con Msgbox si no usas parentesis.
8.-Se agrego Application.ScreenUpdating para no ver los cambios al ejecutarse la
macro.

Sub EliminarRepetidos()
Application.ScreenUpdating = False
Dim Contador As Integer, Ciudad As String, Ruta As Integer
Range(Range("A1"), Range("B65536").End(xlUp)).Sort _
Key1:=Range("A2"), Key2:=Range("B2"), Header:=xlYes
Contador = 0: Ciudad = Range("A2"): Ruta = Range("B2")
Range("A3").Select
While ActiveCell.Value <> ""
If ActiveCell = Ciudad And ActiveCell.Offset(0, 1) = Ruta Then
Selection.EntireRow.Delete
Contador = Contador + 1
Else
Ciudad = ActiveCell
Ruta = ActiveCell.Offset(0, 1)
ActiveCell.Offset(1, 0).Select
End If
Wend
Application.ScreenUpdating = True
MsgBox "Se han encontrado " & Contador & _
" elementos repetidos", 1, "Número de repetidos"
End Sub

Saludos,

David Canales


wrote in message
news:6ce101c483a5$97ebc4f0$
el objetivo revisando nuevamente al situarme el la celda
inicial b1 es para qeu apartir de ahi inicie el proceso de
por ejemplo
Columna
A B

Ciudad Ruta
Mexico 1
Mexico 1
Mexico 2
MExico 2
Mexico 2
Sinaloa 1
Sonora 3
Sonora 4


Resultado actual con la macro:
Ciudad Ruta
Mexico 1
Mexico 2
Mexico 1
MExico 3
Mexico 4
Sinaloa
Sonora
Sonora

Objetivo que busco:
Ciudad Ruta
Mexico 1
Mexico 2
Sinaloa 1
Sonora 3
Sonora 4

Lo siento por no haber sido tan explicito al principio
pero haber si me pueden ayudar a complementar el codigo
ya que yo soy aprendiz en esto de las macros...
Muchas gracias amigos






Les agradezco mucho su Valiosa ayuda , seguimos en
contacto en el foro...
Saludos
desde Mexico
actualmente tengo el siguient ecodigo y lo quiero
complementar chequen:
Sub EliminarRepetidos()
contador = 0
Range("b1").Select
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
While ActiveCell.Value <> ""
If ActiveCell.Value = valor Then
'aqui quiero seleccionar toda la fila o cuando menos que
elimine las filas de dos columnas
'actualmente me esta posicionando en una celda y solo
elimina esa celda con el siguiente select
Selection.Delete Shift:=xlUp
contador = contador + 1
Else
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
End If
Wend
Respuesta = MsgBox("Se han encontrado " & contador & "
elementos repetidos", 1, "Número de repetidos")
End Sub
espero sus respuestas amigos.
Saludos
.



.

Respuesta Responder a este mensaje
#8 JAVIER R
18/08/2004 - 20:08 | Informe spam
Tu codigo inicial con algunas modificaciones:
1.-Se cambiaron los nombres de las variables para hacerlo


mas amigable.
2.-Se agrego la variable del nombre de la ciudad para


tomarlo en cuenta en el
IF.
3.-Se ordena la lista en caso que no este ordenada.
4.-Las referencias toman en cuenta que hay un encabezado.
5.-El If evalua la Ruta y la Ciudad.
6.-No es necesario usar Value dado que es la propiedad


por defecto de Range y
Activecell.
7.-No es necesario usar una variable con Msgbox si no


usas parentesis.
8.-Se agrego Application.ScreenUpdating para no ver los


cambios al ejecutarse la
macro.

Sub EliminarRepetidos()
Application.ScreenUpdating = False
Dim Contador As Integer, Ciudad As String, Ruta As Integer
Range(Range("A1"), Range("B65536").End(xlUp)).Sort _
Key1:=Range("A2"), Key2:=Range("B2"), Header:=xlYes
Contador = 0: Ciudad = Range("A2"): Ruta = Range("B2")
Range("A3").Select
While ActiveCell.Value <> ""
If ActiveCell = Ciudad And ActiveCell.Offset(0, 1) =


Ruta Then
Selection.EntireRow.Delete
Contador = Contador + 1
Else
Ciudad = ActiveCell
Ruta = ActiveCell.Offset(0, 1)
ActiveCell.Offset(1, 0).Select
End If
Wend
Application.ScreenUpdating = True
MsgBox "Se han encontrado " & Contador & _
" elementos repetidos", 1, "Número de repetidos"
End Sub

Saludos,

David Canales


wrote in message
news:6ce101c483a5$97ebc4f0$
el objetivo revisando nuevamente al situarme el la celda
inicial b1 es para qeu apartir de ahi inicie el proceso


de
por ejemplo
Columna
A B

Ciudad Ruta
Mexico 1
Mexico 1
Mexico 2
MExico 2
Mexico 2
Sinaloa 1
Sonora 3
Sonora 4


Resultado actual con la macro:
Ciudad Ruta
Mexico 1
Mexico 2
Mexico 1
MExico 3
Mexico 4
Sinaloa
Sonora
Sonora

Objetivo que busco:
Ciudad Ruta
Mexico 1
Mexico 2
Sinaloa 1
Sonora 3
Sonora 4

Lo siento por no haber sido tan explicito al principio
pero haber si me pueden ayudar a complementar el codigo
ya que yo soy aprendiz en esto de las macros...
Muchas gracias amigos






Les agradezco mucho su Valiosa ayuda , seguimos en
contacto en el foro...
Saludos
desde Mexico
actualmente tengo el siguient ecodigo y lo quiero
complementar chequen:
Sub EliminarRepetidos()
contador = 0
Range("b1").Select
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
While ActiveCell.Value <> ""
If ActiveCell.Value = valor Then
'aqui quiero seleccionar toda la fila o cuando menos que
elimine las filas de dos columnas
'actualmente me esta posicionando en una celda y solo
elimina esa celda con el siguiente select
Selection.Delete Shift:=xlUp
contador = contador + 1
Else
valor = ActiveCell.Value
ActiveCell.Offset(1, 0).Range("a1").Select
End If
Wend
Respuesta = MsgBox("Se han encontrado " & contador & "
elementos repetidos", 1, "Número de repetidos")
End Sub
espero sus respuestas amigos.
Saludos
.



.





.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida