Workflow n8n

Automatisation Google Sheets avec n8n : importation de données CSV

  • Ce workflow n8n a pour objectif d'automatiser l'importation de données CSV depuis une URL vers Google Sheets. Idéal pour les équipes de marketing ou de gestion de données, ce processus permet de centraliser les informations tout en réduisant les erreurs manuelles. En utilisant ce workflow, les utilisateurs peuvent facilement récupérer des données à jour et les intégrer dans leurs tableaux de bord Google Sheets sans intervention manuelle.
  • Le flux commence par un déclencheur manuel, où l'utilisateur clique sur 'Exécuter le Workflow'. Ensuite, le nœud 'Download CSV' effectue une requête HTTP pour télécharger le fichier CSV depuis l'URL spécifiée. Une fois le fichier récupéré, le nœud 'Import CSV' traite le fichier et le prépare pour l'importation. Le nœud 'Keep only DACH in 2023' filtre les données pour ne conserver que celles pertinentes pour la région DACH pour l'année 2023. Ensuite, le nœud 'Add unique field' ajoute un champ unique pour chaque entrée, garantissant l'intégrité des données. Enfin, le nœud 'Upload to spreadsheet' envoie les données filtrées vers Google Sheets, permettant une visualisation et une analyse faciles.
  • Les bénéfices de cette automatisation n8n incluent un gain de temps considérable, une réduction des erreurs humaines et une meilleure gestion des données. En automatisant ce processus, les entreprises peuvent se concentrer sur des tâches à plus forte valeur ajoutée tout en s'assurant que leurs données sont toujours à jour et accessibles.
Tags clés :Google Sheetsautomatisationimportation de donnéesn8nworkflow
Catégorie: Manual · Tags: Google Sheets, automatisation, importation de données, n8n, workflow0

Workflow n8n Google Sheets, importation de données : vue d'ensemble

Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.

Workflow n8n Google Sheets, importation de données : détail des nœuds

  • When clicking "Execute Workflow"

    Ce noeud déclenche manuellement l'exécution du workflow.

  • Upload to spreadsheet

    Ce noeud permet de télécharger des données dans une feuille de calcul Google Sheets.

  • Add unique field

    Ce noeud ajoute un champ unique aux données traitées dans le workflow.

  • Import CSV

    Ce noeud importe des données à partir d'un fichier CSV.

  • Download CSV

    Ce noeud télécharge un fichier CSV à partir d'une URL spécifiée.

  • Keep only DACH in 2023

    Ce noeud filtre les données pour ne conserver que celles correspondant à la région DACH en 2023.

  • Sticky Note

    Ce noeud crée une note autocollante avec un contenu spécifié.

Inscris-toi pour voir l'intégralité du workflow

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "id": "NLVfecejH0cTtcdd",
  "meta": {
    "instanceId": "fb924c73af8f703905bc09c9ee8076f48c17b596ed05b18c0ff86915ef8a7c4a"
  },
  "name": "Import CSV from URL to GoogleSheet",
  "tags": [],
  "nodes": [
    {
      "id": "90cced3d-b03b-4b51-b1f7-4cbd2dac25eb",
      "name": "When clicking \"Execute Workflow\"",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        860,
        380
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "df9519b6-937e-4a9e-bdb9-86fb722ca3c1",
      "name": "Upload to spreadsheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1880,
        380
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [
            {
              "id": "unique_key",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "unique_key",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "country",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "country",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "country_code",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "country_code",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "year_week",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "year_week",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "level",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "level",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "region",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "region",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "region_name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "region_name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_cases",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "new_cases",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "tests_done",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "tests_done",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "population",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "population",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "testing_rate",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "testing_rate",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "positivity_rate",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "positivity_rate",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "testing_data_source",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "testing_data_source",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [
            "unique_key"
          ]
        },
        "options": {
          "cellFormat": "USER_ENTERED"
        },
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 383583634,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/13YYuEJ1cDf-t8P2MSTFWnnNHCreQ6Zo8oPSp7WeNnbY/edit#gid=383583634",
          "cachedResultName": "COVID-weekly"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/13YYuEJ1cDf-t8P2MSTFWnnNHCreQ6Zo8oPSp7WeNnbY"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "54",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4
    },
    {
      "id": "8298b29e-8784-4e15-902f-dc073fa73668",
      "name": "Add unique field",
      "type": "n8n-nodes-base.set",
      "position": [
        1460,
        380
      ],
      "parameters": {
        "fields": {
          "values": [
            {
              "name": "unique_key",
              "stringValue": "={{ $json.country_code }}-{{ $json.year_week }}"
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "b71bb998-4df2-4311-ae98-42c3e5e41d58",
      "name": "Import CSV",
      "type": "n8n-nodes-base.spreadsheetFile",
      "position": [
        1260,
        380
      ],
      "parameters": {
        "options": {
          "headerRow": true
        },
        "fileFormat": "csv"
      },
      "typeVersion": 2
    },
    {
      "id": "36204081-3995-46d4-ac8f-3408cbaed657",
      "name": "Download CSV",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1060,
        380
      ],
      "parameters": {
        "url": "https://opendata.ecdc.europa.eu/covid19/testing/csv/data.csv",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file"
            }
          }
        }
      },
      "typeVersion": 4.1
    },
    {
      "id": "b1a78d2e-1a8b-4d98-b130-080b3017192d",
      "name": "Keep only DACH in 2023",
      "type": "n8n-nodes-base.filter",
      "position": [
        1680,
        380
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{ $json.year_week }}",
              "value2": "2023",
              "operation": "startsWith"
            }
          ],
          "boolean": [
            {
              "value1": "={{ ['DE', 'AT', 'CH'].includes($json.country_code )}}",
              "value2": true
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "c5a3af9b-30a0-4337-bbb7-cff54007b22f",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1620,
        241
      ],
      "parameters": {
        "width": 460,
        "height": 293,
        "content": "### Google API has rate-limits for read and write operations, that's why we take only a subset of the data\n\nTo import the whole dataset please add Split In Batches and a Wait node with a sufficient delay."
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "d49a3f54-a422-4e76-b410-f8c12b4dd78b",
  "connections": {
    "Import CSV": {
      "main": [
        [
          {
            "node": "Add unique field",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download CSV": {
      "main": [
        [
          {
            "node": "Import CSV",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Add unique field": {
      "main": [
        [
          {
            "node": "Keep only DACH in 2023",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Keep only DACH in 2023": {
      "main": [
        [
          {
            "node": "Upload to spreadsheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking \"Execute Workflow\"": {
      "main": [
        [
          {
            "node": "Download CSV",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Google Sheets, importation de données : pour qui est ce workflow ?

Ce workflow s'adresse aux équipes marketing, aux analystes de données et aux responsables de la gestion des informations au sein des entreprises de taille petite à moyenne. Un niveau technique de base est requis pour le paramétrage initial du workflow.

Workflow n8n Google Sheets, importation de données : problème résolu

Ce workflow résout le problème de l'importation manuelle de données CSV dans Google Sheets, un processus souvent long et sujet à des erreurs. En automatisant cette tâche, les utilisateurs éliminent les frustrations liées à la manipulation manuelle des fichiers et réduisent le risque d'erreurs de saisie. Après mise en place, les utilisateurs obtiennent un flux de données automatisé et fiable, leur permettant de se concentrer sur l'analyse et l'utilisation des données plutôt que sur leur collecte.

Workflow n8n Google Sheets, importation de données : étapes du workflow

Étape 1 : L'utilisateur déclenche le workflow manuellement en cliquant sur 'Exécuter le Workflow'.

  • Étape 1 : Le nœud 'Download CSV' télécharge le fichier CSV depuis l'URL fournie.
  • Étape 2 : Le nœud 'Import CSV' traite le fichier pour le préparer à l'importation.
  • Étape 3 : Le nœud 'Keep only DACH in 2023' filtre les données pour ne conserver que celles de la région DACH pour l'année 2023.
  • Étape 4 : Le nœud 'Add unique field' ajoute un champ unique à chaque entrée pour assurer l'intégrité des données.
  • Étape 5 : Enfin, le nœud 'Upload to spreadsheet' envoie les données filtrées vers Google Sheets.

Workflow n8n Google Sheets, importation de données : guide de personnalisation

Pour personnaliser ce workflow, vous pouvez modifier l'URL dans le nœud 'Download CSV' pour pointer vers votre fichier CSV spécifique. Dans le nœud 'Upload to spreadsheet', ajustez le 'documentId' pour spécifier le bon tableau Google Sheets. Vous pouvez également adapter les conditions dans le nœud 'Keep only DACH in 2023' pour filtrer d'autres régions ou années selon vos besoins. Enfin, assurez-vous de vérifier les paramètres de format de fichier dans le nœud 'Import CSV' pour garantir la compatibilité avec vos données.