स्थायी रूप से एक ऑर्ग-मोड तालिका में एक कॉलम को सिंक करें


87

Emacs Org-mode तालिका में, जब आपके पास पूर्णांकों से भरा कॉलम होता है, तो मुझे पता है कि आप कॉलम में मानों का योग पेस्ट करने के लिए C-c +अनुसरण कर सकते हैं C-y। मैं संपूर्ण स्तंभ को हमेशा योग करने के लिए अंतिम पंक्ति में रखने का सूत्र जानना चाहता हूं ।

मैंने सब कुछ आजमाया है। डॉक्स बताएंगे कि कैसे दो स्तंभों को एक साथ नहीं बल्कि एक योग करने के लिए।


4
मुझे जो सबसे अच्छा मिल रहा है, वह है मेज के ऊपर और नीचे एक हाईलाइन जोड़ना और एक कॉलम फॉर्मूला करना: = vsum (@I .. @ II)
मौविस लॉर्डफोर्ड

एक FYI के रूप में, मैंने यहाँ एक ही प्रश्न के बारे में पोस्ट किया है: यहाँ पर लक्ष्यीकरण है: stackoverflow.com/questions/6689424/… यह प्रश्न पहले से ही वोट प्राप्त कर रहा है और उत्तर भिन्न हो सकता है, इसलिए मैं इसे बीच में छोड़ दूंगा।
मौविस लेडफोर्ड

जवाबों:


60

^चिह्न का उपयोग करके फ़ील्ड-नाम निर्दिष्ट करें:

|---+---|
|   | 1 |
|   | 2 |
|   | 3 |
|---+---|
|   | 6 |
| ^ | x |
|---+---|
#+TBLFM: $x=vsum(@1..@-1)

देखें संगठन मैनुअल , धारा 3.5.9 उन्नत सुविधाएँ


धन्यवाद! यह बहुत अच्छा काम करता है। वहाँ सिर्फ हेडरलाइन का उपयोग कर यह करने के लिए एक रास्ता है। डॉक्स में इसका "-" अंकन है, लेकिन फिर मुझे नहीं पता कि कैसे vsum (@ 2 .. @ [अंतिम आइटम]) का उपयोग किया जाए।
मावी लेडफोर्ड

4
आप यह भी कर सकते हैं#+TBLFM: @row$col=vsum(@1..@-1)
mggs 16:24 बजे

7
मुझे मिलता हैUnknown field: x
गरमागरम

मुझे भी अज्ञात क्षेत्र मिला। मैन्युअल पढ़ें, मूल रूप से उपरोक्त उदाहरण में यह ^ xx के ऊपर की पंक्ति को बुला रहा है, ताकि 6 की गणना 1, 2, 3 के vsum से की जाए।
जाफिर

57

तालिका की अंतिम पंक्ति @> उदाहरण के लिए अंतिम पंक्ति में तीसरे कॉलम के लिए राशि प्राप्त करने के लिए है, आप सूत्र का उपयोग कर सकते हैं

@>$3=vsum(@2..@-1)

हो सकता है कि आपको @2एक हेडर लाइन न हो, तो आपको अनुकूलित करना होगा ...


40

फिर भी एक और संभावना क्षैतिज रेखाओं ( , इत्यादि) का उपयोग करती है @I, @IIजो आपकी तालिका की संरचना के लिए उपयोगी मार्ग हैं:

| What  |    $$ |
|-------+-------|
| Ice   |  3.00 |
| Soda  |  6.49 |
| Gin   |  4.99 |
|-------+-------|
| Total | 14.48 |
#+TBLFM: @>$2=vsum(@I..@II)

हेडर के बिना, हस्ट शुरू होने का योग @0दूसरों के द्वारा पहले से ही सुझाए गए अनुसार है।

संपादित करें: मैंने अभी देखा कि आपने अपने प्रश्न के लिए एक टिप्पणी में यह स्वयं लिखा है।


मुझे यह समझने में एक मिनट लगा कि @I और @ II क्षैतिज नियमों का उल्लेख करते हैं, लेकिन मुझे लगता है कि यदि आप अपनी तालिका को इस तरह व्यवस्थित करते हैं तो यह सबसे सरल तरीका है।
तीनवें सेप

9

आप यह कोशिश कर सकते हैं:

$<col_num>=<func>(@2..@-1))

@2स्थिर है। यह दूसरी पंक्ति को संदर्भित करता है। @-1दूसरी से अंतिम पंक्ति को संदर्भित करता है।

मुझे लगता है कि यह सबसे आसान और गैर-घुसपैठ तरीका था। यह आपके कॉलम नामों को सुरक्षित रखता है और दृश्य स्थान को अव्यवस्थित नहीं करता है। यह आपको अंतिम पंक्ति को संबोधित करने की आवश्यकता नहीं है। इसे डिफ़ॉल्ट रूप से संबोधित किया जाता है।

पंक्तियों को जोड़ा / हटाया जा सकता है। कोई अन्य मार्कर नहीं।

जैसे।
#+TBLFM: $3=vmean(@2..@-1)::$4=vsum(@2..@-1))

नमूना तालिका

   | Time                   | Input             | Test      | InQty |
   | <2018-03-13 Tue 06:15> | Water             |           |   200 |
   | <2018-03-13 Tue 07:03> |                   |           |       |
   |                        |                   |           |       |
   | <2018-03-13 Tue 07:31> | Water             |           |   180 |
   | <2018-03-13 Tue 09:00> | Chai              |           |   240 |
   | <2018-03-13 Tue 11:30> | Chai              |           |   240 |
   | <2018-03-13 Tue 16:01> | Water             |           |    60 |
   |                        |                   |           |       |
   |------------------------+-------------------+-----------+-------|
   |                        |                   |           |   920 |
   #+TBLFM: $4=vsum(@2..@-1)

0
|  3 |
|  2 |
|  5 |
| 10 |
#+TBLFM: @4$1=vsum(@1..@-1)

@11 पंक्ति को संदर्भित करता है, और @-1एक सूत्र को पकड़ने वाली पंक्ति से पहले की पंक्ति के लिए। यह फार्मूला सुर्खियों को अनदेखा करता है:

|  3 |
|  2 |
|  5 |
|----|
| 10 |
#+TBLFM: @4$1=vsum(@1..@-1)

0

कुछ जो पाठक के लिए स्पष्ट नहीं हो सकता है वह है फ़ंक्शन का vsum()योग नहीं है ()

दूसरी बात यह है कि यह @2..@-1बात, स्तम्भ के लिए पंक्ति-विशिष्ट लेबल का संदर्भ है। $A$1Excel में बात की तरह है @1$1तो के लिए एक संदर्भ vsum(@2..@-1)कह रहा है "कॉलम में मौजूद मानों की राशि करते हैं, पंक्ति सूचकांक के रूप में उपयोग करते हुए @(यानी दूसरी अंतिम) पंक्ति रेंज 2 में मूल्य, -1th के लिए, लेकिन स्तंभ है [@2$col @3$col @4$col... @-1$col]यदि आप इन अवधारणाओं को एक्सेल में मैप करने का प्रयास करते हैं तो इसमें "दिया" दिया गया है

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