Visual Basic - Formato de Texto en Excel

Life is soft - evento anual de software empresarial
 
Vista:

Formato de Texto en Excel

Publicado por COSS (2 intervenciones) el 19/10/2006 01:25:26
Tal vez es algo sencillo pero no he localizado.

Estoy enviando datos al excel pero por default las celdas de una hoja nuva tienen el formato de numero General y cuando mando una cadena de texto con ceros a la izquierda, me los elimina y me deja solo los numeros.

Necesito saber como enviar una cadena como esta "0000012345" y que no me lo tome como "12345"

Eso lo puedo lograr poniendo el caracter " ' " antes de cada valor, pero quiero saber si es posible hacerlo de otra manera .

el archivo de excel que estoy generando es una plantilla y todos los campor los debo llenar con ceros a la izquierda cuando no tengan la longitud necesaria.

quisiera saber si hay una opcion como el asignarle el formato de texto a la celda antes de enviarle el valor, como el caso de "NumberFormat"

Gracias por su colaboracion...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Formato de Texto en Excel

Publicado por Iván Calderón (76 intervenciones) el 19/10/2006 02:34:51
prueba algo asi:

Private Sub Command1_Click()
Dim x As Object
Set x = CreateObject("Excel.application")
x.Workbooks.Add
x.Cells(1, 1).Select
x.Selection.NumberFormat = "0000000000"
x.Cells(1, 1) = 123
x.Visible = True
Set x = Nothing
End Sub

'clarp eso es algo muy simple es solo para q tengas una idea como lo puedes hacer, seguramente hay mejores formas de hacerlo pero asi tambien funciona
saludos desde Venezuela espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de Texto en Excel

Publicado por COSS (2 intervenciones) el 24/10/2006 02:40:12
De esta forma funciona bien solo que requiere poner el formato antes de asignarle el valor a cada celda, entonces, por cada celda que le asigne un valor, es una linea de codigo extra porque cada columna lleva una longitud diferente:

Private Sub Command1_Click()
Dim x As Object
Set x = CreateObject("Excel.application")
x.Workbooks.Add
x.Cells(1, 1).Select
x.Selection.NumberFormat = "0000000000"
x.Cells(1, 1) = 123
x.Visible = True
Set x = Nothing
End Sub

De esta otra marca que se requiere un objeto:

MiHoja.Range('A1').Text = 0000012345

de inicio la propiedad Text es igual a "" (nada) pero marca el error al asignarle el valor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Formato de Texto en Excel

Publicado por Pedro (93 intervenciones) el 21/10/2006 19:57:30
En caso de que lo estés haciendo de la siguiente manera:

MiHoja.Range('A1').Value = 0000012345

Prueba de esta forma:

MiHoja.Range('A1').Text = 0000012345

Un saludo, y espero que te ayude.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar