como utilizo la funcion ESTEXTO() de excel desde visual basic

22/06/2007 - 07:58 por ledelatorre | Informe spam
quiero determinar el valor de una celda si es texto dejarla igual si es
numero modificarlo. Todo esto desde visual basic.. no encontre un funcion que
lo hiciera. no se si la haya. alguien me puede ayudar?

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
22/06/2007 - 08:11 | Informe spam
hola, !

quiero determinar el valor de una celda si es texto dejarla igual si es numero modificarlo.
Todo esto desde visual basic.. no encontre un funcion que lo hiciera. no se si la haya...



en vba, las funciones de hoja de calculo se utilizan 'en ingles' [p.e.]

op1: If Application.WorksheetFunction.IsText(ActiveCell) Then ...
puedes sustituir el 'ActiveCell' por referencias al estilo de vba: Worksheets("hoja1").Range("a1") [etc.]

op2: If Evaluate("istext(" & Activcell.Address & ")") Then ...

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Francisco Mty
26/06/2007 - 22:21 | Informe spam
hola para saber si el contenido de la celda activa es numerico prueba
con:

numero = isnum(activecell.value)
if numero then msgbox "Es valor numerico ..."

Saludos!


On 22 jun, 01:11, "Héctor Miguel"
wrote:
hola, !

> quiero determinar el valor de una celda si es texto dejarla igual si es numero modificarlo.
> Todo esto desde visual basic.. no encontre un funcion que lo hiciera. no se si la haya...

en vba, las funciones de hoja de calculo se utilizan 'en ingles' [p.e.]

op1: If Application.WorksheetFunction.IsText(ActiveCell) Then ...
puedes sustituir el 'ActiveCell' por referencias al estilo de vba: Worksheets("hoja1").Range("a1") [etc.]

op2: If Evaluate("istext(" & Activcell.Address & ")") Then ...

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#3 Héctor Miguel
27/06/2007 - 02:05 | Informe spam
hola, Francisco 1

para saber si el contenido de la celda activa es numerico prueba con:
numero = isnum(activecell.value)
if numero then msgbox "Es valor numerico ..."



1) de donde has 'sacado' la funcion isnum(...) -?-
probablemente te refieres a la funcion isnumeric(...) -?-

2) la funcion de vba: isnumeric(...) tiene comportamientos diferentes de las funciones de hoja de calculo [p.e.]
si suponemos que la celda activa contiene un valor 'numerico' [p.e. 123] PERO en 3 formatos diferentes...
a) normal: 123
b) precedido por apostrofo: '123
c) la celda con formato de texto

-> las funciones de hoja de calculo, llamadas desde vba [p.e. desde la ventana de inmediato]:
? evaluate("isnumber(" & activecell.address & ")") devuelve: verdadero / falso / falso
? evaluate("istext(" & activecell.address & ")") devuelve: falso / verdadero / verdadero
-> la funcion isnumeric(activecell) devuelve: verdadero -> para las tres posibilidades

3) dependiendo de cual sea la *verdadera evaluacion* que necesite OP -?-

saludos,
hector.
Respuesta Responder a este mensaje
#4 Francisco Parrilla
27/06/2007 - 06:39 | Informe spam
jeje tienes razon lo mencione de memoria

Francisco Parrilla
Operador de Sistemas
News Microsoft:
news.microsoft.com
Comunidad:
http://groups.msn.com/ExcelVbaMacrosOffice
Ayuda y Soporte:
http://support.microsoft.com/search/?adv=1

"Héctor Miguel" escribió en el mensaje
news:
hola, Francisco 1

> para saber si el contenido de la celda activa es numerico prueba con:
> numero = isnum(activecell.value)
> if numero then msgbox "Es valor numerico ..."

1) de donde has 'sacado' la funcion isnum(...) -?-
probablemente te refieres a la funcion isnumeric(...) -?-

2) la funcion de vba: isnumeric(...) tiene comportamientos diferentes de


las funciones de hoja de calculo [p.e.]
si suponemos que la celda activa contiene un valor 'numerico' [p.e.


123] PERO en 3 formatos diferentes...
a) normal: 123
b) precedido por apostrofo: '123
c) la celda con formato de texto

-> las funciones de hoja de calculo, llamadas desde vba [p.e. desde la


ventana de inmediato]:
? evaluate("isnumber(" & activecell.address & ")") devuelve:


verdadero / falso / falso
? evaluate("istext(" & activecell.address & ")") devuelve:


falso / verdadero / verdadero
-> la funcion isnumeric(activecell) devuelve: verdadero -> para las


tres posibilidades

3) dependiendo de cual sea la *verdadera evaluacion* que necesite


-?-

saludos,
hector.


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