Comment Géocoder des Adresses dans Google Sheets : 4 Méthodes Qui Fonctionnent
Comment géocoder dans Google Sheets : CSV, formule =GEOCODE(), lots Apps Script et géocodage inverse. 100 lignes gratuites par jour.
Si vous avez un Google Sheets rempli d’adresses et que vous avez besoin de coordonnées latitude/longitude, vous êtes au bon endroit. Que vous cartographiiez des emplacements clients, planifiiez des tournées de livraison ou construisiez un localisateur de magasins, le géocodage dans Google Sheets est l’une des tâches data les plus courantes que personne ne vous apprend à faire correctement.
Le problème ? Google Sheets n’a pas de fonction de géocodage native. Il n’y a pas de formule =GEOCODE() qui vous attend. Mais il existe quatre méthodes pratiques pour y arriver, du zéro code au traitement par lots entièrement automatisé.
Dans ce guide, je vous présente chaque approche pour géocoder des adresses dans Google Sheets — d’un simple flux copier-coller à des fonctions Apps Script personnalisées. Tous les exemples de code sont réels et prêts à l’emploi avec la plateforme CSV2GEO.
C’est parti.
Qui a Besoin de Géocoder des Adresses dans Google Sheets ?
Avant de plonger dans les méthodes, voici qui en a généralement besoin :
Équipes Marketing
Cartographie des emplacements clients pour des campagnes ciblées par région.
Opérations de Livraison
Conversion d’adresses de livraison en coordonnées pour la planification de tournées.
Agences Immobilières
Géocodage d’annonces pour des cartes interactives de recherche de biens.
Chercheurs
Analyse de données géographiques issues d’enquêtes ou de registres publics.
E-commerce
Construction de localisateurs de magasins et calcul de zones de livraison.
Santé
Cartographie des patients pour l’analyse d’accès et la planification d’établissements.
Le point commun ? Vous avez des adresses dans un tableur. Vous avez besoin de coordonnées. Et vous ne voulez pas payer Google 5€ pour 1 000 recherches.
Méthode 1 : Sans Code — Exporter CSV, Téléverser sur CSV2GEO, Coller
Idéal pour : Toute personne voulant des coordonnées sans écrire une seule ligne de code.
C’est l’approche la plus simple pour géocoder un tableur. Sans clé API, sans script, sans configuration technique.
Step 1 : Exportez Votre Google Sheets en CSV
Ouvrez votre Google Sheets avec les adresses. Allez dans Fichier > Télécharger > Valeurs séparées par des virgules (.csv).
Assurez-vous que vos données d’adresse sont propres. Vous voulez des colonnes comme rue, ville, région, code postal et pays — ou au minimum une colonne avec l’adresse complète.
Step 2 : Téléversez sur CSV2GEO
Allez sur CSV2GEO et glissez votre fichier CSV dans la zone de dépôt. La plateforme détecte automatiquement vos colonnes :
- Rue — votre colonne d’adresse
- Ville — ville ou commune
- Région — département ou région
- Code postal
- Pays — nom du pays ou code ISO
Cliquez sur Traiter et CSV2GEO géocode chaque ligne avec sa base de 461M+ adresses dans 200+ pays.
Step 3 : Téléchargez les Résultats
Après traitement, téléchargez votre fichier géocodé. Il contiendra toutes vos colonnes originales plus : latitude, longitude, adresse formatée et un score de précision.
Step 4 : Collez dans Google Sheets
Ouvrez le CSV téléchargé dans Google Sheets (Fichier > Importer), ou copiez simplement les colonnes latitude et longitude dans votre feuille originale.
C’est tout. Sans code, sans clé API, sans configuration. Le géocodage gratuit offre 100 lignes par jour gratuitement.
Méthode 2 : Fonction Apps Script Personnalisée — =GEOCODE(A2)
Idéal pour : Utilisateurs souhaitant une expérience formule directement dans leur feuille.
Cette méthode utilise Google Apps Script et l’API de géocodage CSV2GEO pour créer une fonction =GEOCODE() personnalisée.
Step 1 : Obtenez Votre Clé API
Allez sur CSV2GEO API Keys et générez une clé gratuite. Le forfait gratuit inclut 1 000 requêtes API par jour.
Step 2 : Ouvrez l’Éditeur Apps Script
Dans votre Google Sheets, allez dans Extensions > Apps Script.
Step 3 : Ajoutez la Fonction de Géocodage
Supprimez le code existant et collez ceci :
/**
* Géocode une adresse et renvoie lat, lng
* @param {string} address L'adresse à géocoder
* @param {string} country Code ISO du pays (optionnel, ex: "FR")
* @return {string} "latitude, longitude"
* @customfunction
*/
function GEOCODE(address, country) {
if (!address) return "";
const API_KEY = "VOTRE_CLE_API_ICI";
const url = "https://api.csv2geo.com/v1/geocode"
+ "?q=" + encodeURIComponent(address)
+ (country ? "&country=" + country : "")
+ "&api_key=" + API_KEY;
const response = UrlFetchApp.fetch(url, { muteHttpExceptions: true });
const data = JSON.parse(response.getContentText());
if (data.results && data.results.length > 0) {
const loc = data.results[0].location;
return loc.lat + ", " + loc.lng;
}
return "Non trouvé";
}Step 4 : Utilisez-la dans Votre Feuille
Enregistrez le script (Ctrl+S), puis retournez à votre feuille :
=GEOCODE("15 Rue de la Paix, Paris", "FR")Cela renvoie : 48.8684, 2.3309
Vous pouvez aussi référencer des cellules :
=GEOCODE(A2, B2)Où la colonne A contient l’adresse et B le code pays.
Note importante : Les fonctions personnalisées s’exécutent une à la fois. Pour 500 lignes, chacune fait un appel API séparé. Pour de grands volumes, utilisez la Méthode 3.
Méthode 3 : Géocodage par Lots avec Menu Apps Script
Idéal pour : Traiter des centaines ou milliers d’adresses efficacement.
Cette méthode ajoute un menu « Géocodage » à votre feuille pour géocoder une colonne entière en un clic.
Step 1 : Ajoutez le Script
Ouvrez Extensions > Apps Script et collez :
function onOpen() {
SpreadsheetApp.getUi()
.createMenu('Géocodage')
.addItem('Géocoder toutes les adresses', 'geocodeAll')
.addItem('Géocodage inverse (sélection)', 'reverseGeocodeSelected')
.addToUi();
}
function geocodeAll() {
const API_KEY = "VOTRE_CLE_API_ICI";
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
for (let row = 2; row <= lastRow; row++) {
if (sheet.getRange(row, 6).getValue()) continue;
const address = sheet.getRange(row, 1).getValue();
const country = sheet.getRange(row, 5).getValue();
if (!address) continue;
const url = "https://api.csv2geo.com/v1/geocode"
+ "?q=" + encodeURIComponent(address)
+ (country ? "&country=" + country : "")
+ "&api_key=" + API_KEY;
try {
const response = UrlFetchApp.fetch(url, { muteHttpExceptions: true });
const data = JSON.parse(response.getContentText());
if (data.results && data.results.length > 0) {
const r = data.results[0];
sheet.getRange(row, 6).setValue(r.location.lat);
sheet.getRange(row, 7).setValue(r.location.lng);
sheet.getRange(row, 8).setValue(r.accuracy_score);
}
} catch (e) {
sheet.getRange(row, 6).setValue("Erreur: " + e.message);
}
Utilities.sleep(200);
if (row % 50 === 0) {
SpreadsheetApp.getActiveSpreadsheet().toast(
"Traitées " + row + " sur " + lastRow, "Géocodage", 3);
}
}
SpreadsheetApp.getActiveSpreadsheet().toast("Terminé !", "Géocodage");
}Step 2 : Organisez Votre Feuille
| A (Adresse) | B (Ville) | C (Région) | D (CP) | E (Pays) | F (Latitude) | G (Longitude) | H (Confiance) |
|---|---|---|---|---|---|---|---|
| 15 Rue de la Paix | Paris | Île-de-France | 75002 | FR | auto | auto | auto |
Step 3 : Lancez le Géocodeur
Rechargez votre feuille. Un menu « Géocodage » apparaît. Cliquez sur Géocodage > Géocoder toutes les adresses.
Le script traite les lignes avec un délai de 200ms. Pour 500 adresses, comptez environ 2 minutes.
Astuce : Pour plus de 1 000 adresses, étalez sur plusieurs jours ou exportez en CSV et utilisez le géocodage par lots.
Méthode 4 : Géocodage Inverse dans Google Sheets
Idéal pour : Quand vous avez déjà latitude et longitude et voulez des adresses.
C’est l’inverse du géocodage direct. Vous avez des coordonnées GPS et voulez l’adresse correspondante. C’est le géocodage inverse.
La Fonction de Géocodage Inverse
function REVERSE_GEOCODE(lat, lng) {
if (!lat || !lng) return "";
const API_KEY = "VOTRE_CLE_API_ICI";
const url = "https://api.csv2geo.com/v1/reverse"
+ "?lat=" + lat + "&lng=" + lng + "&api_key=" + API_KEY;
const response = UrlFetchApp.fetch(url, { muteHttpExceptions: true });
const data = JSON.parse(response.getContentText());
if (data.results && data.results.length > 0) return data.results[0].formatted_address;
return "Non trouvé";
}Utilisation :
=REVERSE_GEOCODE(48.8684, 2.3309)Renvoie : 15 Rue de la Paix, 75002 Paris, France
Comprendre la Réponse de l’API
Quand vous appelez l’API CSV2GEO, voici ce qui revient :
{
"results": [{
"formatted_address": "15 Rue de la Paix, 75002 Paris, FR",
"location": { "lat": 48.8684, "lng": 2.3309 },
"accuracy": "rooftop",
"accuracy_score": 0.98,
"components": {
"house_number": "15",
"street": "Rue de la Paix",
"city": "Paris",
"state": "Île-de-France",
"postcode": "75002",
"country": "FR"
}
}]
}Le champ accuracy_score est clé. 0.95+ = précision au bâtiment. 0.7-0.95 = niveau rue. Sous 0.7 = précision ville ou code postal uniquement.
Comparaison : Quelle Méthode Choisir ?
| Méthode | Difficulté | Vitesse | Idéal Pour | Forfait Gratuit |
|---|---|---|---|---|
| 1. CSV + CSV2GEO | Aucune | ⭐⭐⭐⭐⭐ | Travaux ponctuels | 100 lignes/jour |
| 2. =GEOCODE() | Basique | ⭐⭐ | 10-50 lignes | 1 000 req/jour |
| 3. Menu par lots | Basique | ⭐⭐⭐⭐ | 100-5 000 lignes | 1 000 req/jour |
| 4. Géocodage inverse | Basique | ⭐⭐⭐ | Coordonnées → Adresses | 1 000 req/jour |
Ma recommandation : Méthode 1 pour un besoin ponctuel. Méthode 3 pour un usage régulier. Au-delà de 10 000 lignes, utilisez directement le géocodage par lots.
Conseils et Meilleures Pratiques
1. Nettoyez Vos Adresses
Déchets en entrée, déchets en sortie. Avant de géocoder :
- Supprimez les espaces : =SUPPRESPACE(A2)
- Standardisez les abréviations : "Rue" vs "R.", "Avenue" vs "Av."
- Incluez les codes pays : FR, BE, CH, CA pour de meilleurs résultats
- Combinez les parties : =A2 & ", " & B2 & ", " & C2 & " " & D2
2. Incluez Toujours le Pays
La meilleure amélioration de précision est de fournir le pays. "15 Rue de la Paix" existe dans plusieurs villes du monde. Ajouter "FR" résout l’ambiguïté instantanément.
3. Traitement par Lots pour les Grands Volumes
=GEOCODE() convient pour 10-50 lignes. Au-delà, utilisez le menu par lots (Méthode 3) ou exportez en CSV vers CSV2GEO pour le géocodage par lots. L’import fichier est 10x plus rapide pour les grands volumes.
4. Mettez en Cache
Géocoder la même adresse deux fois est du gaspillage. Vérifiez si des coordonnées existent déjà :
if (sheet.getRange(row, 6).getValue()) continue;5. Gérez les Erreurs
Certaines adresses ne géocoderont pas — fautes de frappe, données incomplètes. Les scripts renvoient "Non trouvé" ou "Erreur" pour que vous puissiez les identifier.
6. Surveillez Votre Consommation API
Le forfait gratuit offre 1 000 requêtes par jour. Pour 5 000 lignes, étalez sur 5 jours ou passez à un forfait supérieur.
7. API pour l’Automatisation
Pour un géocodage régulier, construisez un workflow automatisé avec l’API de géocodage complète. CSV2GEO offre 19 endpoints couvrant géocodage direct, inverse, lots, recherche de lieux et limites administratives.
Foire Aux Questions
Le géocodage dans Google Sheets est-il gratuit ?
Oui. Le CSV sans code donne 100 lignes gratuites/jour. Les méthodes API donnent 1 000 requêtes/jour.
Combien d’adresses puis-je géocoder ?
1 000/jour gratuit. Pour 50 000+, exportez en CSV et utilisez le géocodage par lots.
Faut-il une clé API ?
Uniquement pour les Méthodes 2, 3 et 4. La Méthode 1 ne nécessite rien — juste téléverser sur CSV2GEO.
Adresses internationales supportées ?
Oui. CSV2GEO couvre 200+ pays avec 461M+ adresses. Incluez le code ISO (FR, DE, JP). Consultez nos guides pour l’Australie ou le Brésil.
Quelle précision ?
Pour des adresses bien formatées, précision au bâtiment pour 90%+ des résultats. Le accuracy_score (0 à 1) indique la confiance. Plus de détails dans notre guide convertir adresse en lat/long.
Géocodage inverse possible ?
Oui. Méthode 4 ci-dessus. Aussi disponible via l’outil de géocodage inverse sans code.
Les données se mettent à jour automatiquement ?
Non. Les coordonnées sont des valeurs statiques. Si vous modifiez une adresse, relancez la fonction ou le script.
Différence Google Sheets vs Excel ?
Google Sheets utilise Apps Script (JavaScript), Excel utilise VBA. Même logique de base. Google Sheets est cloud-natif. Excel est mieux pour les très gros fichiers (1M+ lignes). Guide dédié : géocoder dans Excel.
Commencez à Géocoder
Téléversez vos adresses sur l’outil gratuit de géocodage par lots ou utilisez les scripts ci-dessus dans Google Sheets. 100 lignes gratuites par jour, sans inscription.
I.A. / CSV2GEO Creator
Articles Connexes
Use our batch geocoding tool to convert thousands of addresses to coordinates in minutes. Start with 100 free addresses.
Try Batch Geocoding Free →