Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

253
Views
Cargue archivos de formulario de Google en dos carpetas diferentes de Google Drive

Tengo un formulario de Google que tiene dos secciones de carga de archivos. Quiero poder cargar esos archivos en dos carpetas diferentes. Los archivos de la primera sección de carga de archivos deben ir en la carpeta uno y los archivos de la segunda sección de carga de archivos deben ir en la carpeta dos. También quiero nombrar automáticamente las carpetas según el nombre de los remitentes. Las carpetas deben ir de la siguiente manera: sendername_1, sendername_2, etc., si los remitentes tienen el mismo nombre. ¿Cómo haría que esto sucediera? Encontré el script a continuación, pero parece que solo funciona con la carpeta 1. La carpeta 2 tiene los archivos de la segunda sección de carga de archivos, pero no crea automáticamente una carpeta para ellos.

 function onFormSubmit(e) { const folderId = "1y40PNXYXSm7Ue_b6nbVnauz7dzKiKj4u"; // Please set top folder ID of the destination folders. const form = FormApp.getActiveForm(); const formResponses = form.getResponses(); const itemResponses = formResponses[formResponses.length-1].getItemResponses(); Utilities.sleep(3000); // This line might not be required. // Prepare the folder. const destFolder = DriveApp.getFolderById(folderId); const folderName = itemResponses[0].getResponse(); const subFolder = destFolder.getFoldersByName(folderName); const folder = subFolder.hasNext() ? subFolder : destFolder.createFolder(folderName); // Move files to the folder. itemResponses[2].getResponse().forEach(id => DriveApp.getFileById(id).moveTo(folder)); }
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Aquí hay una muestra de cómo lo abordaría:

 function getIdFromUrl(url) { return url.match(/[-\w]{25,}/); } function automateFile (e) { var name = e.values[2] var file1 = e.values[3]; var file2 = e.values[4]; var drive = DriveApp; var parentFolder = drive.getFolderById("1vJcsklbZ_Lk0b3CH0JxUHN8UzNI0eKXV"); //Set Parent Folder ID var createFolder1 = drive.createFolder(name + '_1').moveTo(parentFolder); var createFolder2 = drive.createFolder(name + '_2').moveTo(parentFolder); var getfileId1 = getIdFromUrl(file1); //Gets the file ID 1 drive.getFileById(getfileId1).moveTo(createFolder1); // Moves the file to Folder1 var getfileId2 = getIdFromUrl(file2); //Gets the file ID 2 drive.getFileById(getfileId2).moveTo(createFolder2); // Moves the file to Folder2 }

NOTAS: Este script se realizó en Google Sheets Apps Script, que es la hoja creada para Form Responses en Google Forms.

Asegúrate de crear un disparador así: ingrese la descripción de la imagen aquí

Utilicé esta función getIdFromUrl(url) de esta referencia ya que el archivo file1 y el archivo file2 solo devuelven la URL completa, y no el ID del archivo, y a partir de ahora no existe un método getFileById para mover los archivos cargados desde su formulario.

Captura de pantalla de mi formulario de Google: ingrese la descripción de la imagen aquí

Unidad interior: ingrese la descripción de la imagen aquí

Los archivos se mueven dentro de las carpetas creadas: ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!