Retroceder   Foro Ayuda Excel > Dudas y consultas sobre Excel > Macros y programación VBA
Registrarse Preguntas Frecuentes Lista de Foreros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
LinkBack Herramientas Desplegado
  #1  
Antiguo 22/10/08, 03:49:25
Principiante
 
Usuario desde: oct 2008
Versión de Excel: Excel 2003
Conectado desde: España
Mensajes: 2
Predeterminado abrir archivo txt desde excel automaticamente

Hola tengo un problema con una aplicacion en excel que estoy haciendo. Quisiera que teniendo excel abierto el me tome datos de un archivo .txt, y los pueda usar en excel para hacer calculos.Me dicen q se puede hacer con macro en excel pero la verdad no tengo ni idea como hacerlo, espero me puedan ayudar.Gracias.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #2  
Antiguo 22/10/08, 09:48:11
Gran participante
 
Usuario desde: jun 2008
Versión de Excel: Excel 2003
Conectado desde: España
Mensajes: 692
Predeterminado

Hola diegoandres

Te adjunto un ejemplo que ya subí a otro foro que toma los datos de un .txt
El nombre del fichero .txt va en la macro, asía que habría que modificarla para adaptarla a tus necesidades.

Espero que sea esto lo que necesitas.

Un saludo desde Vitoria
Archivos Adjuntos
Tipo de Archivo: zip PasarTXT_io_fae.zip (11,2 KB, 65 visitas)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #3  
Antiguo 22/10/08, 21:47:50
Usuario medio Excel
 
Usuario desde: oct 2008
Versión de Excel: Excel 2003
Conectado desde: Chile
Mensajes: 62
Predeterminado hola

podrias explicar el codigo????
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #4  
Antiguo 22/10/08, 22:08:48
Gran participante
 
Usuario desde: jun 2008
Versión de Excel: Excel 2003
Conectado desde: España
Mensajes: 692
Predeterminado

Hola eddo

ruta = ActiveWorkbook.Path & "\"
nomfic = "prueba.txt"

Supongo que el fichero de texto va a estar en la misma ruta que la hoja de excel, luego asigno a la variable ruta la ruta del fichero Excel.
asigno el nombre del fichero de texto a otra variable

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & ruta & nomfic, Destination:=Range("A1"))
.TextFileCommaDelimiter = True
' .TextFileSpaceDelimiter = True
.Refresh BackgroundQuery:=False
End With

Importo el fichero de texto delimitado por comas (he dejado la opción de delimitado por espacios sin activar ya que cuando subí el ejemplo al otro foro no estaba claro cuáles eran las necesidades del solicitante)

uc = Range("IV1").End(xlToLeft).Column - 1
fil = 2

Veo cuál es la última columna y asigno a una variable la primera fila de trabajo

For col = 1 To uc
uspas = Application.WorksheetFunction.Trim(Cells(1, col))
us = Left(uspas, Application.WorksheetFunction.Find("]", uspas))
pas = Right(uspas, Len(uspas) - Application.WorksheetFunction.Find("]", uspas) - 1)
Range("A" & fil) = us
Range("B" & fil) = pas
fil = fil + 1
Next col

Con el bucle voy separando los términos importados en cada celda de la fila 1 en los dos partes que llevan y los voy situando en las columnas A y B

Rows("1:1").Select
Selection.QueryTable.Delete
Selection.Delete Shift:=xlUp
Range("A1").Select

Finalmente elimino la importación realizada y listo.

Realmente va a depender de cómo estén tus datos en el fichero de texto para realizar un tratamiento u otro.

Siempre queda la posibildad de que subas tu fichero de texto y cómo quieres que te quede en Excel.

Un saludo desde Vitoria
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #5  
Antiguo 23/10/08, 04:48:21
Principiante
 
Usuario desde: oct 2008
Versión de Excel: Excel 2003
Conectado desde: España
Mensajes: 2
Predeterminado

Cita:
Empezado por ioyama Ver Mensaje
Hola eddo

ruta = ActiveWorkbook.Path & "\"
nomfic = "prueba.txt"

Supongo que el fichero de texto va a estar en la misma ruta que la hoja de excel, luego asigno a la variable ruta la ruta del fichero Excel.
asigno el nombre del fichero de texto a otra variable

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & ruta & nomfic, Destination:=Range("A1"))
.TextFileCommaDelimiter = True
' .TextFileSpaceDelimiter = True
.Refresh BackgroundQuery:=False
End With

Importo el fichero de texto delimitado por comas (he dejado la opción de delimitado por espacios sin activar ya que cuando subí el ejemplo al otro foro no estaba claro cuáles eran las necesidades del solicitante)

uc = Range("IV1").End(xlToLeft).Column - 1
fil = 2

Veo cuál es la última columna y asigno a una variable la primera fila de trabajo

For col = 1 To uc
uspas = Application.WorksheetFunction.Trim(Cells(1, col))
us = Left(uspas, Application.WorksheetFunction.Find("]", uspas))
pas = Right(uspas, Len(uspas) - Application.WorksheetFunction.Find("]", uspas) - 1)
Range("A" & fil) = us
Range("B" & fil) = pas
fil = fil + 1
Next col

Con el bucle voy separando los términos importados en cada celda de la fila 1 en los dos partes que llevan y los voy situando en las columnas A y B

Rows("1:1").Select
Selection.QueryTable.Delete
Selection.Delete Shift:=xlUp
Range("A1").Select

Finalmente elimino la importación realizada y listo.

Realmente va a depender de cómo estén tus datos en el fichero de texto para realizar un tratamiento u otro.

Siempre queda la posibildad de que subas tu fichero de texto y cómo quieres que te quede en Excel.

Un saludo desde Vitoria
Hola Ioyama

probe tu codigo con mi txt y si me funciono solo que mi txt son numeros que bienen de la siguiente forma:

152.95 206.29 141.10 195.97 111.40 133.26 178.65 125.01 152.24 320.57 283.85 592.87 262.40 219.49 200.92 157.19 195.15 251.67 182.36 200.51 187.72 197.62 170.39 174.93 179.47 -145.64 70.96 138.21 191.02 151.00 199.69 102.32 186.07 112.22 200.10 152.65 158.43 153.89 122.95 259.92 176.58 204.64 285.50 184.83 208.76 220.73 224.44 -76.74 193.50 179.06 215.36 219.49 172.46 140.69 174.93 213.71 93.24 141.93 168.74 201.75

Entonces todo me aparace en la primera columa de excel y no cada dato en una celda como deberia ser. Y lo otro es que en vez de existir el boton de ejecutar la macro deberia esta accion realizarse automaticamente cada vez que abro la hoja de excel ( es decir actualizar al abrir excel)

Si me pudes ayudar estare eternamente agradecido. Esto es muy importante para mi
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #6  
Antiguo 23/10/08, 08:29:50
Gran participante
 
Usuario desde: jun 2008
Versión de Excel: Excel 2003
Conectado desde: España
Mensajes: 692
Predeterminado

Hola Diego

Sube tu archivo de texto comprimido a .txt e indica como quieres que te queden los datos en la hoja de excel y veré que puedo hacer.

Un saludo desde Vitoria
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #7  
Antiguo 28/10/08, 19:02:37
Principiante
 
Usuario desde: sep 2008
Versión de Excel: Excel 2007
Conectado desde: Chile
Mensajes: 17
Predeterminado Archivos TXT para excel

Si lo deseas mandame un archivo en formato .TXT exactamente como baja del sistema padre y puesto en la celda "A1" de una hoja. En la otra hoja dime como quieres los datos. Te mando de vuelta una macro para que haga el parse correspondiente, no importando la cantidad de datos. Generalmente lo mas dificil es saber como quiere que queden los datos. Mi correo es: apolopealo@hotmail.com Te garantizo seriedad
__________________
Saludos cordiales
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #8  
Antiguo Ayer, 00:41:34
Principiante
 
Usuario desde: ene 2009
Versión de Excel: Excel 2003
Conectado desde: Ecuador
Mensajes: 1
Predeterminado Hola probe el código

Hola amigo he probado el codigo y pienso que me puede funcionar con mi caso, no se si me puedas ayudar si te envio mi archivo de texto y como se debe mostrar en excel.

Te lo agradecerìa mucho
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado



La franja horaria es GMT +2. Ahora son las 03:10:12.


© Ayuda Excel

Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

1 2 3 4 5 6 7