Sheets Automation

作者 claude-office-skills9c4c7d5cd281MIT499 个星标收录于 2026年10月8日更新于 2026年10月8日仓库8个月前更新

Google Sheets automation workflows - data sync, task management, reporting dashboards, and multi-platform integrations

AI 生成的概览

指导 Google Sheets 自动化工作流,涵盖数据同步、任务提醒、报表仪表板和多平台集成。

功能
该技能仅提供说明,用于构建 Google Sheets 自动化工作流,包括多源数据聚合、带 Slack 提醒的任务跟踪、定时报表生成、库存预警以及表单到 CRM 的线索捕获。它为每个场景提供 YAML 工作流大纲、表格模板和公式参考。它产出的是设置指南和示例配置,本身不运行任何自动化。
适用场景
适用于规划或记录基于 Google Sheets 的自动化,例如将 CRM、支付或分析数据同步到仪表板、发送任务提醒或生成周期性报表。适合在配置 n8n 等工具之前希望先了解工作流结构和公式示例的用户。
运行要求
仅为说明,不附带脚本。所述工作流涉及 Google Sheets 访问、n8n 类自动化平台,以及 Slack、HubSpot、Stripe、Google Analytics、Google Forms 和电子邮件等集成,还需要提供 sheets 读取、写入、追加和格式化工具的 Google Workspace MCP 服务器。

Google Sheets Automation

Automate Google Sheets workflows for data synchronization, task management, reporting dashboards, and multi-platform integrations. Based on n8n's 7,800+ workflow templates.

Overview

This skill covers:

  • Automated data sync from multiple sources
  • Task management with Slack reminders
  • Real-time reporting dashboards
  • CRM/Marketing data aggregation
  • Scheduled report generation

Core Workflows

1. Multi-Source Data Aggregation

┌─────────────┐   ┌─────────────┐   ┌─────────────┐│ HubSpot     │   │ Stripe      │   │ Google      ││ (CRM)       │   │ (Payments)  │   │ Analytics   │└──────┬──────┘   └──────┬──────┘   └──────┬──────┘       │                 │                 │       └─────────────────┼─────────────────┘                         │                         ▼              ┌──────────────────┐              │ Google Sheets    │              │ (Master Dashboard)│              └──────────────────┘                         │                         ▼              ┌──────────────────┐              │ Slack/Email      │              │ (Daily Report)   │              └──────────────────┘

n8n Configuration:

yaml
workflow: "Daily Business Metrics Sync"
schedule: "6:00 AM daily"
steps:  1. fetch_crm_data:      source: hubspot      data:        - new_leads_today        - deals_closed        - pipeline_value          2. fetch_revenue_data:      source: stripe      data:        - mrr        - new_subscriptions        - churn          3. fetch_traffic_data:      source: google_analytics      data:        - sessions        - conversions        - bounce_rate          4. update_sheets:      spreadsheet: "Business Dashboard"      sheet: "Daily Metrics"      action: append_row      data:        - date: today        - leads: "{hubspot.new_leads}"        - deals: "{hubspot.deals_closed}"        - mrr: "{stripe.mrr}"        - sessions: "{ga.sessions}"          5. update_charts:      refresh: automatic (Sheets built-in)        6. send_summary:      slack:        channel: "#daily-metrics"        message: |          📊 Daily Metrics - {date}                    💰 Revenue: ${mrr} MRR          👥 New Leads: {leads}          🎯 Deals Closed: {deals}          📈 Website Sessions: {sessions}

2. Task Management with Reminders

yaml
workflow: "Sheets Task Tracker"
trigger:  type: schedule  frequency: every_15_minutes
sheet_structure:  columns:    - A: Task    - B: Assignee    - C: Due Date    - D: Priority (High/Medium/Low)    - E: Status (Todo/In Progress/Done)    - F: Slack ID
steps:  1. read_tasks:      filter: |        Status != "Done" AND        Due Date <= TODAY() + 1          2. categorize_urgency:      overdue: Due Date < TODAY()      due_today: Due Date == TODAY()      due_tomorrow: Due Date == TODAY() + 1        3. send_reminders:      for_each: task            overdue:        slack_dm:          to: "{assignee_slack_id}"          message: |            🚨 *OVERDUE*: {task_name}            Due: {due_date} ({days_overdue} days ago)            Priority: {priority}                  due_today:        slack_dm:          to: "{assignee_slack_id}"          message: |            ⏰ *Due Today*: {task_name}            Priority: {priority}              4. daily_recap:      schedule: "6:00 PM"      slack_channel: "#team"      message: |        📋 *Daily Task Recap*                ✅ Completed: {completed_count}        ⏳ In Progress: {in_progress_count}        🚨 Overdue: {overdue_count}                Top priorities for tomorrow:        {tomorrow_tasks}

3. Automated Report Generation

yaml
workflow: "Weekly Report Generator"
schedule: "Friday 5:00 PM"
steps:  1. collect_data:      sheets:        - "Sales Data"        - "Marketing Metrics"        - "Support Tickets"          2. calculate_metrics:      sales:        - total_revenue: SUM(revenue_column)        - deals_closed: COUNT(won_deals)        - avg_deal_size: AVG(deal_value)        - win_rate: won / (won + lost)              marketing:        - leads_generated: COUNT(new_leads)        - cost_per_lead: spend / leads        - conversion_rate: conversions / visitors              support:        - tickets_resolved: COUNT(resolved)        - avg_response_time: AVG(first_response)        - csat_score: AVG(satisfaction)          3. generate_report:      format: google_doc      template: "Weekly Report Template"      sections:        - executive_summary        - sales_performance        - marketing_metrics        - customer_support        - next_week_priorities          4. create_charts:      google_sheets:        - revenue_trend: line_chart        - deal_funnel: bar_chart        - lead_sources: pie_chart          5. distribute:      email:        to: leadership_team        subject: "Weekly Business Report - Week {week_number}"        attach: [report_doc, charts_pdf]              slack:        channel: "#leadership"        message: "📊 Weekly report ready: {doc_link}"

4. Inventory/Stock Tracker

yaml
workflow: "Inventory Alert System"
trigger:  type: sheets_change  sheet: "Inventory"  sheet_structure:  columns:    - Product    - SKU    - Current Stock    - Reorder Level    - Supplier    - Lead Time (days)
steps:  1. check_stock_levels:      condition: Current Stock <= Reorder Level        2. generate_alerts:      for_each: low_stock_item      actions:        - update_cell:            column: "Status"            value: "REORDER NEEDED"            format: red_background                    - slack_alert:            channel: "#inventory"            message: |              ⚠️ *Low Stock Alert*                            Product: {product_name}              SKU: {sku}              Current: {current_stock}              Reorder Level: {reorder_level}              Supplier: {supplier}                      - email_supplier:            if: auto_reorder == true            template: "reorder_request"              3. daily_summary:      schedule: "9:00 AM"      report:        - total_skus: count        - low_stock_items: count        - out_of_stock: count        - pending_orders: list

5. Form Responses → CRM + Slack

yaml
workflow: "Google Form Lead Capture"
trigger:  type: google_forms  form: "Contact Us Form"  steps:  1. capture_response:      fields: [name, email, company, message, source]        2. append_to_sheet:      spreadsheet: "Lead Tracker"      data:        - timestamp: NOW()        - name: "{name}"        - email: "{email}"        - company: "{company}"        - message: "{message}"        - status: "New"          3. enrich_lead:      clearbit:        lookup_by: email        append: [company_size, industry, linkedin]          4. create_in_crm:      hubspot:        object: contact        properties:          email: "{email}"          firstname: "{name}"          company: "{company}"          lead_source: "Website Form"            5. notify_sales:      slack:        channel: "#new-leads"        message: |          🎉 *New Lead!*                    👤 {name}          🏢 {company} ({company_size} employees)          📧 {email}          💬 "{message}"                    [View in HubSpot]({hubspot_link})            6. auto_respond:      email:        to: "{email}"        template: "thank_you_for_contacting"

Sheet Templates

Sales Dashboard

┌────────────────────────────────────────────────────────────────┐│                    SALES DASHBOARD - {Month}                   │├────────────────────────────────────────────────────────────────┤│                                                                ││  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐          ││  │ Revenue │  │ Deals   │  │ Avg Deal│  │ Win Rate│          ││  │ $125K   │  │ 23      │  │ $5,400  │  │ 34%     │          ││  │ ▲ 15%   │  │ ▲ 8%    │  │ ▲ 12%   │  │ ▼ 2%   │          ││  └─────────┘  └─────────┘  └─────────┘  └─────────┘          ││                                                                ││  [Revenue Trend Chart - Line]                                  ││  [Pipeline by Stage - Funnel]                                  ││  [Top Sales Reps - Bar]                                        ││                                                                │├────────────────────────────────────────────────────────────────┤│ Date    │ Deal      │ Value   │ Rep    │ Stage    │ Prob     ││ 1/30    │ Acme Corp │ $15,000 │ Alice  │ Proposal │ 60%      ││ 1/29    │ Tech Inc  │ $8,500  │ Bob    │ Demo     │ 40%      ││ ...     │ ...       │ ...     │ ...    │ ...      │ ...      │└────────────────────────────────────────────────────────────────┘

Marketing Tracker

┌────────────────────────────────────────────────────────────────┐│                   MARKETING METRICS                            │├────────────────────────────────────────────────────────────────┤│ Channel     │ Spend    │ Leads │ CPL    │ Conv % │ Revenue   │├─────────────┼──────────┼───────┼────────┼────────┼───────────┤│ Google Ads  │ $5,000   │ 150   │ $33    │ 3.2%   │ $45,000   ││ Facebook    │ $3,000   │ 200   │ $15    │ 1.8%   │ $28,000   ││ LinkedIn    │ $2,500   │ 50    │ $50    │ 5.5%   │ $35,000   ││ Organic     │ $0       │ 300   │ $0     │ 2.1%   │ $52,000   │├─────────────┼──────────┼───────┼────────┼────────┼───────────┤│ TOTAL       │ $10,500  │ 700   │ $15    │ 2.8%   │ $160,000  │└────────────────────────────────────────────────────────────────┘
ROAS: 15.2xBest Channel: LinkedIn (highest conversion)Action: Increase LinkedIn budget by 20%

Formulas Reference

Common Automation Formulas

# Auto-status based on date=IF(C2<TODAY(), "OVERDUE", IF(C2=TODAY(), "DUE TODAY", "UPCOMING"))
# Days until due=DATEDIF(TODAY(), C2, "D")
# Auto-assign based on criteria=IFS(B2="Enterprise", "Alice", B2="Mid-Market", "Bob", TRUE, "Carol")
# Calculate conversion rate=IFERROR(D2/C2, 0)
# Running total=SUMIF($A$2:A2, "<="&A2, $B$2:B2)
# Conditional formatting trigger=AND($E2="High", $F2<TODAY())
# VLOOKUP from another sheet=VLOOKUP(A2, 'Reference Data'!$A:$C, 3, FALSE)
# Query for dashboard=QUERY(Data!A:F, "SELECT A, SUM(C) WHERE B='Closed Won' GROUP BY A")

Output Example

Request: "Set up automated task reminders from Google Sheets"

Output:

markdown
# Task Reminder System Setup
## Sheet Structure
Create a sheet named "Tasks" with these columns:
| A | B | C | D | E | F ||---|---|---|---|---|---|| Task | Assignee | Due Date | Priority | Status | Slack ID || Review proposal | Alice | 2026-01-31 | High | In Progress | U12345 || Update docs | Bob | 2026-02-01 | Medium | Todo | U67890 |
## Automation Workflow
```yamltrigger: Every 15 minutesactions:  1. Check for tasks due within 24 hours  2. Send Slack DM to assignee  3. Post daily summary at 6pm

Sample Reminders

Overdue Alert:

🚨 *OVERDUE*: Review proposalDue: Jan 29 (1 day ago)Priority: High
Please update status or mark complete.

Due Today:

⏰ *Due Today*: Update documentationPriority: Medium
You've got this! 💪

Daily Recap (6pm):

📋 *Daily Task Recap*
✅ Completed today: 5⏳ In Progress: 3🚨 Overdue: 1
Tomorrow's priorities:• Review proposal (High) - Alice• Client call prep (High) - Bob

Setup Steps

  1. Create Google Sheet with structure above
  2. Set up n8n workflow with Schedule trigger
  3. Connect Google Sheets and Slack nodes
  4. Test with sample tasks
  5. Activate workflow

Would you like the complete n8n workflow JSON?


---
*Sheets Automation Skill - Part of Claude Office Skills*

来源与署名

来源:claude-office-skills/skills位于sheets-automation提交9c4c7d5

许可证: MIT

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架