Saltar al contenido

Importar a excel estado de cuenta


Recommended Posts

publicado

Saludos foristas, mi duda es respecto a una importación de estados de cuenta a excel en formato PDF, regularmente funciona con los métodos de copiar y pegar, obtener datos externos, copiar a bloc de notas y después a excel, pero con filas que tienen renglones mas de 5, no respeta el formato al momento de ingresarlos en una hoja de excel y los encima, podrán apoyarme, ¿si existe algún otro método que haga la importación correcta?, de antemano muchas gracias.

 

importacion.png

edocta prueba.pdf

publicado
Hace 7 horas, Hector Suarez dijo:

¿si existe algún otro método que haga la importación correcta?

actualmente existen diversas formas de importar tablas de archivos pdf a excel, por lo que conviene si comentas cuales has probado (para no proponer lo que no te satisface ?)

p.ej. y en orden de facilidad de uso o disponibilidad:
- Power Query (de O365 -actualizado-)
- Power BI Desktop, si tu versión de excel no provee la facilidad (aunque después hay que conectar PBI con Excel:PQ)
- convertidores en línea (la "limpieza" puede ser un pelín menos laboriosa)

sobre todo, si el documento pdf contiene gráficos, tablas separadas, textos combinados o multi-línea, etc.

publicado

Saludos Héctor, solo he utilizado lo básico, en convertidor el que me ha funcionado mejor es el Nitro Pro, pero por lo que entiendo con multi-líneas no obtengo el formato de separación por columnas y filas, y también he utilizado el de -obtener datos externos de excel 365- pero de igual manera no me respeta el formato final, el PDF que estoy queriendo convertir es el de mi mensaje inicial, y tome una captura de pantalla de como finaliza la conversión, agradezco mucho tus comentarios y si me puedes orientar que me faltaría hacer para lograr mi conversión correcta.

publicado
Hace 3 horas, Hector Suarez dijo:

también he utilizado el de -obtener datos externos de excel 365- pero de igual manera no me respeta el formato final

al incursionar en herramientas y tecnologías nuevas, es común caer en "hoyos" (mientras se aprende) y no es fácil describir lo que se hizo y por qué no resultó como se esperaba (?)

1° conviene que comentes (exactamente) los pasos que sigues usando 365 para importar y transformar "tablas" de pdf's o si tu versión no tiene soporte para conectar con ese tipo de archivos (?)

2° en caso de no contar con esa facilidad, una alternativa es usar convertidores en línea (p.ej.)
- Convertir PDF a Excel en línea gratis | Adobe Acrobat
como mencioné, la limpieza pudiera ser menos laboriosa
(adjunto muestra de la conversión tu pdf por ese medio)

3° otra alternativa (a la falta del conector) es usar Power BI Desktop, herramienta que conjunta y potencia las "Power xyz" y donde puedes "terminar" transformaciones y presentaciones de los datos

4° si prefieres "conectar" transformaciones de PBI con excel:PQ, el procedimiento es "otra historia"
(adjunto una muestra de tu pdf ya en excel SIN conexiones activas a PBI)

Pdf 2 xL from PBI (ayudaExcel).xlsx Pdf 2 xL from Adobe OnLine (ayudaExcel).xlsx

publicado

me acabo de dar cuenta que el pdf no trae año en las fechas, entonces...

en las primeras transformaciones (PBI) se agrega una columna de índice

en las segundas (excel:PQ) se convierten las fechas y se ordena por el índice

adjunto la nueva versión (desde PBI)

Pdf 2 xL from PBI v2 (ayudaExcel).xlsx

publicado

Holas!

Hace 19 horas, Hector Suarez dijo:

también he utilizado el de -obtener datos externos de excel 365- pero de igual manera no me respeta el formato final

Hector

En realidad extraer tus datos a Excel, es bastante simple, pues tu pdf, ya trae incrustada la tabla, solo debes hacer unas transformaciones de reemplazar signos como el de dolar y convertir tus datos al tipo de dato correcto, de manera que se pueda trabajar posteriormente sin errores

Te adjunto un ejemplo, lo hice con Excel 365 [seria lo mismo con Power BI]

Abajo pantalla para que tengas en cuenta, que debes escoger la tabla y no la hoja del pdf

image.png

La consulta la deje como conexion, luego solo es cosa de cargarla en la hoja que deseas y listo

 

Saludos!

Importando Pdf con Excel 365_GP.xlsx

  • 1 month later...
publicado

Muchas gracias Gerson y Miguel, una disculpa de antemano por no escribir antes, por algunas complicaciones familiares, pero, ya me quedo claro el poder importar de PDF a excel, sigo aprendiendo y leyendo, agradezco sus conocimientos y seguimos en contacto

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

  • 109 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Archivos

  • Estadísticas de descargas

    • Archivos
      188
    • Comentarios
      98
    • Revisiones
      29

    Más información sobre "Cambios en el Control Horario"
    Última descarga
    Por pegones1

    4    1

  • Crear macros Excel

  • Mensajes

    • Buenos días  @LeandroA espero estes bien Tengo un caso idéntico al planteado en la siguiente pregunta: Sin embargo, a diferencia de quien planteo originalmente la pregunta al correr el código no obtengo ningún resultado podrían ayudarme a resolver este inconveniente y que al hacer click en el Botón Guardar (CommandButton3) del Formulario RCS (frmrcs) el archivo pdf quede configurado con orientación vertical, márgenes superior, inferior, derecho e izquierdo = 1 y en página tamaño carta. Si acaso influye uso Microsoft Excel LTSC MSO (versión 2209 Compilación16.0.1.15629.20200) de 64 bits Mucho le sabre agradecer la ayuda que me pueda dar  RCS PRUEBA - copia.xlsm
    • @JSDJSDCon gusto mi estimado Para la opción 1: Sub Surtirhastadondealcanse() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets(1) Dim filaInicio As Integer: filaInicio = 4 Dim filaFin As Integer: filaFin = 7 Dim colInventario As Integer: colInventario = 2 Dim colSolicitudesInicio As Integer: colSolicitudesInicio = 4 ' Columna C Dim colResultadoInicio As Integer: colResultadoInicio = 9 ' Columna I Dim colTotalSurtido As Integer: colTotalSurtido = 12 ' Columna L Dim colFinalInventario As Integer: colFinalInventario = 13 ' Columna M Dim numClientes As Integer: numClientes = 3 Dim fila As Integer, i As Integer For fila = filaInicio To filaFin Dim inventario As Double inventario = Val(ws.Cells(fila, colInventario).Value) Dim solicitudes(1 To 3) As Double Dim surtido(1 To 3) As Variant Dim totalSurtido As Double: totalSurtido = 0 ' Leer solicitudes For i = 1 To numClientes If IsNumeric(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Then solicitudes(i) = CDbl(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Else solicitudes(i) = 0 End If surtido(i) = "POR FALTA STOCK" Next i ' Surtir de acuerdo al inventario disponible For i = 1 To numClientes If solicitudes(i) > 0 Then If inventario >= solicitudes(i) Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) ElseIf inventario > 0 Then surtido(i) = inventario totalSurtido = totalSurtido + inventario inventario = 0 Else surtido(i) = "POR FALTA STOCK" End If End If Next i ' Escribir resultados en las columnas correspondientes para cada cliente For i = 1 To numClientes With ws.Cells(fila, colResultadoInicio + i - 1) If surtido(i) = "POR FALTA STOCK" Then .Value = surtido(i) .Font.Color = vbRed Else .Value = surtido(i) .Font.Color = vbBlack End If End With Next i ' Escribir total surtido y existencia final ws.Cells(fila, colTotalSurtido).Value = totalSurtido ws.Cells(fila, colFinalInventario).Value = inventario Next fila MsgBox "Resultado surtido cargado con éxito...", vbInformation End Sub Para la opción 2:   Sub surtirenpartesiguales() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets(1) Dim filaInicio As Integer: filaInicio = 13 Dim filaFin As Integer: filaFin = 16 Dim colInventario As Integer: colInventario = 2 Dim colSolicitudesInicio As Integer: colSolicitudesInicio = 4 ' Columna C Dim colResultadoInicio As Integer: colResultadoInicio = 9 ' Columna I Dim colTotalSurtido As Integer: colTotalSurtido = 12 ' Columna L Dim colFinalInventario As Integer: colFinalInventario = 13 ' Columna M Dim numClientes As Integer: numClientes = 3 Dim fila As Integer, i As Integer For fila = filaInicio To filaFin Dim inventario As Double inventario = Val(ws.Cells(fila, colInventario).Value) Dim solicitudes(1 To 3) As Double Dim surtido(1 To 3) As Variant Dim totalSurtido As Double: totalSurtido = 0 Dim totalPedido As Double: totalPedido = 0 ' Leer solicitudes For i = 1 To numClientes If IsNumeric(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) Then solicitudes(i) = CDbl(ws.Cells(fila, colSolicitudesInicio + i - 1).Value) totalPedido = totalPedido + solicitudes(i) Else solicitudes(i) = 0 End If surtido(i) = 0 Next i ' Si hay suficiente inventario, surtir lo que el cliente pide If inventario >= totalPedido Then For i = 1 To numClientes If solicitudes(i) > 0 And inventario >= solicitudes(i) Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) End If Next i Else ' Reparto base igualitario Dim baseSurtido As Long baseSurtido = Int(inventario / numClientes) For i = 1 To numClientes If solicitudes(i) > 0 Then If solicitudes(i) <= baseSurtido Then surtido(i) = solicitudes(i) inventario = inventario - solicitudes(i) totalSurtido = totalSurtido + solicitudes(i) Else surtido(i) = baseSurtido inventario = inventario - baseSurtido totalSurtido = totalSurtido + baseSurtido End If End If Next i ' Repartir sobrante restante uno por uno, respetando lo pedido Do While inventario > 0 For i = 1 To numClientes If surtido(i) < solicitudes(i) Then surtido(i) = surtido(i) + 1 totalSurtido = totalSurtido + 1 inventario = inventario - 1 If inventario = 0 Then Exit For End If Next i Loop End If ' Escribir resultados en las columnas correspondientes para cada cliente For i = 1 To numClientes With ws.Cells(fila, colResultadoInicio + i - 1) If surtido(i) = 0 Then .Value = "POR FALTA STOCK" .Font.Color = vbRed Else .Value = surtido(i) .Font.Color = vbBlack End If End With Next i ' Escribir total surtido y existencia final ws.Cells(fila, colTotalSurtido).Value = totalSurtido ws.Cells(fila, colFinalInventario).Value = inventario Next fila MsgBox "Resultado surtido cargado con éxito...", vbInformation End Sub Saludos, Diego
    • Buenos dias.  Estoy trabajando en una hoja para poder llevar un control de un pequeño almacén.  Tengo un pedido con varias líneas y "lotes" y necesito sacar las ubicaciones que coincidan con la referencia y lote que pone en el pedido. El problema viene cuando tengo la misma referencia y mismo lote en ubicaciones diferentes y necesito sacar la información en columnas diferentes. No se si  me he explicado bien, pero creo que con el ejemplo adjunto se entiende mejor. Agradecería mucho si me pudieran ayudar  Libro1.xlsx
    • Exelente solución mil gracias 
    • Podrías compartir tu solucion
  • Visualizado recientemente

    • No hay usuarios registrado para ver esta página.
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.