You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中添加「上传PDF」功能选项?

在Google Sheets中添加PDF上传选项的方案

完全可行,给你两种适合新手的实现方式:

方法一:关联Google Forms(零代码,最简单)

  • 新建Google Forms,添加与你表格对应的字段:姓名、活动日期、地点。然后添加「文件上传」字段,设置仅允许上传PDF格式。
  • 切换到Forms的「响应」标签,点击「链接到表格」,选择你已有的Google Sheets文件。之后用户提交表单时,输入的信息和上传的PDF会自动同步到表格中,PDF将以可点击的链接形式出现在对应列。

方法二:用Apps Script自定义上传按钮(表格内直接操作)

如果你想在表格界面直接完成上传,可通过简单脚本实现:

  1. 打开你的Google Sheets,点击菜单栏「扩展」→「Apps Script」。
  2. 删除默认代码,粘贴以下脚本:
function uploadPDF() {
  const ui = SpreadsheetApp.getUi();
  // 获取学生姓名
  const namePrompt = ui.prompt('请输入学生姓名:');
  const studentName = namePrompt.getResponseText();
  if (!studentName) return;

  // 选择PDF文件
  const filePrompt = ui.prompt('上传PDF文件', ui.ButtonSet.OK_CANCEL);
  if (filePrompt.getSelectedButton() !== ui.Button.OK) return;

  // 指定存储PDF的Drive文件夹(替换为你的文件夹ID)
  const storageFolder = DriveApp.getFolderById('你的Drive文件夹ID');
  const uploadedFile = storageFolder.createFile(filePrompt.getResponseText());

  // 验证文件格式
  if (uploadedFile.getMimeType() !== 'application/pdf') {
    ui.alert('仅支持PDF格式,请重新上传');
    uploadedFile.setTrashed(true);
    return;
  }

  // 将PDF链接写入对应学生行(假设姓名在A列,链接写入D列)
  const activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const dataRows = activeSheet.getDataRange().getValues();
  
  for (let i = 1; i < dataRows.length; i++) {
    if (dataRows[i][0] === studentName) {
      activeSheet.getRange(i + 1, 4).setValue(uploadedFile.getUrl());
      ui.alert('上传成功');
      return;
    }
  }
  ui.alert('未找到该学生的信息');
}
  1. 保存脚本(命名如「PDFUploader」),首次运行需按提示完成权限授权。
  2. 返回表格,可通过「扩展」→「自定义菜单」调用上传功能,或插入一张绘图作为按钮,右键分配脚本为uploadPDF。

提示:Drive文件夹ID可在文件夹的URL中获取(如https://drive.google.com/drive/folders/XXXX中的XXXX)。

注意事项

  • 推荐优先用方法一,无需代码,数据整理更规范,适合新手操作。
  • 确保你的Google Drive有足够存储空间,避免因空间不足导致上传失败。

内容的提问来源于stack exchange,提问作者HPS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 06:22:53