INHOUDSOPGAWE:
Video: Voeg maklik Google Maps outomaties en gratis by u Google Sheets: 6 stappe
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Net soos baie makers, het ek min GPS -spoorsnyer -projekte gebou. Vandag sal ons GPS -punte vinnig in Google Sheets kan visualiseer sonder om 'n eksterne webwerf of API te gebruik.
Die beste van alles, dit is GRATIS!
Stap 1: Skep 'n leë sigblad
Gaan na sheets.google.com of docs.google.com/spreadsheets om 'n leë sigblad te skep. As u nog nooit 'n sigblad op Google geskep het nie, kan u vinnig begin deur na hierdie video te kyk.
Ek het my sigblad MapsChallenge genoem, maar jy kan enige naam gebruik wat jy wil.
Stap 2: Voeg u GPS -data by
Die eerste ry moet gereserveer word vir kolomopskrifte. Voer GPS -punte in vanaf die tweede ry. U benodig drie kolomme en hulle moet in die volgende volgorde wees:
Tyd
Breedtegraad
Lengtegraad
Hier is 'n paar GPS -punte van 'n vinnige reis tussen 'n hotel en 'n restaurant in Houston, Texas:
Tyd Breedtegraad Lengtegraad
23:55:33 PM 29.7384 -95.4722
23:55:43 29.7391 -95.4704
23:55:53 29.7398 -95.4686
23:56:03 29.7403 -95.4669
23:56:13 29.7405 -95.4654
23:56:33 PM 29.7406 -95.4639
23:56:43 29.7407 -95.4622
23:56:53 29.7408 -95.461
23:57:03 29.7412 -95.4607
23:57:13 29.7421 -95.4608
23:57:23 29.7432 -95.4608
23:57:33 PM 29.7443 -95.4608
23:57:43 PM 29.7451 -95.4608
23:57:53 29.7452 -95.4608
23:58:03 29.746 -95.4608
Stap 3: Voeg outomatisering by
As u vertroud is met makros in toepassings soos Microsoft Excel, vind u hierdie konsep bekend. Die kode wat ons hier sal skryf, werk nie plaaslik nie en dit is JavaScript (ish) nie VBA nie. Klik op die menu Tools en kies dan Script editor. Ek het ook my script MapsChallenge genoem.
Stap 4: Gebruik my kode
Vee die inhoud van Code.gs uit, voeg dan die volgende kode by en klik op Save:
var ThisSheet;
var kaart;
var ThisRow;
var LastPointTime;
var ThisPointTime;
// Begin sodra die vel oop is
funksie opOpen () {
ThisRow = 2;
// Verander die grootte van kolomme se breedte
ThisSheet = SpreadsheetApp.getActiveSheet (). SetColumnWidths (1, 4, 85);
// Verwyder alle kaartbeelde
ThisSheet.getImages (). ForEach (funksie (i) {i.remove ()});
// Hou teks in selle
ThisSheet.getRange ('A: D'). SetWrapStrategy (SpreadsheetApp. WrapStrategy. CLIP);
var Seq = 1;
ThisPointTime = ThisSheet.getRange (ThisRow, 1).getValue ();
terwyl (ThisPointTime! = '') {
// Begin kaartopskrif
ThisSheet.getRange (((Seq-1)*30) +27, 5).setValue ('Begin by ry'+ThisRow);
// Skep 'n kaart
map = Maps.newStaticMap ();
// Eerste merker
PlaceMarker (Maps. StaticMap. MarkerSize. SMALL, "0x00FF00", 'Green');
// Die verskil tussen hierdie punt en die laaste is minder as 10 minute
terwyl (ThisPointTime - LastPointTime <600000) {
// Is daar 'n volgende merker of laaste een?
(ThisSheet.getRange (ThisRow+1, 1).getValue () - LastPointTime <600000)? PlaceMarker (Maps. StaticMap. MarkerSize. TINY, "0x0000FF", 'Blue'): PlaceMarker (Maps. StaticMap. MarkerSize. SMALL, "0xFF0000", 'Red');
}
// Voeg 'n GPS -snitbeeld by die blad
ThisSheet.insertImage (Utilities.newBlob (map.getMapImage (), 'image/png', Seq), 5, ((Seq-1)*30) +2);
// Eindig die onderskrif van die kaart
ThisSheet.getRange (((Seq-1)*30) +27, 5).setValue (ThisSheet.getRange (((Seq-1)*30) +27, 5).getValue () +'eindig by ry' + (ThisRow-1)). SetFontWeight ("vet");
Seq ++;
}
}
funksie PlaceMarker (a, b, c) {
map.setMarkerStyle (a, b, c);
map.addMarker (ThisSheet.getRange (ThisRow, 2).getValue (), ThisSheet.getRange (ThisRow, 3).getValue ());
LastPointTime = ThisPointTime;
ThisRow ++;
ThisPointTime = ThisSheet.getRange (ThisRow, 1).getValue ();
}
Stap 5: Maak toe en maak u sigblad weer oop
Die outomatisering wat ons geskep het, word slegs veroorsaak deur die oopmaakgebeurtenis van die sigblad. Nadat u die sigblad gesluit het, gaan na drive.google.com en maak u sigblad oop.