Modificar UDF para "ver formula" matricial

05/08/2006 - 17:58 por Gabriel Raigosa | Informe spam
Saludos:

Uso la siguente UDF para ver la formula dentro de una celda

Function VerFormula(InputCell As Range) As String
VerFormula = InputCell.FormulaLocal
End Function


Cuando la formula en la celda es matricial la UDF muestra la formula
SIN los signos { }

Como se podria modificar la UDF para que detectara si la formula es
matricial y en tal caso que mostrara la funcion con los { }

Por ejemplo, tengo una matricial en una celda y =VerFormula("celda")
muestra

=SUMAPRODUCTO(--ABS(A3:B5))

lo que quiero es que la funcion la mostrara como

{=SUMAPRODUCTO(--ABS(A3:B5))}

Gabriel Raigosa
Medellín - Colombia
MSN: HK4QYK"@"hotmail.com
news://msnews.microsoft.com/
news://msnews.microsoft.com/microso...c.es.excel

Preguntas similare

Leer las respuestas

#1 KL
05/08/2006 - 22:29 | Informe spam
Hola Gabriel,

Que tal algo asi:

Function VerFormula(InputCell As Range) As String
With InputCell
VerFormula = IIf(.HasArray, "{" & .Formula & "}", .Formula)
End With
End Function

Saludos,
KL


"Gabriel Raigosa" wrote in message news:
Saludos:

Uso la siguente UDF para ver la formula dentro de una celda

Function VerFormula(InputCell As Range) As String
VerFormula = InputCell.FormulaLocal
End Function


Cuando la formula en la celda es matricial la UDF muestra la formula
SIN los signos { }

Como se podria modificar la UDF para que detectara si la formula es
matricial y en tal caso que mostrara la funcion con los { }

Por ejemplo, tengo una matricial en una celda y =VerFormula("celda")
muestra

=SUMAPRODUCTO(--ABS(A3:B5))

lo que quiero es que la funcion la mostrara como

{=SUMAPRODUCTO(--ABS(A3:B5))}

Gabriel Raigosa
Medellín - Colombia
MSN: HK4QYK"@"hotmail.com
news://msnews.microsoft.com/
news://msnews.microsoft.com/microso...c.es.excel



Respuesta Responder a este mensaje
#2 Héctor Miguel
05/08/2006 - 23:55 | Informe spam
hola, chicos !

solo comentar que la formula que expone Gabriel 'originalmente' como ejemplo:
-> =SUMAPRODUCTO(--ABS(A3:B5))

- no requiere del 'doble menos'
- tampoco requiere de una entrada 'matricial' [aunque se puede 'matricializar' cualquier formula] ;)

saludos,
hector.

KL escribio en el mensaje ...
Function VerFormula(InputCell As Range) As String
With InputCell
VerFormula = IIf(.HasArray, "{" & .Formula & "}", .Formula)
End With
End Function

Gabriel Raigosa escribio en el mensaje ..
Uso la siguente UDF para ver la formula dentro de una celda
Function VerFormula(InputCell As Range) As String
VerFormula = InputCell.FormulaLocal
End Function
Cuando la formula en la celda es matricial la UDF muestra la formula SIN los signos { }
Como se podria modificar la UDF para que detectara si la formula es matricial y en tal caso que mostrara la funcion con los { }
Por ejemplo, tengo una matricial en una celda y =VerFormula("celda") muestra
=SUMAPRODUCTO(--ABS(A3:B5))
lo que quiero es que la funcion la mostrara como
{=SUMAPRODUCTO(--ABS(A3:B5))}
Respuesta Responder a este mensaje
#3 Héctor Miguel
06/08/2006 - 08:21 | Informe spam
hola, chicos !

Gabriel Raigosa escribio en el mensaje ...
KLesta vez si la ganaste, independiente de que sea matricial o no, la respuesta tuya fue 100%
solo hice un cambio
Function VerFormula(InputCell As Range) As String
With InputCell
VerFormula = IIf(.HasArray, "{" & .Formula & "}", .FormulaLocal)
End With
End Function
ya se como es el tema entre hector y tu...
Hector, esta vez no te puedes defender con una correccion de centavos o centimos, KL salio con euros y dolares...



[honestamente ?]... no veo 'tema de defensa' [en favor de ninguno] :))
salvo el hecho de que a KL 'le toco' responder antes que alguna otra propuesta [o sea... el 'timing']... ;)
[y solo por no 'dejarla en el tintero', al igual que el comentario 'complementario' de la funcion que expusiste]...
mi propuesta ERA [practicamente] la misma que KL
solo que yo estaba tratando de 'proteger' algun -posible- 'desliz' si se selecciona una 'InputCell' de dos o mas celdas
[ p.e. si la formula esta en 'D1' y el usuario utilizara la UDF +/- asi: -> =VerFormula(d1:d2) ]
[lo que llevaria a un error 'involuntario' por la forma de seleccion de algun usuario... 'despistado'] :))

Function VerFormula(InputCell As Range) As String
With InputCell.Cells(1)
VerFormula = IIf(.HasArray, "{" & .FormulaLocal & "}", .FormulaLocal)
End With
End Function

saludos ;)
hector.
Respuesta Responder a este mensaje
#4 Gabriel Raigosa
06/08/2006 - 08:41 | Informe spam
hector..

tu sabes hacer us cosas, y eres de los mejores...

Gabriel Raigosa
Medellín - Colombia
MSN: HK4QYK"@"hotmail.com
news://msnews.microsoft.com/
news://msnews.microsoft.com/microso...c.es.excel

"Héctor Miguel" escribió en el mensaje
news:
| hola, chicos !
|
| > Gabriel Raigosa escribio en el mensaje ...
| > KLesta vez si la ganaste, independiente de que sea matricial o no,
la respuesta tuya fue 100%
| > solo hice un cambio
| > Function VerFormula(InputCell As Range) As String
| > With InputCell
| > VerFormula = IIf(.HasArray, "{" & .Formula & "}", .FormulaLocal)
| > End With
| > End Function
| > ya se como es el tema entre hector y tu...
| > Hector, esta vez no te puedes defender con una correccion de centavos o
centimos, KL salio con euros y dolares...
|
| [honestamente ?]... no veo 'tema de defensa' [en favor de ninguno] :))
| salvo el hecho de que a KL 'le toco' responder antes que alguna otra
propuesta [o sea... el 'timing']... ;)
| [y solo por no 'dejarla en el tintero', al igual que el comentario
'complementario' de la funcion que expusiste]...
| mi propuesta ERA [practicamente] la misma que KL
| solo que yo estaba tratando de 'proteger' algun -posible- 'desliz' si se
selecciona una 'InputCell' de dos o mas celdas
| [ p.e. si la formula esta en 'D1' y el usuario utilizara la UDF +/-
asi: -> =VerFormula(d1:d2) ]
| [lo que llevaria a un error 'involuntario' por la forma de seleccion de
algun usuario... 'despistado'] :))
|
| Function VerFormula(InputCell As Range) As String
| With InputCell.Cells(1)
| VerFormula = IIf(.HasArray, "{" & .FormulaLocal & "}", .FormulaLocal)
| End With
| End Function
|
| saludos ;)
| hector.
|
|
Respuesta Responder a este mensaje
#5 Gabriel Raigosa
06/08/2006 - 09:08 | Informe spam
una UDF para ver el contenido de una celda, solo eso

problema resulto

MH y KL

TKS a los dos

problema resuelto

Gabriel Raigosa
Medellín - Colombia
MSN: HK4QYK"@"hotmail.com
news://msnews.microsoft.com/
news://msnews.microsoft.com/microso...c.es.excel

"Gabriel Raigosa" escribió en el mensaje
news:
| Saludos:
|
| Uso la siguente UDF para ver la formula dentro de una celda
|
| Function VerFormula(InputCell As Range) As String
| VerFormula = InputCell.FormulaLocal
| End Function
|
|
| Cuando la formula en la celda es matricial la UDF muestra la formula
| SIN los signos { }
|
| Como se podria modificar la UDF para que detectara si la formula es
| matricial y en tal caso que mostrara la funcion con los { }
|
| Por ejemplo, tengo una matricial en una celda y =VerFormula("celda")
| muestra
|
| =SUMAPRODUCTO(--ABS(A3:B5))
|
| lo que quiero es que la funcion la mostrara como
|
| {=SUMAPRODUCTO(--ABS(A3:B5))}
|
| --
| Gabriel Raigosa
| Medellín - Colombia
| MSN: HK4QYK"@"hotmail.com
| news://msnews.microsoft.com/
| news://msnews.microsoft.com/microso...c.es.excel
|
|
|
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida