Ayuda (nuevamente) con la realización de una formula con macro

17/10/2006 - 04:53 por Isrrael | Informe spam
Hola a toda la comunidad!!!
Pues tengo este codigo resultado de una grabación en excel:

Sub Ejecutando_formula()
Range("D2").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-2],'[Octubre2006.xls]Oct (13)'!R2C1:R1000C11,12,0)"
End Sub

El problema es que sólo funciona con la hoja que se llama Oct (13). Con que
instruccion puedo hacer que esta formula tome en cuenta la hoja activa que
además se encuentra en otro libro distinto sin importar como se llame la
hoja o el libro, sólo que se vaya a la hoja activa

gracias anticipadas
Isrrael

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
17/10/2006 - 08:24 | Informe spam
hola, Isrrael !

Pues tengo este codigo resultado de una grabación en excel:
Sub Ejecutando_formula()
Range("D2").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-2],'[Octubre2006.xls]Oct (13)'!R2C1:R1000C11,12,0)"
End Sub
El problema es que solo funciona con la hoja que se llama Oct (13).
Con que instruccion puedo hacer que esta formula tome en cuenta la hoja activa
que... se encuentra en otro libro... sin importar como se llame la hoja o el libro
solo que se vaya a la hoja activa



-> [hasta donde se]... la hoja 'activa'... ES [precisamente] la que se encuentra EN LA VENTANA ACTIVA
y... si [ademas] se trata de 'otro' libro [distinto del ACTIVO]... -???-
y... si [ademas] 'no importa' cual sea el otro libro... [cual de todos, si hay cinco, o ninguno otro]... -???-

-> a menos que 'hagas' que la macro: -> vaya... busque... vea... y traiga :))

comentas [si se conoce] algun detalle mas... 'concreto' ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Isrrael
17/10/2006 - 21:09 | Informe spam
Gracias Héctor Miguel,
De hecho sólo si es otro libro distinto al activo, manualmente, ejecuto la
formula en donde me interesa complementar datos y me dirijo a otro libro que
debe estar abierto. Entonces, son sólo dos libros, y que día con día se
agregan hojas nuevas a ambos archivos. Entonces, para facilitar la vida,
pensé en una macro que hiciera eso, pero tengo el problema que al agregar
otra hoja nueva, la macro se queda con la constante anterior, y entonces
me manda error.
Ahora digo que quiero que funcione con cualquier libro por aquello que cada
mes se crea un nuevo libro con el nombre del mes en curso y el año...

Gracias y Saludos!
Isrrael


"Héctor Miguel" wrote in message
news:
hola, Isrrael !

Pues tengo este codigo resultado de una grabación en excel:
Sub Ejecutando_formula()
Range("D2").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-2],'[Octubre2006.xls]Oct (13)'!R2C1:R1000C11,12,0)"
End Sub
El problema es que solo funciona con la hoja que se llama Oct (13).
Con que instruccion puedo hacer que esta formula tome en cuenta la hoja
activa
que... se encuentra en otro libro... sin importar como se llame la hoja o
el libro
solo que se vaya a la hoja activa



-> [hasta donde se]... la hoja 'activa'... ES [precisamente] la que se
encuentra EN LA VENTANA ACTIVA
y... si [ademas] se trata de 'otro' libro [distinto del
IVO]... -???-
y... si [ademas] 'no importa' cual sea el otro libro... [cual de todos,
si hay cinco, o ninguno otro]... -???-

-> a menos que 'hagas' que la macro: -> vaya... busque... vea... y traiga
:))

comentas [si se conoce] algun detalle mas... 'concreto' ?
saludos,
hector.

Respuesta Responder a este mensaje
#3 Héctor Miguel
18/10/2006 - 00:34 | Informe spam
hola, Isrrael !

De hecho solo si es otro libro distinto al activo, manualmente, ejecuto la formula en donde me interesa complementar datos
y me dirijo a otro libro que debe estar abierto. Entonces, son solo dos libros, y que dia con dia se agregan hojas nuevas ...
Entonces, para facilitar la vida, pense en una macro que hiciera eso, pero tengo el problema que
al agregar otra hoja nueva, la macro se queda con la constante anterior, y entonces me manda error.
Ahora digo que quiero que funcione con cualquier libro por aquello que cada mes se crea un nuevo libro con el nombre del mes [...]



si se trata de SOLO DOS libros abiertos... y 'el otro' es del que quieres rescatar nombre y hoja 'activa'...
prueba con algo +/- como lo siguiente:

Sub Ref_HojaActiva_Libro2()
Dim Otro As Byte, Hoja As String
Otro = IIf(Workbooks(1).Name = ThisWorkbook.Name, 2, 1)
Libro = Workbooks(Otro).Name
Hoja = Workbooks(Otro).ActiveSheet.Name
Range("d2").Select
ActiveCell.FormulaR1C1 = _
"=vlookup(rc[-2],'[" & Libro & "]" & Hoja & "'!r2c1:r1000c11,12,0)"
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Isrrael
18/10/2006 - 22:16 | Informe spam
Hola HM,
ya copie y pegue el codigo, pero la formula me manda el mensaje de error
#REF!.
Revise y sólo tenía el error de que estaba considerando una columna despues
del limite del rango, modifiqué y funciona perfecto!!!

Mil gracias HM!
Isrrael

"Héctor Miguel" wrote in message
news:%
hola, Isrrael !

De hecho solo si es otro libro distinto al activo, manualmente, ejecuto
la formula en donde me interesa complementar datos
y me dirijo a otro libro que debe estar abierto. Entonces, son solo dos
libros, y que dia con dia se agregan hojas nuevas ...
Entonces, para facilitar la vida, pense en una macro que hiciera eso,
pero tengo el problema que
al agregar otra hoja nueva, la macro se queda con la constante
anterior, y entonces me manda error.
Ahora digo que quiero que funcione con cualquier libro por aquello que
cada mes se crea un nuevo libro con el nombre del mes [...]



si se trata de SOLO DOS libros abiertos... y 'el otro' es del que quieres
rescatar nombre y hoja 'activa'...
prueba con algo +/- como lo siguiente:

Sub Ref_HojaActiva_Libro2()
Dim Otro As Byte, Hoja As String
Otro = IIf(Workbooks(1).Name = ThisWorkbook.Name, 2, 1)
Libro = Workbooks(Otro).Name
Hoja = Workbooks(Otro).ActiveSheet.Name
Range("d2").Select
ActiveCell.FormulaR1C1 = _
"=vlookup(rc[-2],'[" & Libro & "]" & Hoja & "'!r2c1:r1000c11,12,0)"
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Respuesta Responder a este mensaje
#5 Héctor Miguel
18/10/2006 - 22:44 | Informe spam
hola, Isrrael !

... la formula me manda el mensaje de error #REF!.
... tenia el error de que estaba considerando una columna despues del limite del rango, modifique y funciona ...



tienes razon... [a mi tambien 'se me escapo' que entre las columnas 1 y 11 NO existe una columna 12 'a devolver'] :D

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida