Jump to content

Macro colocar datos de txt importado


Recommended Posts

Buenas a todos

Necesito ayuda para automatizar la colocación de unos txt importados a excel. Ya tengo macro para que me importe los txt, pero no consigo lo siguiente:

Comento el excel que adjunto y que es lo que intento.

La primera pestaña, es para lanzar las macros

La pestaña txt 1 se pega los datos del txt importado, así como en la pestaña  txt 2.

En Hoja2, es donde tengo ya ordenados " a mano" como deberían de quedar los datos de (txt1), y me gustaría que fuera automático.

     en esta hoja, en la primera columna Suma la fecha + hora ( con formato personalizado), para quedar unido, y luego al ordenarlo de menor a mayor, se colocan el resto de columnas.

     el encabezado del resto de columnas, habría que renombrarlos como en ejemplo: si es "Media.Amb.Media.TEMP.PV" (esto es  fijo pero a veces puede venir con algún letra mas delante) debería de poner : Med.tmp , y en el resto de encabezados, cogiendo los dos últimos números antes del "." con tmp delante.  P3TT0277.DACA.PV seria tmp 77.

hay que tener en cuenta que las filas y columnas pueden variar.

 

En la Hoja3, igual que en la 2, pero solo renombrando los P3PT0061.DACA.PV por vc 61.

 

por aquí parece complicado de explicar y entender, pero se ve mas claro en ejemplo incluido.

 

Muchas Gracias de antemano.

 

Saludos

 

                                                                                         

ejemplo.zip

Link to post
Share on other sites

Hola de nuevo bigpetroman, el código es perfecto y rápido, pero necesito que en las Hojas 2 y 3, se peguen a partir de la fila 6 y no desde la fila 1, intento modificar el código pero me salta el depurador.

Gracias de nuevo

Al final lo conseguí modificar, pero me surge otra duda.

¿Hay alguna manera de automatizar los gráficos automáticamente? adjunto de nuevo el archivo con graficos…

que se actualice con los datos de Hoja2 en Grafico txt1 y Hoja 3 en Grafico txt2.

Solo veo opción de hacerlo, convirtiendo las hojas 2 y 3 como tablas, pero no es lo que busco.

Gracias de nuevo por todo, Un Saludo

 

 

de txt a excel 2.xlsm

Edited by karrakilla
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
a


  • Crear macros Excel

  • Posts

    • Bigpetroma, eres un genio al final me diste la solución lo es probado con el código que a me ha dejado y funciona bastante bien hasta ahora así como esta ejecutando es la solución perfecta, gracias por ahora seria tema cerrado.
    • amigo, lamentablemente NO nos estamos entendiendo, tu quieres que la macro haga algo pero no terminas de explicar, lo mas que voy a hacer por ti es dejarte esta macro que hace lo mismo que tu macro original pero mucho mas resumida Sub correspondencia() Dim NumCriterios As Variant Dim nCantDatos As Double Dim nDatos As Double Dim wHoja As Worksheet Dim nVariable As Integer Dim sVariable As String Dim sDatos As String ' ' correspondencia Macro ' ' Acceso directo: CTRL+a ' ''''''''''''''''''pedimos la cantidad de crieterios ''''''''''''''''''''''''''''''''''''''''''''''''''''''' NumCriterios = InputBox("Escribe el número de criterios") 'Caja de texto para escribir el numero de criterios If IsNumeric(NumCriterios) = False Then Exit Sub '''''''''''''''''' obtenemos la cantidad de datos a procesar ''''''''''''''''''''''''''''''''''''''''''''''''''''''' nCantDatos = Sheets("BD").Cells(Rows.Count, "A").End(xlUp).Row 'contar el numero de nDatos For nDatos = 2 To nCantDatos 'Ciclo para realizar las combinaciones Worksheets("Correspondencia").Copy Before:=Sheets(nDatos) Set wHoja = ActiveSheet For nVariable = 1 To NumCriterios sVariable = Worksheets("BD").Cells(1, nVariable).Value sDato = Worksheets("BD").Cells(nDatos, nVariable).Value wHoja.Cells.Replace What:="<" & sVariable & ">", Replacement:=sDato, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False 'Busca y reemplaza los valores de la base de nDatos Next nVariable Next nDatos End Sub   de resto no puedo ayudarte mas, pues tienes que ayudarme a entender para poder ayudarte, la macro supuestamente busca hasta 8 campos (tu macro original) en la tabla de la hoja DB, pero esa hoja solo tiene 2 campos nombre y nota, no veo el sentido de elegir 8 criterios cuando NO existen. y lo otro, dices que algunos no te cuadran, pero no dices cual para revisar. suerte  
    • Si disculpe, pero como lo digo solo eso necesito esa macro necesito que me replique la correspondencia pero hasta ahí funciona bien pero en la sumatoria en algunas correspondencias no lo suma bien solo eso el total sale distinto a los criterios.
    • Saludo amigo hace mes me ayudaste con este archivo que   ponga Trimestre i aparezca solo los meses Ene, Feb, Mar; Trimestre II aparezca solo Abril, May, Jun; Trimestre III aparezca solo Jul, Agos, Set; Trimestre IV aparezca solo Oct, Nov, Dic, se estuviera a su alcance me lo pudiera corregir solos que aparezcan por mes se pongo enero me aparezca solo enero y así sucesivamente con los otros meses gracias 
    • yo veo lo que hace la macro, simplemente hace una copia de la hoja Correspondencia y supuestamente sustituye los criterios o campos, pero en este caso simplemente cambia solo dos, <nombre> y <nota> y tu hablas hasta de 8 criterios, si puedes explicar lo que intentas hacer
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy