XLSX | ¿Cómo 🤔 convertir un 【 Excel a JSON 】 con Node JS?

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ก.ย. 2024

ความคิดเห็น • 52

  • @EWebik
    @EWebik  4 ปีที่แล้ว +3

    No te puedes perder el curso gratuito de PHP con MySQL th-cam.com/video/-AqNJf8wFAI/w-d-xo.html

  • @darkozz_
    @darkozz_ 4 ปีที่แล้ว +3

    Genial, muchas gracias!
    *PD:* Aquí les dejo una función para formatear la fecha a *DD/MM/AAAA* por si alguno lo necesita :D
    _function_ formatearFechaExcel(fechaExcel) {
    *const* diasUTC = Math.floor(fechaExcel - 25569);
    *const* valorUTC = diasUTC * 86400;
    *const* infoFecha = new Date(valorUTC * 1000);
    *const* diaFraccionado = fechaExcel - Math.floor(fechaExcel) + 0.0000001;
    *const* totalSegundosDia = Math.floor(86400 * diaFraccionado);
    *const* segundos = totalSegundosDia % 60;
    totalSegundosDia -= segundos;
    *const* horas = Math.floor(totalSegundosDia / (60 * 60));
    *const* minutos = Math.floor(totalSegundosDia / 60) % 60;
    // Convertidos a 2 dígitos
    infoFecha.setDate(infoFecha.getDate() + 1);
    *const* dia = ('0' + infoFecha.getDate()).slice(-2);
    *const* mes = ('0' + (infoFecha.getMonth() + 1)).slice(-2);
    *const* anio = infoFecha.getFullYear();
    *const* fecha = `${dia}/${mes}/${anio}`;
    * return* fecha;
    }

    • @EWebik
      @EWebik  4 ปีที่แล้ว +1

      Gracias Brayan por el aporte, estoy seguro que a muchos les será de gran ayuda!!!

    • @killerXoXpunisher
      @killerXoXpunisher 4 ปีที่แล้ว

      Por cierto muy buen aporte, esto estaba buscando jej me haz salvado el dia, solo un detalle, si alguien le pasa que la funcion te suma 1 dia a sus fechas pueden arreglarlo con esta funcion:
      function sumarDias(fecha, dias){
      fecha.setDate(fecha.getDate() + dias);
      return fecha;
      }

    • @darkozz_
      @darkozz_ 4 ปีที่แล้ว

      @@killerXoXpunisher Revisa que te cambie correctamente las primeras fecha del mes, lo noté en haciendo varias pruebas, la acabo de actualizar 🤭

  • @christianmiranda9756
    @christianmiranda9756 3 ปีที่แล้ว +5

    Por si la función del compañero no les gusta usando el for les dejo una con el map
    const datosformat = datos.map((d)=>{
    return({
    'id':d.id,
    'nombre':d.nombres,
    'saldo':d.saldo,
    'fecha':new Date((d.fecha -(25567+ 2))*86400*1000)
    })
    })

    • @fura-tan
      @fura-tan ปีที่แล้ว

      justo eso queria comentar xD

  • @josephlojan827
    @josephlojan827 4 ปีที่แล้ว +1

    Gracias estimado muy buen aporte. Saludos

    • @EWebik
      @EWebik  4 ปีที่แล้ว

      Muchas gracias, Joseph!!!

  • @alejandrograciano8070
    @alejandrograciano8070 6 หลายเดือนก่อน

    Excelente !!!!

  • @DeSofSistemas
    @DeSofSistemas 9 หลายเดือนก่อน

    Muy bueno amigo!! pero no devuelve los nombres de los campos con las comillas porque es esto?

  • @jazo2212
    @jazo2212 ปีที่แล้ว +1

    Hola estimado, podrías hacer un video de DataTables pero importando registros de un archivo Excel y con esos registros en el DataTables también que se muestre en un grafico, en Java Script complementado con librerias y si es necesario con entornos de desarrollo adicional. Ese tipo de videos todavía no se observa en TH-cam.
    Convertir registros de archivo Excel en JSON y despues estos cargarlos en un DataTable (tambien puede ser una tabla creada en Html-CSS), y finalmente los datos del DataTable reflejarlo en Graficos.
    Gracias

    • @EWebik
      @EWebik  ปีที่แล้ว +1

      Hola amigo, disculpa la tardanza, lo pongo en la lista, gracias por tu comentario, mucho éxito!!!

  • @StivenDiaz98
    @StivenDiaz98 4 ปีที่แล้ว

    Muchas gracias men, me sirvio funciono perfecto.

    • @EWebik
      @EWebik  4 ปีที่แล้ว +1

      Hola Stiven, me da mucho gusto que te haya servido, ojalá también te guste el nuevo curso de React JS que estoy creando, saludos

  • @JaferPicturesCo.
    @JaferPicturesCo. ปีที่แล้ว

    Muy interesante. Estoy iniciándome y aprendiendo. Para la realización de ejercicios encontré tu video. Me surge la duda de cómo una vez que he hecho la conversion y la tengo en mi terminal, cómo hago para guardarlo en un archivo y poder tenerlo disponible para usarlo en otras aplicaciones

    • @EWebik
      @EWebik  ปีที่แล้ว

      Hola Jafer, existen varias opciones, puedes almacenar los datos en una base de datos y después exponer esa información a través de una api. Dejar el archivo como en un link de descarga, o una tabla en una página web, todo depende del tipo de aplicaciones que estés manejando, saludos

  • @zajurin5151
    @zajurin5151 4 ปีที่แล้ว

    gracias, me fue muy útil

    • @EWebik
      @EWebik  4 ปีที่แล้ว

      Hola zajurin, me da mucho gusto que te haya sido útil, saludos!!!

  • @cristiansantiagopedrazarod3715
    @cristiansantiagopedrazarod3715 2 ปีที่แล้ว

    Muchas gracias bro

    • @EWebik
      @EWebik  2 ปีที่แล้ว

      De nada Cristian, me da gusto que te haya sido útil, saludos

  • @heningstonaguirre4607
    @heningstonaguirre4607 ปีที่แล้ว

    Medio ese Error y segui todos los pasos exactamente igual, no se cual sea el error, por ejemplo yo quiero convertir un archivo excel a json pero con son como 450, que hago en ese caso?
    Error: Cannot find module 'C:\Users\dgonz\Downloads\Excel-a-JSON\index.js'
    at Module._resolveFilename (node:internal/modules/cjs/loader:1026:15)
    at Module._load (node:internal/modules/cjs/loader:872:27)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:82:12)
    at node:internal/main/run_main_module:23:47 {
    code: 'MODULE_NOT_FOUND',
    requireStack: []

  • @josepadilla2531
    @josepadilla2531 4 ปีที่แล้ว

    hola gracias por compartir, podrías hacer un vídeo por favor para tomar puede ser los nombres y crear un nuevo archivo de excel ?

    • @EWebik
      @EWebik  4 ปีที่แล้ว

      Hola Bro!! Claro lo apunto y queda pendiente, gracias saludos.

  • @fbellod86
    @fbellod86 2 ปีที่แล้ว

    Hola, gracias por el tutorial, pero no me resulto me da este error: TypeError: excel.Sheets is not a function

  • @andiipuckett
    @andiipuckett 2 ปีที่แล้ว

    Hola disculpa, te consulto hay alguna manera de que lea los datos de un archivo excel que esta subido en un drive? . Gracias!

  • @josuelara3288
    @josuelara3288 2 ปีที่แล้ว

    Excelente aporte @EWebik funciona perfecto solo tengo una duda, es posible dentro de la hoja de excel poder seleccionar las columnas que deseamos convertir a formato json? tengo un libro de excel con 10 hojas y dentro de cada una solo quiero convertir 20 columnas es posible?

    • @astrixwr5662
      @astrixwr5662 10 หลายเดือนก่อน

      Con que lo conviertas ya es suficiente, solo extraes la propiedad que deseas nada mas

  • @josephlojan827
    @josephlojan827 4 ปีที่แล้ว +1

    Estimado una pegunta. Se puede volver a re-instalar simplemente con: npn install xlsx ? o primero se debe desinstalar ? Lo instalé pero sospecho que está mal instalado ya que me dá ciertos errores. O asesoreme como puede hacer para re-instalarlo. Gracias

    • @EWebik
      @EWebik  4 ปีที่แล้ว

      Hola Joseph, lo que puedes hacer es eliminar la carpeta node_modules y el archivo package-lock.json, y despues ejecutar npm install, con eso se vuelven a descargar todos los paquetes desde sus repositorios. Si te sigue marcando error, puedes enviarme pantallazos por correo con el error a contacto@ewebik.com.mx y veo si puedo identificar algo más, Saludos

  • @anahicruznieto5160
    @anahicruznieto5160 2 ปีที่แล้ว

    Se puede agregar en tiempo real, cada que entra un dato en excel se convierta en jso para usarlo en una interfaz web?

    • @EWebik
      @EWebik  2 ปีที่แล้ว

      Hola Anahi, disculpa la tardanza, si, podrías crear un timer que lea el archivo cada determinado tiempo, aunque, yo te recomendaría que para algo así, mejor ocupes una base de datos como MySQL o PostgreSQL, slaudos

  • @paolaurizar7403
    @paolaurizar7403 2 ปีที่แล้ว

    Que números tendria que poner para transformar a la fecha pero a hora de Bolivia... ya que me convierte a un día mas... ayuda por favor donde puedo encontrar esta info?
    new Date((data.fecha-(25567))*86400*1000)

    • @EWebik
      @EWebik  2 ปีที่แล้ว

      Hola Paola, yo acostumbro a guardar en base de datos la fecha en UTC-0 y al consultarla, le sumo el uso horario que necesite, después, aplicaría la fórmula, saludos!!!

  • @yuliaanoficial
    @yuliaanoficial 4 ปีที่แล้ว +1

    Hola, sabes como hacer que lea todas las hojas existentes?:( , gracias.

    • @EWebik
      @EWebik  4 ปีที่แล้ว +1

      Hola @Julian en esta línea de código var nombreHoja = excel.SheetNames; // regresa un array la variable "nombreHoja" es un array recorre ese array y te retorna las hojas, Saludos

    • @ztrotzo
      @ztrotzo 2 ปีที่แล้ว

      Si pudiste realizar esa configuracion para leer todas las hojas?

  • @josephlojan827
    @josephlojan827 3 ปีที่แล้ว

    Estimado hola. Estoy usando React y estoy haciendo este mismo ejercicio pero me da el error FileReader.readAsBuffer. Argument l is not a object. Por favor auxilio gracias de antemano

    • @EWebik
      @EWebik  3 ปีที่แล้ว

      Hola, también he utilizado este código en react y no he tenido ese error, revisa la ruta que esté bien, en Windows agrega doble diagonal para evitar errores, revisa que tengas permisos sobre el archivo, puedes mandarme imágenes a contacto@ewebik.com.mx, quizá pueda detectar algo más, saludos

    • @josephlojan827
      @josephlojan827 3 ปีที่แล้ว

      @@EWebik TE ACABO DE ENVIAR UN CORREO CON MI CODIGO Y EL ERROR... gracias por tu apoyo, ojala se pueda resolver.

  • @linoxd
    @linoxd 4 ปีที่แล้ว

    Hola tengo este error:
    Podria ayudarme :-(
    Error in created hook: "TypeError: _fs.readFileSync is not a function"

    • @EWebik
      @EWebik  4 ปีที่แล้ว

      Hola, lo único que se me ocurre es que no se haya instalado correctamente el paquete XLSX (npm install xlsx) Aquí encuentras toda la información paso a paso
      ewebik.com/nodejs/convertir-excel-a-json

    • @linoxd
      @linoxd 4 ปีที่แล้ว

      @@EWebik Lo estoy trabajando con VUE JS creo que ese es problema, lo probé como en el vídeo y me salio.
      Bueno de todas formas gracias por el interés y por la respuesta.

  • @eleazarsanchez6353
    @eleazarsanchez6353 2 ปีที่แล้ว

    como puedo insertar esos datos en mysql ?

    • @EWebik
      @EWebik  2 ปีที่แล้ว

      Hola Eleazar, quizá este otro video puede servirte, saludos th-cam.com/video/M_Q9q3p4OAg/w-d-xo.html

  • @isaitorressaucedo8357
    @isaitorressaucedo8357 3 ปีที่แล้ว

    Hola saludos espero te encuentres bien, tengo una pregunta, esto funciona con excel en la nube? tengo un excel en drive

    • @EWebik
      @EWebik  3 ปีที่แล้ว +1

      Hola Isai, gracias, espero también estés muy bien, te comento, mientras sea un Excel con formato válido, no hay problema, yo he creado archivos en drive de Google, los he descargado y los leo de está forma y funciono, así que todo depende de si la herramienta con la que creas el Excel, lo crea correctamente, saludos

    • @isaitorressaucedo8357
      @isaitorressaucedo8357 3 ปีที่แล้ว

      @@EWebik muchas gracias por responder, me suscribo al canal

  • @javier151991
    @javier151991 3 ปีที่แล้ว

    Hola buenas tardes, cómo haría para guardar ese json en un archivo?

    • @EWebik
      @EWebik  3 ปีที่แล้ว

      Hola, disculpa la tardanza, si aun sigues con el problema mándame un correo a contacto@ewebik.com.mx y poder ayudarte, saludos

    • @antoniocv4114
      @antoniocv4114 2 ปีที่แล้ว

      Hola Me puedes compartir, como puedo guardar el Archivo, me interesa también
      de antemano muchas gracias