2016-02-07 5 views
6

मुझे एक स्क्रिप्ट चलाने की आवश्यकता है जिसमें तर्क शामिल है: यदि संख्या है, तो DoSomething।यदि var isnumber है, तो स्क्रिप्ट

मैंने चलाया है यदि परीक्षण जैसे रिक्त हैं, और यदि सेल में "x" है। यह आसान होना चाहिए लेकिन मुझे कोई समाधान नहीं मिल रहा है। मैं getNumberFormat, innum, ISNUMBER की कोशिश की है, आदि

function ifIsNumber() { 

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var s = ss.getActiveSheet(); 

var substring1 = s.getRange("A1").getNumberFormat(); 

s.getRange("B1").setValue(substring1); 

} 

इस कोड की जाँच करता सेल A1 और रिटर्न सेल B1 में स्ट्रिंग "0। ###############" , संख्याओं और पाठ वाले दोनों कक्षों के लिए। मैं कैसे पहचान सकता हूं कि कौन से कक्ष संख्याएं हैं?

उत्तर

5

यदि ए 1 एक नंबर है यह जाँच करेगा:

function ifIsNumber() { 
var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var s = ss.getActiveSheet(); 
var substring1 = s.getRange("A1").getValue(); 
if(!isNaN(parseFloat(substring1)) && isFinite(substring1)){ 
    s.getRange("B1").setValue("Is a number"); 
} 
else{ 
    s.getRange("B1").setValue("Not a nuumber") 
} 
} 
+0

पूरी तरह से काम करता है! मुझे आश्चर्य है कि उन्होंने इस तरह के जाने-माने एक्सेल फीचर को लागू नहीं किया है। धन्यवाद @ एडी! – graphicdezine

+3

ISNUMBER() पहले से ही Google शीट्स में फ़ॉर्मूला में बनाया गया है। बस एक्सेल के अनुसार। https://support.google.com/docs/answer/3093296?hl=hi – Jonathon

+1

हाँ, लेकिन प्रतीत होता है कि स्क्रिप्टिंग भाषा में ऐसी कोई सेवा नहीं है ... – graphicdezine

5

Google Apps स्क्रिप्ट JavaScript पद्धतियों और ऑपरेटरों के सबसे इस्तेमाल कर सकते हैं।

किसी ऑब्जेक्ट की संख्या जांचने का एक विकल्प typeof का उपयोग करना है।

निम्नलिखित कोड संदर्भ द्वारा निर्दिष्ट सेल के मान के प्रकार को वापस कर देगा।

function typeofcellvalue(reference) { 
    var ss = SpreadsheetApp.getActive(); 
    var rng = ss.getRange(reference); 
    var value = rng.getValue(); 
    return typeof value; 
} 

एक कस्टम समारोह

=typeofcellvalue("A1") 

तो सेल A1

  • एक संख्या है के रूप में उपयोग का उदाहरण, परिणाम number हो जाएगा।
  • खाली है, परिणाम string होगा।
+1

यह उत्तर बेहतर है क्योंकि यह विभिन्न भाषा सेटिंग्स के साथ काम करता है, यानी देशों के लिए संख्या के दशमलव और पूर्णांक भागों के बीच अल्पविराम के साथ। तिथियों के लिए यह 'ऑब्जेक्ट' लौटाएगा, छवियों (फॉर्मूला 'छवि') के लिए यह' स्ट्रिंग 'देता है, लेकिन मुझे' ऑब्जेक्ट 'की उम्मीद है। हाइपरलिंक्स भी तार हैं। –

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