क्या Google स्प्रेडशीट प्रश्नों में नामित श्रेणियों का उपयोग करना संभव है ताकि स्तंभ संदर्भों को अद्यतित रखा जा सके?


9

Google स्प्रेडशीट का उपयोग करके, आप क्वेरी लिख सकते हैं । हालाँकि, यदि आपके पास उद्धरणों में कॉलम अक्षर हैं, तो वे कॉलम क्रम परिवर्तन के रूप में अपडेट नहीं किए जाते हैं।

क्या इन प्रश्नों को लिखने का कोई तरीका है ताकि उन्हें हर बार किसी स्तंभ को जोड़ने या हटाने के बाद अपडेट करने की आवश्यकता न हो?

क्या इस समस्या को हल करने के लिए प्रश्नों में नामित श्रेणियों का उपयोग करना संभव है?

यहाँ एक उदाहरण है: यदि आप 'F' के बाद एक कॉलम जोड़ते हैं, तो कॉलम 'G' 'H' में धकेल दिया जाता है और सूत्र का अर्थ बदल जाता है।

= क्वेरी (B: J, "G द्वारा" avg (J) समूह चुनें)

संबंधित सवाल

यह प्रश्न कॉलम अक्षरों के बजाय कॉलम हेडर के साथ क्वेरी का उपयोग करने जैसा नहीं है क्योंकि यह एक नामित श्रेणियों के उपयोग पर केंद्रित है।

जवाबों:


5

यह एक तरह का मुश्किल काम है, लेकिन यह एक हेल्पर रेंज और कुछ कॉन्फैक्शन के साथ संभव है।

क्या किये जाने की आवश्यकता है:

  1. कॉलम अक्षरों को इस तरह ले जाने के लिए एक नामांकित श्रेणी, COLS बनाएं:

    A  
    B  
    C  
    D  
    E  
    ...
    

    जैसा कि दिखाया गया है, ऊर्ध्वाधर तरीके से करें।

  2. क्वेरी स्ट्रिंग को इस तरह इकट्ठा करें:

    =QUERY( B:J, "SELECT AVG(" & INDEX(**COLS**, COLUMN(J1)) & ") GROUP BY " & INDEX(**COLS**, COLUMN(G1)) )
    

1
नामित सीमा ऊर्ध्वाधर या क्षैतिज आकार दोनों में काम करेगी।
रूबल

@ बकवास शायद सही है।
वनडे

3

क्या इन प्रश्नों को लिखने का कोई तरीका है ताकि उन्हें हर बार किसी स्तंभ को जोड़ने या हटाने के बाद अपडेट करने की आवश्यकता न हो?

क्या इस समस्या को हल करने के लिए प्रश्नों में नामित श्रेणियों का उपयोग करना संभव है?

हां, आप बिल्ट-इन कॉलम हेडर के बजाय नामित श्रेणियों का उपयोग कर सकते हैं, लेकिन मूल विचार इस साइट में सुझाए गए अन्य समान प्रश्नों के अन्य उत्तरों के समान है: स्प्रेडशीट को गतिशील SQL स्ट्रिंग बनाने के लिए सेट किया जाना चाहिए ।

है कि कहते हैं Jऔर Gनामित श्रेणियों से मेल खाती है Gradesऔर Classक्रमशः।


कॉलम ए और जेड के बीच कॉलम होने पर ही निम्नलिखित दृष्टिकोण काम करता है


CELL("address",Grades)वापस आ जाएगा "$J:$J"। प्राप्त करने के लिए स्तंभ संदर्भ का उपयोग MID(CELL("address",Grades),2,1)करें "J"। अंतिम सूत्र है

= QUERY (B: J, "SELV AVG (")
मध्य (सेल ( "पता", ग्रेड), 2,1) और
") समूह द्वारा "&
मध्य (सेल ( "पता", कक्षा), 2,1))


निम्नलिखित दृष्टिकोण सभी मामलों के लिए काम करता है


COLUMN(Grades)एक पूर्णांक (प्रपत्र 1,2,3 आदि की संख्या) लौटाएगा। SQL कथन को बनाने के लिए सूत्र को सरल बनाने के लिए मैं सरणी के उपयोग से प्रपत्र COL1, COL2 इत्यादि के कॉलम संदर्भों का उपयोग करने के लिए SQL को बाध्य करने का सुझाव देता हूं। संकेतन ( {B:J})। अंतिम सूत्र है

= QUERY ({B: J}, "Select AVG (Col" & COLUMN (ग्रेड) -1 & ") GROUP BY Col" & COLUMN (कक्षा) -1)

डेमो स्प्रेडशीट

संदर्भ

Google शीट में एरेज़ का उपयोग करना - Google डॉक्स संपादकों की मदद


1

रूबेन का जवाब सभी मामलों के लिए समस्या को हल नहीं करता है क्योंकि MID(CELL("address",Grades),2,1)यदि Gradesश्रेणी को दोहरे अक्षर वाले कॉलम में ले जाया जाता है तो यह विफल हो जाता है $AA:$AA

उस स्थिति में, सूत्र MID(CELL("address",Grades),2,2)की आवश्यकता है। नामित सीमाओं के लिए जो अवधि या $Z:$AAसीमा को काटते हैं , यह सूत्र समस्याग्रस्त हो जाता है।

सूत्र REGEXEXTRACT( CELL("address", Grades), "\$([a-zA-Z]+)\$")सामान्य मामले के लिए समस्या को हल करता है, लेकिन मैं एक बड़ी स्प्रेडशीट में उपयोग किए जाने पर इसकी सीपीयू दक्षता पर दृढ़ता से सवाल उठाता हूं।


मेरे उत्तर में दो दृष्टिकोण हैं लेकिन यह उत्तर उनमें से केवल एक को समेटता है। दूसरे दृष्टिकोण को सभी मामलों के लिए काम करना चाहिए।
Rub

मुझे नहीं लगता कि यह नामांकित श्रेणियों के लिए काम करेगा जो विभिन्न चादरों पर हैं। आश्चर्य है कि अगर +2 साल के बाद से, अगर वहाँ इस के लिए बेहतर समाधान कर रहे हैं ... इस तरह के रूप में केवल क्वेरी में ही नामांकित पर्वतमाला का उल्लेख करने में सक्षम होने के रूप में
mike01010

0

मैं infoinspired.com पर इस पेज पर आया हूं जो इसे करने का एक तरीका बताता है। मैंने इसका ठीक उसी तरह से परीक्षण किया जैसा उन्होंने दिया उदाहरण में और यह काम किया। स्थापित करना:

      A        B        F                                     G
 1  names     Age   =left(address(row(B1),column(B1),4))   =QUERY(A:B,"Select "&Age)
 2  joey      32
 3  nicole    26
 4  sally     66

F1 की उनकी व्याख्या: ADDRESS सूत्र जिसमें ROW और COLUMN फ़ंक्शंस शामिल हैं, B1 का सेल पता देता है। LEFT फ़ंक्शन पहला अक्षर निकालता है जो उसमें से कॉलम हैडिंग है।

--- सेल एफ 1 पर क्लिक करें और फिर मेनू डेटा> नामित श्रेणियों पर जाएं और "आयु" (उद्धरण चिह्नों के बिना) श्रेणी का नाम दें

अब आप अपनी क्वेरी को इस रूप में बना सकते हैं: =QUERY(A:B,"Select "&Age)

उन्हें अपने पेज में और अधिक जटिल उदाहरण मिले हैं, जिनका मैं अब परीक्षण करने वाला हूं, लेकिन मुझे प्रोत्साहित किया जाता है कि पहला उदाहरण काम करे!

संपादित करें - क्षमा करें यदि यह वास्तव में वही है जो अन्य लोग अपने उत्तरों के साथ प्रस्तावित कर रहे हैं। मुझे बस यह उदाहरण क्रिस्टल स्पष्ट लगा और यह पता लगाने में सक्षम था। सोचा कि यह एक ही सवाल के साथ दूसरों की मदद कर सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.