Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Visual Basic clásico (http://www.forosdelweb.com/f69/)
-   -   más de 255 caracteres en una celda de excel (http://www.forosdelweb.com/f69/mas-255-caracteres-celda-excel-816572/)

Betina232022 15/06/2010 10:11

más de 255 caracteres en una celda de excel
 
Hola a todos

Quiero juntar el contenido de varias celdas en excel, pero si la cadena se pasa de 255 caracteres la trunca, no las pone todas.

como se asigna una cadena mayor a 255 caracteres en una celda de excel?.

Gracias, saludos :-)

lokoman 16/06/2010 08:48

Respuesta: más de 255 caracteres en una celda de excel
 
Hola!!
Como lo estas haciendo? Esto te debe funcionar:

xlSheet.Cells(1, 1).Value = strCadena

Betina232022 16/06/2010 09:01

Respuesta: más de 255 caracteres en una celda de excel
 
Gracias por contestar.

Tengo el código asi:

Set objExcel = New Excel.Application
Set wbCupon = objExcel.Workbooks.Open(Archivo)
j=1

With objExcel.ActiveSheet
sTxt = .Cells(j, 1)
Do While sTxt <> ""
cadNFLl = cadNFLl & .Cells(j, 1).Value
j = j + 1
sTxt = .Cells(j, 1)
loop
.Cells(j, 1).Value = cadNFLl
End With

lokoman 16/06/2010 09:39

Respuesta: más de 255 caracteres en una celda de excel
 
Probe y me sale todo bien:
Código vb:
Ver original
  1. Private Sub cmd_Click()
  2.     Set objexcel = New Excel.Application
  3.     Set wbCupon = objexcel.Workbooks.Open("D:\Me\Down\New\Exe\Libro1.xls")
  4.     j = 1
  5.    
  6.     With objexcel.ActiveSheet
  7.         stxt = .Cells(j, 1)
  8.         Do While stxt <> ""
  9.             cadNFLl = cadNFLl & .Cells(j, 1).Value
  10.             j = j + 1
  11.             stxt = .Cells(j, 1)
  12.         Loop
  13.         .Cells(j, 1).Value = cadNFLl
  14.     End With
  15. End Sub

http://s3.subirimagenes.com:81/image...0973libro1.png

Nota: Puse una referencia a Excel 11.0. La cadena es de 287 numeros.

Betina232022 16/06/2010 09:55

Respuesta: más de 255 caracteres en una celda de excel
 
Ya lo cheque y la cadena string cadNFLl si tiene todos los datos y al pasarlo a la celda imprimo su valor y también lo muestra pero al abrir el archivo xls tiene solo 255 caracteres.

lokoman 16/06/2010 10:17

Respuesta: más de 255 caracteres en una celda de excel
 
Ya está!!
Intenta asi:
Código vb:
Ver original
  1. Private Sub cmd_Click()
  2.     Set objexcel = New Excel.Application
  3.     Set wbCupon = objexcel.Workbooks.Open("D:\Me\Down\New\Exe\Libro1.xls")
  4.     j = 1
  5.    
  6.     With objexcel.ActiveSheet
  7.         stxt = .Cells(j, 1)
  8.         Do While stxt <> ""
  9.             cadNFLl = cadNFLl & .Cells(j, 1).Value
  10.             j = j + 1
  11.             stxt = .Cells(j, 1)
  12.         Loop
  13.         .Cells(j, 1).Value = cadNFLl
  14.     End With
  15.     objexcel.Quit
  16. End Sub

Te saldrá un cuadro preguntando si quieres guardar los cambios, dile que si y ya!!

erbuson 16/06/2010 10:26

Respuesta: más de 255 caracteres en una celda de excel
 
Hola, a mi también me funciona perfectamente, es de suponer que estás utilizando una de las últimas versiones de Excel. No se es para dar ideas y buscar explicaciones.

Saludos

pd: Tambien puedes indicar en lugar del Quit

objexcel.Visible = True que te abrirá el excel y verás el archivo

Betina232022 16/06/2010 10:30

Respuesta: más de 255 caracteres en una celda de excel
 
Puse la instrucción que mandaste, pero no quiero que pregunte si quiere guardar los cambios, asi que puse esta línea:
objExcel.ActiveWorkbook.Close SaveChanges:=True

Ya no pregunta, pero ya sea con tu instrucción o con la que puse no quiere asignar la cadena completa a la celda.

lokoman 16/06/2010 10:52

Respuesta: más de 255 caracteres en una celda de excel
 
Bajate el proyecto que hice:

http://myfreefilehosting.com/f/3d73356841_0.03MB

Prueba, le das al boton y luego abres el libro...

Betina232022 16/06/2010 11:31

Respuesta: más de 255 caracteres en una celda de excel
 
No puedo abrir el link que enviaste

lokoman 16/06/2010 11:44

Respuesta: más de 255 caracteres en una celda de excel
 
?? no te carga la pagina? que error te da? le diste a "Click Here To Download"?

Betina232022 16/06/2010 11:51

Respuesta: más de 255 caracteres en una celda de excel
 
no carga la página, aparece un mensaje de blocked by websense

lokoman 16/06/2010 12:19

Respuesta: más de 255 caracteres en una celda de excel
 
No se porque tienes bloqueo... adware? probaste la sugerencia de ersuson?

objexcel.Visible = True

Betina232022 16/06/2010 12:25

Respuesta: más de 255 caracteres en una celda de excel
 
Ya lo probe y al estar ejecutando el programa si asigna toda la cadena, pero al terminar y volver abrir el archivo el valor de la celda esta incompleto.

lokoman 16/06/2010 12:31

Respuesta: más de 255 caracteres en una celda de excel
 
Que Office tienes instalado? 2003?

Betina232022 16/06/2010 12:32

Respuesta: más de 255 caracteres en una celda de excel
 
el que tengo instalado es el 2007

lokoman 16/06/2010 14:10

Respuesta: más de 255 caracteres en una celda de excel
 
Creo que ese es el problema... el archivo de excel que abres desde vb está guardado con formato 2003? verifica...

Betina232022 16/06/2010 14:12

Respuesta: más de 255 caracteres en una celda de excel
 
Si asi es es formato 2003

lokoman 16/06/2010 14:44

Respuesta: más de 255 caracteres en una celda de excel
 
Cuando corres el proceso y abres el archivo, te sale un mensaje diciendo que está abierto y deseas reabrirlo?

Betina232022 16/06/2010 14:47

Respuesta: más de 255 caracteres en una celda de excel
 
No, se abre sin preguntar nada

lokoman 16/06/2010 14:56

Respuesta: más de 255 caracteres en una celda de excel
 
...bueno solo falta hacerlo manual haber que sale.... copia el valor de la cadena (CTRL+C) y pegalo (CTRL+V) en una celda en el libro de excel; si se truncan los datos, pues es obvio que tu excel "tiene" algo raro... si se pega completo, es entonces con la automatización que hay problemas... guarda el valor en un archivo .CSV:

Código vb:
Ver original
  1. 'Esto lo pones antes del end sub
  2. open app.path & "\libro.csv" for output as #1
  3.     write#1, cadNFLl
  4. close #1

Abre el nuevo archivo (libro.csv) con excel, a ver que trae...

Betina232022 16/06/2010 15:13

Respuesta: más de 255 caracteres en una celda de excel
 
Ya vi que es, es el excel, el formato en que se guarda el xls no me acepta más de 255 caracteres.

El programa lo que hace es que genera un xls a partir de un txt, atravez del formula one, pero como ese componente no deja poner más de 255 caracteres en una celda, en el txt viene trunca la cadena, llega a 255 y lo que resta lo pasa a la siguiente linea.

Entonces lo que pense fue que se generara el xls y después abrir otra vez el archivo y darle formato con un excel.application, pero no me acepta cadenas mayores a 255 caracteres

asi se escribe el archivo xls: Libro1.Write Ruta & NombreArchivo + ".xls", F1FileExcel5

Lo guarda con formato 2003, cuando lo abro no me pregunta nada y hago el formateo de las cadenas, pero al momento de guardarlo lo hace con el mismo 2003 y la cadena queda trunca

Bueno creo que eso es lo que pasa, sabes alguna otra forma para que me acepte las cadenas mayores a 255 caracteres?

pkj 17/06/2010 04:07

Respuesta: más de 255 caracteres en una celda de excel
 
Una idea:
Si se te muestra bien la tabla de excel al crearla, ¿no sirve si pinchas en "Guardar como..." y seleccionas un formato de excel mas moderno?
Al volver a cargarlo debería estar correcto, ¿no?

Suerte


La zona horaria es GMT -6. Ahora son las 00:44.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2025, Jelsoft Enterprises Ltd.