Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

Convertir referencias absolutas en relativas y viceversa

Este artículo se publicó anteriormente con el número E10375
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.
Resumen
Con este artículo dispondrá de macros para convertir referencias absolutas en relativas y viceversa en Excel.
Más información
VERSIONES 3.0 Y 4.0

Se debe utilizar la función FORMULA.CONVERTIR() para cambiar el modo de referencia de una fórmula. Esta función cambia el estilo y el tipo de referencia de una fórmula entre A1 y L1C1, y entre relativo y absoluto.

Esta es la sintaxis de dicha función:
FORMULA.CONVERTIR(fórmula;de_a1;a_a1;a_tipo_ref;ref_abs)
El argumento que nos interesa para cambiar el modo de referencia es el cuarto (a_tipo_ref). Este argumento es un número del 1 al 4.

A_tipo_ref Tipo de referencia
1 Absoluta
2 Fila absoluta, columna relativa
3 Fila relativa, columna absoluta
4 Relativa


Para comprender el uso de esta función veamos el siguiente ejemplo.

Supongamos que:
   A1: 3   B1: 2   C1: =A1+B1


La siguiente macro que se aplica a la celda C1 la convertirá en =$#38;A$#38;1+$#38;B$#38;1, es decir, en absoluta.
   Cambiar_Referencias   =PARA.CELDA("activa";;VERDADERO)   =FORMULA(FORMULA.CONVERTIR(INDICAR.CELDA(6;activa);-      VERDADERO;FALSO;1;activa);activa)   =SALIR.BUCLE()   =VOLVER()


Si cambiamos de 1 a 4 el argumento A_tipo_ref de la función FORMULA.CONVERTIR() y volvemos a aplicar la macro anterior a la celda C1 (que ahora tiene =$#38;A$#38;1+$#38;B$#38;1) se convertirá en =A1+B1, es decir, la referencia absoluta pasará a ser relativa.
   prueba   =PARA.CELDA("activa";;VERDADERO)   =FORMULA(FORMULA.CONVERTIR(INDICAR.CELDA(6;activa);VERDADERO;      FALSO;4;activa);activa)   =SALIR.BUCLE()   =VOLVER()




VERSIÓN 5.0

En la versión 5.0 es posible utilizar el método ConvertiFórmula en un módulo de Visual Basic para Aplicaciones, para cambiar el tipo de referencia de una fórmula.

Ejemplo:
   Proced Conv_TipoRef()   Dim Conv QueSea Cadena   'Pregunta al usuario que tipo de cambio quiere realizar   Conv = Aplicación.CuadroEntrada _      ("Teclee A para cambiar el tipo de referencia a Absoluta, R _        para Relativa"; "Cambiar tipo de referencia")   'Si se cambian las referencias de relativas a absolutas   Si Mayús(Conv) = "A" Entonces      'Bucle para actuar en cada celda seleccionada      Para Cada micelda En Selección             'Almacenar la fórmula de la celda como variable         MiFórmula = micelda.Fórmula         'Convertir fórmula a estilo absoluto         NuevaFórmula = Aplicación.ConvertirFórmula _         (Fórmula:=MiFórmula; _         DeEstiloReferencia:=xlA1; _         aEstiloReferencia:=xlA1; _         AReferenciaAbsoluta:=xlAbsoluta)         'Reemplazar la fórmula anterior con la nueva fórmula absoluta         micelda.Fórmula = NuevaFórmula      Siguiente   'Si se cambian las referencias de absolutas a relativas   SinoSi Mayús(Conv) = "R" Entonces      'Bucle para actuar en cada celda seleccionada      Para Cada micelda En Selección         'Almacenar la formula de la celda como variable         MiFórmula = micelda.Fórmula         'Convertir fórmula a estilo relativo         NuevaFórmula = Aplicación.ConvertirFórmula _           (Fórmula:=MiFórmula; _           DeEstiloReferencia:=xlA1; _           aEstiloReferencia:=xlA1; _           AReferenciaAbsoluta:=xlRelativa)                 'Reemplazar la fórmula anterior con la nueva fórmula absoluta         micelda.Fórmula = NuevaFórmula      Siguiente   'Mostrar mensaje de error si la opción elegida no es válida   SinoSi Mayús(Conv) <> "FALSO" Entonces      MiMensaje = "Teclee A para cambiar el tipo de referencia a _         Absoluta, R para Relativa"      MiTítulo = "Opción no válida"      MiCuadro = CuadroMsj(MiMensaje; 0; MiTítulo)   Fin Si   Fin Proced


PRECAUCIÓN: CUALQUIER UTILIZACIÓN POR SU PARTE DEL CÓDIGO O MACRO INCLUIDO EN ESTE ARTÍCULO SE HARÁ A SU CUENTA Y RIESGO. Microsoft facilita este código o macro "tal cual" sin garantía de ningún tipo, ya sea explícita o implícita, incluyendo expresamente en tal exención de responsabilidad y, a efectos meramente enunciativos y no limitativos, las garantías legales mercantiles implícitas y/o la adecuación a un propósito o finalidad en particular.
Propiedades

Id. de artículo: 550374 - Última revisión: 04/21/2005 00:02:02 - Revisión: 1.2

Microsoft Excel 5.0 Standard Edition, Microsoft Excel 95 Standard Edition

  • absoluta convertir excel referencia relativa KB550374
Comentarios
html>