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


12

Google स्प्रेडशीट में मैं अक्सर एक पूरे कॉलम को संदर्भित करने के लिए A1 संकेतन का उपयोग करता हूं:

A1:A

नीचे दिए गए कारणों के लिए, मैं R1C1 प्रारूप का उपयोग करना चाहूंगा, पूरे स्तंभ का संदर्भ लेने के लिए, कुछ इस तरह से:

R1C1:C1

यह ए 1 का उपयोग करना संभव नहीं है: ए एक्सेल में, इसलिए आर 1 सी 1 संकेतन एक्सेल से उत्पन्न हुआ है, ऐसा लगता नहीं है कि आर 1 सी 1 संकेतन में ऐसा करना संभव है। अगर ऐसा है, तो यह मेरे जीवन को आसान बना देगा।

पृष्ठभूमि: मेरे पास एक स्प्रैडशीट विज़िट्स हैं, जो एक अन्य स्प्रेडशीट डेटा से जानकारी खींचती है, जिसमें एक गतिशील रूप से परिवर्तनशील प्रारूप है।

इसके चारों ओर पाने के लिए, मैं डेटा के वर्तमान लेआउट के आधार पर, सेल में एक पता उत्पन्न करने के लिए एक सूत्र का उपयोग करता हूं। मैं इस पते की सेल को अप्रत्यक्ष का उपयोग करके अन्य सूत्रों में संदर्भित कर सकता हूं। और यह A1 की तुलना में R1C1 का उपयोग करके एक पता उत्पन्न करना बहुत आसान है।


"जैसा कि ए 1 का उपयोग करना संभव नहीं है: एक्सेल में" - क्या आपका मतलब है "जैसा कि एक्सेल में आर 1 सी 1 का उपयोग करना संभव नहीं है"?
विदर्भ एस। रामदल

नहीं, मेरा मतलब था कि रेंज A1: केवल Google डॉक्स में काम करता है - एक्सेल के साथ आपको रेंज के अंत में पंक्ति और स्तंभ दोनों को निर्दिष्ट करना होगा।
s6mike

5
मैं R2D2 के बारे में सोचें बिना R1C1 अंकन नहीं पढ़ सकता।
सोनी सैंटोस

जवाबों:


3

संक्षिप्त जवाब

हां, R1C1 संकेतन का उपयोग करके एक पूरे कॉलम को संदर्भित करना संभव है: उपयोग करें INDIRECT("C1",FALSE)

व्याख्या

Google शीट एक सुविधा R1C1 को ए 1 से संदर्भ अंकन को बदलने के लिए शामिल नहीं है, लेकिन पिछले के साथ इस्तेमाल किया जा सकता अप्रत्यक्ष निर्मित कार्य करते हैं।

उदाहरण

1000 पंक्तियों वाली शीट में, निम्न सूत्र 1000 वापस आ जाएगा

=ROWS(INDIRECT("C1",FALSE)) 

2
प्रतिभाशाली! धन्यवाद :) अब मुझे सवाल पूछे लगभग 4 साल बीत चुके हैं, अब मुझे बस याद रखने की ज़रूरत है कि जब मैंने पूछा था तो मैं क्या कर रहा था!
s6mike

6

A1 संकेतन अभी समर्थित है। स्तंभ A को केंद्र में रखने के लिए:

SpreadsheetApp.getActiveSheet().getRange("A1:A").setHorizontalAlignment("center");

1
A1 संकेतन का हमेशा समर्थन किया गया है, लेकिन मेरे प्रश्न पूछते हैं कि क्या Google स्प्रेडशीट में संपूर्ण कॉलम को संदर्भित करने के लिए R1C1 संकेतन का उपयोग करना संभव है।
s6mike

2

नहीं, लेकिन आप इसके चारों ओर काम कर सकते हैं, यह जानकर कि COUNTAफ़ंक्शन का उपयोग करके किसी कॉलम में डेटा के साथ कौन सी पंक्ति है ।

INDIRECT("A1:A") कुछ इस तरह लिखा जा सकता है INDIRECT("R1C1:R" & COUNTA(R1C1:R1000C1) & "C1")

आपको एक समझदार 'अधिकतम पंक्तियों' के मूल्य को निर्धारित करने की आवश्यकता है। मैंने उदाहरण में 1000 का उपयोग किया है, इसलिए इस सूत्र को 1000 पंक्तियों के साथ एक स्प्रेडशीट में काम करना चाहिए।

को फिर से देखें COUNTAमें Google Spreadsheets समारोह सूची


अब यह संभव है (मेरे देखने जवाब हो सकता है कि इस नए Google शीट पर पेश किया गया
रुबेन

आह, यह बहुत अच्छा है!
विदर्भ एस। रामदल

-1

स्वीकार्य प्रारूप उपयोग की जा रही विधि के आधार पर भिन्न होता है। में इस एक , उदाहरण के लिए, विवरण R1C1 अंकन के लिए अनुमति देता है, लेकिन यह (कम से कम मेरे लिए) स्पष्ट नहीं है कि क्या इनपुट या आउटपुट R1C1 अंकन है।

मैं getRange(row, column, numRows, numColumns)इसके बजाय ( आधिकारिक डॉक्टर यहां ) के उपयोग को अपनाने की सलाह देता हूं । आपके इच्छित उपयोग के दिए गए विवरण के आधार पर, यह आपके उद्देश्यों के लिए काफी उपयुक्त होगा। मैं अक्सर लूप में मानों की एक पूरी श्रृंखला को पुनः प्राप्त करने के लिए 'पंक्ति' पैरामीटर के लिए एक चर का उपयोग करता हूं। उदाहरण के लिए, getRange(row, 2, 1, 7)जहाँ पंक्ति = 3 श्रेणी को लौटाएगी C2:C8। फिर, अगली श्रेणी D2: D8 वापस करने के लिए बस 'पंक्ति' बढ़ाएँ।


1
आप उस कॉलम में निर्दिष्ट मार्गों के बजाय पूरे कॉलम को कैसे देखें, इस सवाल का जवाब नहीं दे रहे हैं। जब तक आवश्यक नहीं हो तब तक लूप में बार-बार गेटरेंज का उपयोग करने की सिफारिश नहीं की जाती है, यह खराब प्रदर्शन और कोटा मुद्दों की ओर जाता है।

1
जैसा कि आपको getRange मेथड में स्पष्ट नहीं मिला है: इसका आउटपुट एक रेंज ऑब्जेक्ट है, न कि एक स्ट्रिंग, इसलिए इसके लिए नोटेशन का कोई सवाल ही नहीं है। इनपुट के लिए अंकन निर्दिष्ट है, जो एक स्ट्रिंग है।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.