Comparar dos columnas con macros en Excel 2003

13/01/2010 - 23:45 por Ernest | Informe spam
Un saludo a todos y aquí empiezo el año con una solicitud de ayuda de
su parte.

Resulta que tengo dos columnas de 3500 filas cada una, en la columna
AG tengo el número de dias de un documento y en la columna BW necesito
poner el rango de dias en el cual cae, por ejemplo si AG5 tiene 35
dias cae en el rango "31-60 dias" que tengo que poner en la columna BW
en funcion del valor numérico en la columna AG.

Hice la siguiente macro pero me sale "Error 13 No coinciden los tipo":

Sub RangoDias()

'
' Sucursal Macro
' Macro grabada el 13/01/2010 por LEPB
'

'
Dim i As Variant
Dim UltimaFila As Variant
Dim RangoDias As Range
Dim DiasMora As Range

'Se determina cual es la última Fila
UltimaFila = Range("A25000").End(xlUp).Row
'Rango que se evalua
Set DiasMora = Range("AG2", "AG" & UltimaFila)

'Rango donde se llena segun lo que vale la misma fila pero en la
columna
' de DiasMora
Set RangoDias = Range("BV2", "BV" & UltimaFila)
For Each i In DiasMora
Select Case DiasMora
Case Is = 0
DiasMora = "0"
Case 1 To 7
RangoDias = "1-7"
Case 8 To 30
RangoDias = "8-30"
Case 31 To 60
RangoDias = "31-60"
Case 61 To 90
RangoDias = "61-90"
Case 91 To 120
RangoDias = "91-120"
Case 121 To 180
RangoDias = "121-180"
Case 181 To 10000
RangoDias = "> de 180"
End Select
Next i

End Sub

**************************
El primer problema lo arroja en Case Is = 0
Agradezco la ayuda o sugerencias que me puedan proporcionar, saludos a
todos

Preguntas similare

Leer las respuestas

#1 AnSanVal
14/01/2010 - 00:07 | Informe spam
Hola Ernest.

Creo que donde tienes "Select Case DiasMora" deberías tener "Select Case i"

Saludos: Antonio.
*************************
"Ernest" escribió en el mensaje
news:
Un saludo a todos y aquí empiezo el año con una solicitud de ayuda de
su parte.

Resulta que tengo dos columnas de 3500 filas cada una, en la columna
AG tengo el número de dias de un documento y en la columna BW necesito
poner el rango de dias en el cual cae, por ejemplo si AG5 tiene 35
dias cae en el rango "31-60 dias" que tengo que poner en la columna BW
en funcion del valor numérico en la columna AG.

Hice la siguiente macro pero me sale "Error 13 No coinciden los tipo":

Sub RangoDias()

'
' Sucursal Macro
' Macro grabada el 13/01/2010 por LEPB
'

'
Dim i As Variant
Dim UltimaFila As Variant
Dim RangoDias As Range
Dim DiasMora As Range

'Se determina cual es la última Fila
UltimaFila = Range("A25000").End(xlUp).Row
'Rango que se evalua
Set DiasMora = Range("AG2", "AG" & UltimaFila)

'Rango donde se llena segun lo que vale la misma fila pero en la
columna
' de DiasMora
Set RangoDias = Range("BV2", "BV" & UltimaFila)
For Each i In DiasMora
Select Case DiasMora
Case Is = 0
DiasMora = "0"
Case 1 To 7
RangoDias = "1-7"
Case 8 To 30
RangoDias = "8-30"
Case 31 To 60
RangoDias = "31-60"
Case 61 To 90
RangoDias = "61-90"
Case 91 To 120
RangoDias = "91-120"
Case 121 To 180
RangoDias = "121-180"
Case 181 To 10000
RangoDias = "> de 180"
End Select
Next i

End Sub

**************************
El primer problema lo arroja en Case Is = 0
Agradezco la ayuda o sugerencias que me puedan proporcionar, saludos a
todos
Respuesta Responder a este mensaje
#2 Héctor Miguel
14/01/2010 - 07:38 | Informe spam
hola, !

Resulta que tengo dos columnas de 3500 filas cada una
en la columna AG tengo el numero de dias de un documento
y en la columna BW necesito poner el rango de dias en el cual cae
por ejemplo si AG5 tiene 35 dias cae en el rango "31-60 dias"
que tengo que poner en la columna BW en funcion del valor numerico en la columna AG...



mencionas la columna BW pero en el codigo lo aplicas a la clumna BV (???)
corrige como corresponde la siguiente propuesta de macro

saludos,
hector.

Sub Vencimientos()
With Range(Range("a2"), Range("a65536").End(xlUp))
.Offset(, 73).NumberFormat = "@"
.Offset(, 73).Value = Evaluate("transpose(transpose(choose(match(" & _
.Offset(, 32).Address & ",{0,1,8,31,61,91,121,181})," & _
"""0"",""1 a 7"",""8-30"",""31-60"",""61-90"",""91-120"",""121-180"",""> de 180"")))")
End With
End Sub
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida