मेरा प्रश्न यहाँ वर्णित के समान है: मैं किसी सरणी के तत्वों को किसी फ़ंक्शन के अलग-अलग तर्कों के रूप में कैसे पास कर सकता हूं? यहाँ ट्विस्ट इसे Google शीट्स के अंदर कर रहा है। कॉलम ए में, प्रविष्टियों की एक श्रृंखला है, जिसमें से मैं उन लोगों को फ़िल्टर करना चाहता हूं जो कुछ मानदंडों से मेल खाते हैं, और फिर कुछ अन्य व्यक्तिगत कोशिकाओं में, फ़िल्टर के एन-वें परिणाम को पॉप्युलेट करते हैं।

COL A1:A4

जॉन ए

हेक्टर सी

मारियो जी

हेकेट जे

सेल C4: =CHOOSE(1,FILTER(A1:A4, LEFT(A1:A4,1)="H"))

सेल D8: =CHOOSE(2,FILTER(A1:A4, LEFT(A1:A4,1)="H"))

लेकिन क्या होता है कि C4:C5 हेक्टर C और Hecate J से भरे होते हैं, और D8 "त्रुटि फ़ंक्शन चुनें पैरामीटर 1 मान 2 है। मान्य मान 1 और 1 के बीच होते हैं।"

मेरा निष्कर्ष यह है कि फ़िल्टर जो रिटर्न देता है, उसे केवल व्यक्तिगत तत्वों को तर्क के रूप में लेने के बजाय, CHOOSE फ़ंक्शन द्वारा एकल तर्क के रूप में लिया जाता है। मैंने ArrayFormula के साथ काम करने की कोशिश की, लेकिन कोई भाग्य नहीं। मैंने "..." को तैयार करने के लंबे शॉट की कोशिश की और स्पष्ट रूप से एक समारोह के रूप में पहचाना नहीं गया।

कोई भी विचार जिसमें मेरा अपना स्क्रिप्ट फ़ंक्शन लिखना शामिल नहीं है? धन्यवाद।

0
iatorresc 4 अगस्त 2020, 21:12

1 उत्तर

सबसे बढ़िया उत्तर

आप इसके बजाय index() का उपयोग कर सकते हैं:

फिर आप सूची के n-वें तत्व को इस तरह चुन सकते हैं:

=index(FILTER(A1:A4, LEFT(A1:A4,1)="H"),2)

हार्डकॉपी संख्या के रूप में 2 रखने के बजाय आप सूची की लंबाई भी निर्दिष्ट कर सकते हैं उदाहरण के लिए फ़िल्टर की गई सूची का अंतिम तत्व:

=index(FILTER(A1:A4, LEFT(A1:A4,1)="H"),COUNTA(FILTER(A1:A4, LEFT(A1:A4,1)="H")))
0
Mario 4 अगस्त 2020, 21:44