airtable-automation

airtable-automation

熱門

Airtable 資料庫自動化 - 檢視、自動化、整合與工作流程觸發

306星標
68分支
更新於 2026/1/31
SKILL.md
唯讀
名稱
airtable-automation
描述

Airtable 資料庫自動化 - 檢視、自動化、整合與工作流程觸發

版本
1.0.0

Airtable 自動化

透過檢視、自動化、整合與跨平台工作流程自動化 Airtable 資料庫。基於 n8n 的 Airtable 整合範本。

概述

此技能涵蓋:

  • 資料庫設計與檢視
  • 內建自動化
  • n8n 整合工作流程
  • 公式與彙總設計
  • 報表與儀表板

資料庫設計

資料庫結構範本

base: "專案管理"

tables:
  Projects:
    fields:
      - Name: single_line_text (primary)
      - Status: single_select [規劃中, 進行中, 暫停, 完成]
      - Priority: single_select [P0, P1, P2, P3]
      - Owner: collaborator
      - Start Date: date
      - Due Date: date
      - Budget: currency
      - Tasks: link_to_records (Tasks)
      - Progress: rollup (Tasks.Status, COUNTIF(Done)/COUNT)
      - Days Remaining: formula (DATETIME_DIFF(Due Date, TODAY(), 'days'))
      
  Tasks:
    fields:
      - Task Name: single_line_text (primary)
      - Project: link_to_records (Projects)
      - Status: single_select [待辦, 進行中, 審查, 完成]
      - Assignee: collaborator
      - Due Date: date
      - Hours Estimated: number
      - Hours Actual: number
      - Attachments: attachment
      
  Team:
    fields:
      - Name: single_line_text (primary)
      - Email: email
      - Role: single_select [PM, 開發者, 設計師, QA]
      - Current Projects: link_to_records (Projects)
      - Capacity: number (hours/week)
      - Utilization: rollup (calculate from Tasks)

檢視設定

views:
  Projects:
    - Grid: 所有專案
        fields: [Name, Status, Owner, Due Date, Progress]
        sort: Due Date (ascending)
        
    - Kanban: 依狀態分組
        group_by: Status
        card_fields: [Name, Owner, Due Date]
        
    - Calendar: 時間軸
        date_field: Due Date
        
    - Gallery: 專案卡片
        cover: Attachments
        
  Tasks:
    - Grid: 我的任務
        filter: Assignee = {Current User}
        sort: Due Date
        
    - Kanban: 衝刺看板
        group_by: Status
        
    - Calendar: 任務行事曆
        date_field: Due Date

自動化

內建 Airtable 自動化

automation_1:
  name: "新任務通知"
  trigger:
    when: record_created
    table: Tasks
  actions:
    - send_slack:
        channel: "#project-updates"
        message: |
          📋 新任務已建立!
          任務:{Task Name}
          專案:{Project}
          負責人:{Assignee}
          截止日:{Due Date}

automation_2:
  name: "逾期任務提醒"
  trigger:
    when: record_matches_conditions
    table: Tasks
    conditions:
      - Status: not "Done"
      - Due Date: before today
  actions:
    - send_email:
        to: "{Assignee.email}"
        subject: "⚠️ 逾期任務:{Task Name}"
        body: "您的任務「{Task Name}」應於 {Due Date} 完成。"
    - update_record:
        field: Status
        value: "Overdue"

automation_3:
  name: "專案完成"
  trigger:
    when: record_updated
    table: Projects
    field: Progress
    condition: equals 100%
  actions:
    - update_record:
        field: Status
        value: "Complete"
    - send_slack:
        channel: "#wins"
        message: "🎉 專案「{Name}」已完成!"

n8n 整合工作流程

workflow: "表單到 Airtable 再到 CRM"

trigger: typeform_submission

steps:
  1. create_airtable_record:
      base: "Leads"
      table: "Contacts"
      fields:
        Name: "{form.name}"
        Email: "{form.email}"
        Company: "{form.company}"
        Source: "網站表單"
        Created: "{timestamp}"
        
  2. enrich_data:
      clearbit: lookup_email
      update_record:
        Company Size: "{clearbit.company_size}"
        Industry: "{clearbit.industry}"
        
  3. sync_to_hubspot:
      create_contact:
        email: "{email}"
        properties: from_airtable
        
  4. notify_sales:
      slack:
        channel: "#new-leads"
        message: "新潛在客戶:{Name} 來自 {Company}"

公式參考

常用公式

formulas:
  days_until_due:
    formula: "DATETIME_DIFF({Due Date}, TODAY(), 'days')"
    output: number
    
  is_overdue:
    formula: "IF(AND({Status}!='Done', {Due Date}<TODAY()), '是', '否')"
    output: text
    
  full_name:
    formula: "CONCATENATE({First Name}, ' ', {Last Name})"
    output: text
    
  progress_bar:
    formula: |
      REPT('▓', ROUND({Progress}/10, 0)) & 
      REPT('░', 10-ROUND({Progress}/10, 0)) & 
      ' ' & ROUND({Progress}, 0) & '%'
    output: text (視覺化進度)
    
  status_emoji:
    formula: |
      SWITCH({Status},
        'To Do', '⬜',
        'In Progress', '🔵',
        'Review', '🟡',
        'Done', '✅',
        '❓'
      )
    output: text
    
  workdays_remaining:
    formula: "WORKDAY_DIFF(TODAY(), {Due Date})"
    output: number
    
  quarter:
    formula: |
      'Q' & CEILING(MONTH({Date})/3) & ' ' & YEAR({Date})
    output: text

彙總範例

rollups:
  task_count:
    linked_field: Tasks
    aggregation: COUNT(values)
    
  total_hours:
    linked_field: Tasks
    rollup_field: Hours Estimated
    aggregation: SUM(values)
    
  completion_rate:
    linked_field: Tasks
    rollup_field: Status
    aggregation: |
      COUNTALL(IF(values='Done', 1)) / COUNT(values) * 100
      
  average_rating:
    linked_field: Reviews
    rollup_field: Rating
    aggregation: AVERAGE(values)

整合模式

Airtable + Slack

slack_integration:
  new_record_notification:
    trigger: record_created
    action: post_to_channel
    template: |
      *新 {Table} 記錄*
      {Field1}: {value1}
      {Field2}: {value2}
      <{record_url}|在 Airtable 中檢視>
      
  daily_digest:
    schedule: "平日早上 9 點"
    query: records_due_today
    action: post_summary
    
  slash_command:
    command: /airtable-add
    action: create_record_from_slack

Airtable + 行事曆

calendar_sync:
  airtable_to_google:
    trigger: record_with_date_created
    action: create_calendar_event
    mapping:
      title: "{Name}"
      start: "{Date}"
      description: "{Notes}"
      
  google_to_airtable:
    trigger: calendar_event_created
    action: create_airtable_record
    mapping:
      Name: "{event.title}"
      Date: "{event.start}"
      Type: "會議"

Airtable + Zapier/n8n

multi_step_workflow:
  name: "潛在客戶處理管線"
  
  trigger:
    platform: airtable
    event: new_record
    table: Raw Leads
    
  steps:
    - enrich:
        service: clearbit
        input: email
        output: company_data
        
    - score:
        service: ai_scoring
        criteria: [company_size, industry, title]
        output: lead_score
        
    - route:
        condition: lead_score
        high: assign_to_sales
        medium: add_to_nurture
        low: mark_as_cold
        
    - update_airtable:
        table: Qualified Leads
        fields: [enriched_data, score, assignment]
        
    - notify:
        if: high_score
        slack: dm_sales_rep

報表範本

每週狀態報告

report_automation:
  schedule: "週五下午 5 點"
  
  queries:
    completed_this_week:
      table: Tasks
      filter: 
        - Status: Done
        - Completed Date: this_week
        
    in_progress:
      table: Tasks
      filter:
        - Status: In Progress
        
    overdue:
      table: Tasks
      filter:
        - Status: not Done
        - Due Date: before today
        
  output:
    format: markdown
    destination: [slack, email]
    template: |
      # 每週狀態報告 - {week}
      
      ## 已完成 ({completed_count})
      {completed_list}
      
      ## 進行中 ({in_progress_count})
      {in_progress_list}
      
      ## 逾期 ({overdue_count}) ⚠️
      {overdue_list}
      
      ## 指標
      - 完成率:{rate}%
      - 準時交付率:{on_time}%

儀表板檢視

dashboard:
  name: "專案儀表板"
  
  widgets:
    - summary_bar:
        metrics:
          - 專案總數:COUNT(Projects)
          - 進行中:COUNT(Status='Active')
          - 有風險:COUNT(Days Remaining < 7)
          
    - progress_chart:
        type: bar
        data: Projects grouped by Status
        
    - upcoming_deadlines:
        type: list
        query: Projects where Due Date in next 14 days
        sort: Due Date ascending
        limit: 10
        
    - team_utilization:
        type: horizontal_bar
        data: Team members by task count

輸出範例

請求:「為內容行銷設計一個 Airtable 資料庫」

輸出

# 內容行銷資料庫

## 表格

### 1. 內容行事曆
| 欄位 | 類型 | 用途 |
|-------|------|---------|
| 標題 | 文字 | 內容標題 |
| 狀態 | 選項 | 想法 → 草稿 → 審查 → 已發布 |
| 類型 | 選項 | 部落格、影片、社群、電子郵件 |
| 作者 | 協作者 | 指定撰稿人 |
| 發布日期 | 日期 | 目標發布日期 |
| 平台 | 多選 | 部落格、LinkedIn、Twitter |
| 關鍵字 | 多選 | SEO 關鍵字 |
| 成效 | 連結 | → Analytics |

### 2. 分析
| 欄位 | 類型 | 用途 |
|-------|------|---------|
| 內容 | 連結 | → 內容行事曆 |
| 瀏覽數 | 數字 | 頁面瀏覽次數 |
| 互動數 | 數字 | 按讚 + 留言 |
| 轉換數 | 數字 | CTA 點擊次數 |
| 日期 | 日期 | 測量日期 |

## 自動化

**1. 新內容想法**

觸發:記錄建立
動作:Slack 到 #content-ideas


**2. 準備審查**

觸發:狀態 → Review
動作:寄信給編輯 + 設定截止日


**3. 已發布**

觸發:狀態 → Published
動作:

  • 發布到社群排程器
  • 新增分析追蹤列
  • 在 Slack 慶祝 🎉

## 檢視
- 📅 行事曆檢視(依發布日期)
- 📊 看板(依狀態)
- 👤 我的內容(依作者篩選)
- 📈 成效儀表板

Airtable 自動化技能 - Claude Office Skills 的一部分