Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

más de 255 caracteres en una celda de excel

Estas en el tema de más de 255 caracteres en una celda de excel en el foro de Visual Basic clásico en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 15/06/2010, 10:11
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
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
  #2 (permalink)  
Antiguo 16/06/2010, 08:48
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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
  #3 (permalink)  
Antiguo 16/06/2010, 09:01
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
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
  #4 (permalink)  
Antiguo 16/06/2010, 09:39
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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



Nota: Puse una referencia a Excel 11.0. La cadena es de 287 numeros.
  #5 (permalink)  
Antiguo 16/06/2010, 09:55
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
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.
  #6 (permalink)  
Antiguo 16/06/2010, 10:17
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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!!
  #7 (permalink)  
Antiguo 16/06/2010, 10:26
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 meses
Puntos: 53
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
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...
  #8 (permalink)  
Antiguo 16/06/2010, 10:30
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
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.
  #9 (permalink)  
Antiguo 16/06/2010, 10:52
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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...
  #10 (permalink)  
Antiguo 16/06/2010, 11:31
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: más de 255 caracteres en una celda de excel

No puedo abrir el link que enviaste
  #11 (permalink)  
Antiguo 16/06/2010, 11:44
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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"?
  #12 (permalink)  
Antiguo 16/06/2010, 11:51
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: más de 255 caracteres en una celda de excel

no carga la página, aparece un mensaje de blocked by websense
  #13 (permalink)  
Antiguo 16/06/2010, 12:19
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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
  #14 (permalink)  
Antiguo 16/06/2010, 12:25
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
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.
  #15 (permalink)  
Antiguo 16/06/2010, 12:31
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
Respuesta: más de 255 caracteres en una celda de excel

Que Office tienes instalado? 2003?
  #16 (permalink)  
Antiguo 16/06/2010, 12:32
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: más de 255 caracteres en una celda de excel

el que tengo instalado es el 2007
  #17 (permalink)  
Antiguo 16/06/2010, 14:10
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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...
  #18 (permalink)  
Antiguo 16/06/2010, 14:12
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: más de 255 caracteres en una celda de excel

Si asi es es formato 2003
  #19 (permalink)  
Antiguo 16/06/2010, 14:44
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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?
  #20 (permalink)  
Antiguo 16/06/2010, 14:47
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: más de 255 caracteres en una celda de excel

No, se abre sin preguntar nada
  #21 (permalink)  
Antiguo 16/06/2010, 14:56
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
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...
  #22 (permalink)  
Antiguo 16/06/2010, 15:13
 
Fecha de Ingreso: enero-2008
Mensajes: 366
Antigüedad: 16 años, 3 meses
Puntos: 3
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?
  #23 (permalink)  
Antiguo 17/06/2010, 04:07
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 8 meses
Puntos: 29
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
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!

Etiquetas: caracteres, celda, excel
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:55.