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

VBasic -> Excel formato celdas

Estas en el tema de VBasic -> Excel formato celdas en el foro de Visual Basic clásico en Foros del Web. Estoy haciendo una exportacion desde mi base de datos access a formato de excel, el problema viene cuando mi registro contiene valores como "001", "005", ...
  #1 (permalink)  
Antiguo 06/10/2005, 12:24
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
Exclamación VBasic -> Excel formato celdas

Estoy haciendo una exportacion desde mi base de datos access a formato de excel, el problema viene cuando mi registro contiene valores como "001", "005", etc, al asignarselos a las celdas de excel me los pone numericos solamente "1", "5", lo cual afecta en mis ordenamientos.

Alguien sabe como asignarles el formato de Texto a una celda en excel desde Visual Basic???

Gracias por sus respuestas


Inserto un pedazo de mi funcion:

----------------------------------------------------------------
Código:
Set XlsApl = New Excel.Application
    With XlsApl
        .Workbooks.Add
        Set xlsLibro = .ActiveWorkbook
        
        With xlsLibro.Worksheets(1)
            .Activate          
            
            For X = 1 To RstInfoEmp.RecordCount
                For Y = 1 To RstInfoEmp.Fields.Count
                     'AQUI ASIGNO EL DATO DE MI RECORDSET A LA CELDA
                     'AQUI IRIA LA ASIGNACION DEL FORMATO A LA CELDA
                     'EL PROBLEMA... ¿COMO SE HACE? JEJE  
                    .Cells(X + 1, Y) = RstInfoEmp.Fields(Y - 1).Value
                Next Y
                RstInfoEmp.MoveNext
            Next X
        End With
        .Visible = False
    End With
    If RstInfoEmp.State = 1 Then RstInfoEmp.Close
    
xlsLibro.SaveAs (ADE)
xlsLibro.Close (ADE)
Set xlsLibro = Nothing
Set XlsApl = Nothing
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #2 (permalink)  
Antiguo 06/10/2005, 12:50
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
selecciona las celdas y les pones el formado que deseas para ellas.. y el formato quedará para siempre en esas celdas..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 06/10/2005, 12:54
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
El problema no es seleccionarlas, el problema es con que propiedad les asigno ese formato ????
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #4 (permalink)  
Antiguo 06/10/2005, 14:16
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
.Cells(X + 1, Y) = Format4(RstInfoEmp.Fields(Y - 1).Value,"0000")

intenta así..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #5 (permalink)  
Antiguo 06/10/2005, 14:33
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
No funcionó, la cuestion aqui es que mi dato en el recordset ya tiene ese formato: "0001", "0002", "0354", "0065"... etc pero si la celda no tiene formato tipo texto, al recibir el dato lo convierte a número, porque por default esa propiedad tienen las hojas de excel, se que si abro el documento de excel selecciono las celdas y les aplico formato de texto pero ya me perdio los 0's que tenian los numeros y la cuestion es que se debe de poder por medio de programacion.

Es decir el problema es la celda recipiente.

Seguimos buscando.

Gracias por la ayuda, si alguien lo encuentra .. fenomenal, creo que esto ya me tiene un poco loco jaja que no encuentro la forma de.
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #6 (permalink)  
Antiguo 06/10/2005, 14:38
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
ok pasa el valor a una variable de texto para que deje como texto el número..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #7 (permalink)  
Antiguo 06/10/2005, 14:43
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
No funciona
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #8 (permalink)  
Antiguo 06/10/2005, 14:54
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
la ultima upcion es que pases el valor a CSTR es lo último que te podría decir..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #9 (permalink)  
Antiguo 06/10/2005, 14:58
Avatar de aavg  
Fecha de Ingreso: abril-2002
Ubicación: Morelia México
Mensajes: 356
Antigüedad: 22 años
Puntos: 1
no tampoco funciono es que el problema no esta en el formato del origen sino en el formato del destino, las celdas de excel por default tiene formato General el cual convierte textos que tienen ceros antes como "0002" en un numero "2", mas bien es una propiedad que afecte directamente a la celda y le cambie ese formato General que Excel le da por el formato Texto. Solo que no encuentro ningun lugar donde me de propiedades del objeto excel application.

De cualquier forma gracias
__________________
Abraham Velasco
Usuario # 516 en los Foros del Web.
El hombre no vale por lo que sabe, sino por lo que transmite
C'est parce qu'il y a un Dieu que nous sommes libres
  #10 (permalink)  
Antiguo 09/10/2005, 23:54
 
Fecha de Ingreso: abril-2002
Mensajes: 55
Antigüedad: 22 años
Puntos: 0
prueba con esto:
Selection.NumberFormat = "@"

(donde selection es la celda en cuestión)

después envía los datos a dicha celda.

salu2
  #11 (permalink)  
Antiguo 15/10/2005, 21:04
Avatar de rimtzg  
Fecha de Ingreso: mayo-2005
Mensajes: 162
Antigüedad: 19 años
Puntos: 0
Porque no pruebas dejandolo asi y cuando lo abras con vb solo se los agregas
bye
__________________
Entra
El Diario de Jebediah
Brigada SOS
-----------------
  #12 (permalink)  
Antiguo 16/10/2005, 21:45
 
Fecha de Ingreso: septiembre-2005
Mensajes: 76
Antigüedad: 18 años, 7 meses
Puntos: 0
trata de madar el dato con comillas asi excel crea que es texto asi
" ' " & RstInfoEmp.Fields(Y - 1).Value & " ' "
__________________
Buby Systems
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 01:46.