0

ich habe zwei Spalte in google Blatt, die Breiten- und Längengrad enthalten, i unter foramt verwenden:wie von Google Blatt addMarker App Skript Google

var map=Maps.newStaticMap().setLanguage('en') 
     .beginPath() 
     .addMarker(lat, long) 
     .addMarker(lat1, long1) 
     .addMarker(lat2, long2) 
     .addMarker(lat3, long3) 
     .endPath().getAs('image/jpeg'); 

i Multi addmarker Lesen von Google Blatt hinzufügen möchten ,

ich diesen Code in google Skript verwendet:

var app=SpreadsheetApp 
var ss= app.openById("1dNw5loVnxpBysrYC9t49vc5LRkOytSP23Blo-ny_oM"); 
var sheet2=ss.getSheetByName('Sheet2'); 
var lastRow2= sheet2.getLastRow(); 
var numRow=lastRow2-7; 
var marker= ""; 
for (var i=8;i<=lastRow2;i++){ 
marker=marker+".addMarker("+sheet2.getRange(i,1).getValue()+","+ sheet2.getRange(i,2).getValue()+")"; 
} 
marker=marker+"."; 

var map=Maps.newStaticMap().setLanguage('en').beginPath()+marker+endPath().getAs('image/jpeg'); 

Marker Ausgang ist dies:

.addMarker(32.645814,51.669745).addMarker(32.646284,51.66835).addMarker(32.645769,51.665775).addMarker(32.645769,51.665775).addMarker(32.645769,51.665775).addMarker(32.645769,51.665775).addMarker(32.647468,51.665443).addMarker(32.650087,51.665625).addMarker(32.652779,51.665893).addMarker(32.653032,51.665389).addMarker(32.653032,51.665389).addMarker(32.653032,51.665389).addMarker(32.653032,51.665389).addMarker(32.653493,51.66599).addMarker(32.653899,51.664413).addMarker(32.654812,51.665571).addMarker(32.656347,51.665582).addMarker(32.656808,51.66202).addMarker(32.656916,51.660207).addMarker(32.660204,51.660572).addMarker(32.663049,51.661119).addMarker(32.663302,51.661666).addMarker(32.663302,51.661666).addMarker(32.663302,51.661666). 

es funktioniert, wenn ich Vergangenheit Marker Ausgabe manuly in der Karte Variable kopieren:

var map=Maps.newStaticMap().setLanguage('en').setMarkerStyle(Maps.StaticMap.MarkerSize.TINY, Maps.StaticMap.Color.RED , '1').beginPath().addMarker(32.645814,51.669745).addMarker(32.646284,51.66835).addMarker(32.645769,51.665775).addMarker(32.645769,51.665775).addMarker(32.645769,51.665775).addMarker(32.645769,51.665775).addMarker(32.647468,51.665443).addMarker(32.650087,51.665625).addMarker(32.652779,51.665893).addMarker(32.653032,51.665389).addMarker(32.653032,51.665389).addMarker(32.653032,51.665389).addMarker(32.653032,51.665389).addMarker(32.653493,51.66599).addMarker(32.653899,51.664413).addMarker(32.654812,51.665571).addMarker(32.656347,51.665582).addMarker(32.656808,51.66202).addMarker(32.656916,51.660207).addMarker(32.660204,51.660572).addMarker(32.663049,51.661119).addMarker(32.663302,51.661666).addMarker(32.663302,51.661666).addMarker(32.663302,51.661666).endPath().getAs('image/jpeg'); 

bu es nicht funktionieren, wenn ich dieses Formular benutzen:

var map=Maps.newStaticMap().setLanguage('en').beginPath()+marker+endPath().getAs('image/jpeg'); 

Antwort

0

I ‚couldn t Sie erhalten eine Variable, um mit der Karte zu arbeiten, um Markierungen hinzuzufügen. Sie können jedoch Schleifen durch Hinzufügen von Markierungen zum Zuordnen durchlaufen. In diesem einfachen Beispiel werden alle Ihre Latlong als Marker hinzugefügt. Ich weiß nicht, was du mit Karte machst. In meinem Beispiel erhalte ich die URL und erstelle einen Hyperlink, der an Sheet4 zurückgegeben wird. Sie können klicken, um die Ergebnisse zu sehen.

function multiMarker() { 
var map = Maps.newStaticMap() 
     .setSize(600, 600) 
     .setCenter('32.647468,51.665443'); 
var ss=SpreadsheetApp.getActiveSpreadsheet() 
var s=ss.getSheetByName("Sheet2") 
var lr= s.getLastRow(); 
var rng=s.getRange(2, 1, lr-1, 2).getValues() 
for (var i=0;i<=rng.length-1;i++){ 
    map.addMarker(rng[i][0],rng[i][1]) 
} 
map.getAs('image/jpeg'); 
    var url=map.getMapUrl(); 
    var ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet4').getRange("A1").setValue(url); 
    var app = UiApp.createApplication().setTitle('No Title'); 
    app.add(app.createImage(map.getMapUrl())); 
    } 
+0

danke, Ed Nelson. aber es gibt nur Saite zurück !!! und gib das Bild der Karte nicht zurück :( –

0

Sie müssen Anführungszeichen um + Marker +. Hier ist ein Test, den Sie ausführen können. Überprüfen Sie das Protokollprotokoll .

danke, Ed Nelson aber zurückkehren, nur String und Rückkehr Bild von google map nicht.

Verwandte Themen