5

मैं SpreadsheetApp.getActiveRange उपयोग कर रहा हूँ() getValues ​​()।; कोशिकाओं की एक श्रृंखला का मूल्य प्राप्त करने के लिए, लेकिन यह उस सेल से जुड़े हाइपरलिंक को वापस नहीं करता है, केवल पाठ। क्या हाइपरलिंक पाने का कोई तरीका है या क्या मुझे इसमें यूआरएल के साथ एक और फ़ील्ड जोड़ना है?मैं Google Apps स्क्रिप्ट में डेटा सेल से हाइपरलिंक कैसे प्राप्त कर सकता हूं?

धन्यवाद।

अद्यतन: यह है कि कैसे मैं इसे का उपयोग एक लिंक सूची बनाने के लिए समाप्त हो गया है।

<ul> 
    <? 
    var range = SpreadsheetApp.getActiveRange(); 
    var data = range.getValues(); 
    var links = range.getFormulas(); 

    for(var i=1; i < data.length; i++){ 
     if(data[i][0] !== ''){ 
      ?> 
      <li><a href="<?= links[i][0].split("\"")[1]; ?>"><?= data[i][0]; ?></a></li> 
      <? 
     } 
    } 
    ?> 
</ul> 

उत्तर

9

सेल टेक्स्ट से जुड़े एक हाइपरलिंक को सूत्र द्वारा प्रकट किया गया है। Google Spreadsheets स्वतः करता है एक क्लिक करने योग्य हाइपरलिंक में किसी भी यूआरएल धर्मान्तरित लेकिन उन मामलों में फ़ार्मुलों का प्रयोग नहीं कर रहे हैं और संदेश और यूआरएल एक ही हैं।

नीचे एक बहुत ही सरल समाधान (कोई त्रुटि जाँच) आप कैसे स्क्रिप्ट के माध्यम से प्राप्त कर सकते हैं के रूप में है। मुझे संदेह है कि आपने इसे एक्सेल या कुछ और से आयात किया है और यह है कि आप आसानी से HYPERLINK फॉर्मूला नहीं देखते हैं।

आप एक सेल है कि इस तरह दिखता है है -

function getURL() { 
    var range = SpreadsheetApp.getActiveSheet().getActiveCell(); 

    //logs - Google 
    Logger.log(range.getValue()); 

    //logs - =HYPERLINK("http://www.google.com", "Google") 
    Logger.log(range.getFormulaR1C1()); 

    //simple regex to get first quoted string 
    var url = /"(.*?)"/.exec(range.getFormulaR1C1())[1]; 

    //logs - http://www.google.com 
    Logger.log(url); 
} 
+3

धन्यवाद है कि मुझे सही दिशा में नेतृत्व -

Cell with hyperlink

तो इस स्क्रिप्ट आप URL इसके साथ जुड़े पढ़ा देंगे । वर लिंक = SpreadsheetApp.getActiveRange() getFormulas()।; बहुत भयानक। – Scottux

+0

यह काम करता है लेकिन किसी के लिए भी गुमनाम करने का सही तरीका क्या है? – hyip

+0

ध्यान दें कि यदि HYPERLINK में गतिशील यूआरएल है तो यह काम नहीं करता है। –

संबंधित मुद्दे