Saltar al contenido

Listar archivos de una carpeta


Carlos

Recommended Posts

publicado

Buen día a Todos;

Estaba actualizando mi música con la tendencia del momento, y necesitaba saber que canciones ya tenía para no duplicar, por lo que se me facilitaría más si tuviera un listado en Excel de mis canciones, obviamente hacerlo manual NO ERA LA OPCIÓN,, y encontré la forma de hacerlo desde el Símbolo del sistema (cmd.exe), y los pasos son los siguientes:

1. Ejecutar la línea de comandos de Windows:

- Inicio -> Ejecutar -> cmd y enter

2. Ir a la carpeta que deseáis listar, aquí una serie de instrucciones básicas:

- Para ver el contenido de la carpeta actual se hace con "dir".

- Para acceder a una carpeta "cd nombreDeLaCarpeta".

- Para cambiar de unidad > "NombreDeLaUnidad:" Ejemplo -> "d:" (sin las comillas), nos llevaría a la unidad D

3. Ejecutamos la siguiente orden:

"dir /b > listado.xls"

Y listo tendrán su archivo en Excel con la lista de los documentos.

Espero y les sirva.

Saludos!

Carlos Muñiz

Visita mi blog: http://carlosmuniz.jimdo.com/

publicado
Curioso.

Yo agregaria ingenioso... a muchos les pudiera parecer una manera obsoleta, pero es asi como se trabaja en un sistema unix... la salida de un comando en la entrada de otro...

En cuanto al complemento de ASAP veo que tiene un sin fin de utilidades, algunas de ellas redundantes, las cuales se pueden realizar con las herramientas de Excel, otras muy exoticas (por que querria saber la resolucion? uno nunca sabe, en fin), lo bueno de ser programador es que uno puede programarse su complemento a sus gustos y necesidades. En breve espero estar compartiendo uno que he creado y que sera de gran interes!

publicado

Ese ASAP es bastante útil, sobre todo que los NO programadores son mas.

Esperamos tu complemento.

Y con respecto al cmd...

Son muchos mas que vienen del viejos DOS

Hoy en día ya se usan muy poco, todo se hace en ambiente gráfico.

post-23001-145877011794_thumb.png

publicado

Y así era el administrador de archivos y carpetas mas poderoso que había en la época del DOS.

Se llamaba Norton Commander.

El que ven en la Imagen se llama Far Manager, es un clon de ese antiguo programa y corre hasta en windows 8.1, yo lo tengo instalado y actualizado, miren los datos de la última actualización.

post-23001-1458770118_thumb.png

post-23001-145877011804_thumb.png

publicado

Y ese dir tiene otro montón de cosas.

[ATTACH=full]50011[/ATTACH]

Wow me sorprende encontrar un conocedor! Si a mi me toco estudiar algo de MSDOS y me divertia creando mis ficheros por lotes .BAT de echo hay algunos tipos que llevan a otro nivel la programacion BATCH (sobre todo para administracion de sistemas), pero hoy en dia creo que ya ha sido superado usando VBScript.

Saludos!

publicado

Ha... y con respecto a los listados de carpetas yo uso uno llamado LS - File List Generator

Me parece que ya no lo desarrollan mas por que no me entra a la WEB, pero aún lo conservo y lo uso para entregar unos reportes mensuales.

Lo tengo guardado en este enlace:

https://www.dropbox.com/sh/vc61v0vhs9kyhcz/AACKu6ov0dUpmhFBbOHiVwHCa?dl=0

Me funciona con Windows 8.1 x 64

post-23001-145877011805_thumb.png

publicado

[uSER=361]@digitalboy[/uSER]

Creo que me estudie cada comando del DOS 3.0, uno por uno, usando un poderoso 8088 de 4.77 mhz (10 mhz en turbo), con dos unidades de disco, 5 1/4 y 3 1/2, disco duro de 30 megas, memoria ram 512kb.

Y un mouse serial logitech de 3 botones, cuando casi todo era modo texto, worstar, lotus 123, printmaster, pctools, norton commander y muchas otras cosas que no necesitan mouse.

Ya te podrás imaginar hace cuanto fue eso.

publicado
[uSER=361]@digitalboy[/uSER]

Creo que me estudie cada comando del DOS 3.0, uno por uno, usando un poderoso 8088 de 4.77 mhz (10 mhz en turbo), con dos unidades de disco, 5 1/4 y 3 1/2, disco duro de 30 megas, memoria ram 512kb.

Ya te podrás imaginar hace cuanto fue eso.

Si que ya llevas mas camino recorrido que yo en esto... yo aprendi con DOS 6.0 y mi primer paquina una pentium a 400 mhz

Mi complemento tiene esa opcion de listar archivos, solo tienes que hacer uso del file system object y vuala! te da toda la info que desees!

publicado

WOW!! Gratos recuerdos. Yo también soy de los viejecitos que usaron (y aún usan) D.O.S. Les comento que nuestro adorado y antiguo "Norton Commander" tuvo un amiguito similar que se llamaba "Windows Commander" pero se metió en un gran lío legal por el uso de la palabra "Windows" así que se vio obligado a cambiar de nombre a "Total Commander"

Tiene interfase gráfica y corre en Windows XP/7/8. Tiene más funciones que el antiguo Norton Commander. De verdad que es el mejor administrador de archivos que conozco... RECOMENDABLE 10000000%

publicado
"Total Commander" ...

Lo conozco, lo he usado, y después de compararlo contra el FreeCommander, que es gratuito 100% me decidí por el FreeComander.

Me parece mas personalizable mas configurable, la apariencia se puede poner a tu propio gusto, cuenta con todo lo necesario para Administrar Archivos y carpetas.

Se los recomiendo.

Enlace WEB: http://www.freecommander.com/

post-23001-145877011872_thumb.png

  • 3 weeks later...
publicado
Para capturar pantallas a la medida requerida,,, puedes utilizar la siguiente combinación también:

Símbolo de Windows + "S"

Hola,

Pero para hacer eso se necesita el OneNote

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.