Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

Ayuda con codigo en macro de Excel

henmapanda

Bovino adicto
Desde
28 Ago 2008
Mensajes
550
Hola hermanos bakunos, espero me puedan ayudar con un error en mi codig de macro. Tengo una variable que toma valor conforme al mes que se esta trabajando, el problema es que en cierta parte del codigo introduzco una formula en una celda cuya columna esta definida por dicha variable, hasta alli todo esta ok pero al querer seleccionar un rango con varias celdas (ejem A1:A23) utilizando dicha variable me bota un error y no se si mi sintaxis es correcta. Sin mas les dejo mi codigo y espero impaciente su respuesta.


Sub Victor()
Sheets("Activos Finan").Select
Mes = Range("T2").Value

'Selección de la columna para pegar2
Select Case Mes

Dim Columna4 As String

Case Is = "Enero"

Columna4 = "V"
Case Is = "Febrero"

Columna4 = "W"
Case Is = "March"

Columna4 = "X"
Case Is = "April"

Columna4 = "Y"
Case Is = "May"

Columna4 = "Z"
Case Is = "June"

Columna4 = "AA"
Case Is = "July"

Columna4 = "AB"
Case Is = "August"

Columna4 = "AC"
Case Is = "September"

Columna4 = "AD"
Case Is = "October"

Columna4 = "AE"
Case Is = "November"

Columna4 = "AF"
Case Is = "December"

Columna4 = "AG"

End Select
Workbooks.Open Filename:=Application.GetOpenFilename("Hoja Excel , *.xls*", _
, "Seleccione el archivo para copiar sus datos.")


Sheets("210").Select
Range(Columna4 & "30").Select

ActiveCell.FormulaR1C1 = _
"=IF(ISERROR(VLOOKUP(R[25]C36,'[PruebaPresup2010 PORCENTAJES.xls]Activos Finan'!R3C18:R94C20,3,FALSE)),0,VLOOKUP(R[25]C36,'[PruebaPresup2010 PORCENTAJES.xls]Activos Finan'!R3C18:R94C20,3,FALSE))"


Range(Columna4 & "30").Select
Selection.Copy

Range(Columna4 & "31:44").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

'Range(Columna4 & "31").Select
Application.CutCopyMode = False

Dim Ex As String
Ex = ".xls" 'Extención del archivo
Application.DisplayAlerts = False
With ActiveWorkbook
.Save
End With
Application.DisplayAlerts = True

End Sub
 
Hola, mira con RANGE, podes seleccionar justamente rangos, por ej, desde A1 hasta B50.

pero..

Range(Columna4 & "30").Select

estas mezclando letras (AA, AB, AC) con Numeros.

si pones el excel sin datos de tu empresa, yo te armo el macro que necesites y muy simple.

gracias a los macros en mi empresa trabajo yo solo, antes eramos 3 en mi seccion.

PD: agregame al msn va a ser mas facil, [email protected]
 
Volver
Arriba