0

値の配列を URL 短縮メソッドに渡そうとしていますが、URL の短縮形を取得していますが、問題は、出力を取得しているにもかかわらず、catch ブロック (例外: 無効な値) で例外がスローされていることです。なぜそれが起こるのかわかりません。誰かが間違っているところを修正してもらえますか?これは正しい方法ですか? 私のコード:
var lng = sheet.getRange(2, 1, sheet.getLastRow()).getValues(); try { for(var i in lng) { var url = UrlShortener.Url.insert({ longUrl: lng[i]}); Logger.log(url.id); } } catch(e) { Logger.log(e); }

4

1 に答える 1

0

あなたが言及している方法lng[i]は間違っています。一次元配列の最初の値をlng[i]として取得しましたlng[i][0]

コードにいくつかの変更を加えました。これを試して

function shorturl()
{
  var sheet = SpreadsheetApp.getActiveSheet();
  var lng = sheet.getRange(2, 1, sheet.getLastRow()).getValues();
  try
     {
       for(var i=0;i<lng.length; i++)
       {
         if(lng[i][0])
         {
           var url = UrlShortener.Url.insert({ longUrl: lng[i][0]});
           Logger.log(url.id);
         }
       }
    }
    catch(e)
    {
      Logger.log(e);
    }
}

それが役立つことを願っています!

于 2015-02-04T22:25:09.123 に答える