मल्टी-कॉलम लेआउट में एक्सेल शीट कैसे प्रिंट करें?


13

मेरी एक्सेल शीट में तीन कॉलम ए, बी, सी हैं जो बहुत पतले हैं, लेकिन बहुत सारी लाइनें (> 500) हैं। अब अगर मैं इसका प्रिंट निकालता हूं तो मुझे 10 पेज मिलते हैं जो लगभग खाली होते हैं। केवल प्रत्येक पृष्ठ की बाईं सीमा पर मुझे यह तीन कॉलम दिखाई देते हैं।

मैं क्या करना चाहता हूं, उस पूरी शीट को एक बहुरंगी लेआउट में प्रिंट करना है। प्रति पृष्ठ 2 या 3 कॉलम पर्याप्त होंगे। वर्तमान में, मैं इसे एक्सेल से बाहर मानों की प्रतिलिपि बनाकर कर रहा हूं, इसे एक वर्ड डॉक्यूमेंट में सम्मिलित करता हूं और फिर वर्ड के मल्टी-कॉलम लेआउट फ़ंक्शन का उपयोग करता हूं। वहाँ सीधे एक्सेल में प्राप्त करने के लिए एक रास्ता नहीं है?

मेरी समस्या को स्पष्ट करने के लिए: वर्तमान में मेरे पृष्ठ इस तरह दिखते हैं

A B C
A B C
A B C
A B C
. . .

लेकिन मैं यह चाहता हूं:

A B C     A B C     A B C
A B C     A B C     A B C
A B C     A B C     A B C
. . .     . . .     . . .

जवाबों:


10

मुझे नहीं लगता कि एक्सेल ऐसा कर सकता है। Microsoft Word का उपयोग करना और स्तंभों को चारों ओर ले जाना संभव कार्य है: कम पृष्ठों का उपयोग करने के लिए स्तंभों को कैसे सर्पिल करें

स्नेक कॉलम के लिए एमएस वर्ड का उपयोग करना (#msword)

यह संभवतः एक समय के उपयोग के लिए सबसे आसान है, क्योंकि मैंने बाद में वर्णित मेरे एक्सेल मैक्रो में एक संवाद नहीं डाला है।

  1. एक्सेल स्प्रेडशीट से कॉलम चुनें और कॉपी करें।
  2. वर्ड में पेस्ट करें, इसमें कुछ पल लगते हैं
  3. तालिका में शीर्ष पर दोहराई जाने वाली पंक्तियों का चयन करें, फिर इसे Word में तालिका -> पंक्तियों को बार-बार इंगित करें
  4. एंकर का उपयोग करके पूरी तालिका का चयन करें, या तालिका में सेल (एस) का चयन करें और फिर तालिका -> चयन करें -> तालिका
  5. यदि आप प्लेसमेंट पर अधिक नियंत्रण चाहते हैं, तो कॉलम बटन, या स्वरूप -> कॉलम का उपयोग करके पंक्तियों की संख्या निर्दिष्ट करें

यह उदाहरण अच्छी तरह से काम करता है। पोस्ट अन्य संभावनाएं भी प्रदान करता है।


4

यदि आपके पास "डेटा योग्य" नामक एक स्रोत तालिका है, तो इस फॉर्मूले को प्रत्येक सेल में एक अतिरिक्त शीट पर रखें (जहाँ मुद्रित डेटा दिखाई दे):

=OFFSET(datatable!$A$2;(ROW()-2)+((COLUMN()-1-MOD(COLUMN()-1;3))/3*4);MOD(COLUMN()-1;3))

( ऊपर में अंग्रेज़ी से जर्मन में अनुवाद किया है परीक्षण किया जर्मन सूत्र है:। =BEREICH.VERSCHIEBEN(datatable!$A$2;(ZEILE()-2)+((SPALTE()-1-REST(SPALTE()-1;3))/3*4);REST(SPALTE()-1;3)) )

अपेक्षित परिणाम:

यह शीट की सामग्री को "डेटा योग्य" में बदल देगा:

A1 B1 C1
A2 B2 C2
A3 B3 C3
A4 B4 C4
A5 B5 C5
A6 B6 C6
...

में:

A1 B1 C1    A5 B5 C5    ...
A2 B2 C2    A6 B6 C6    ...
A3 B3 C3    ...
A4 B4 C4    ...

स्पष्टीकरण:

मूल बातें:

उदाहरण के OFFSET( datatable!$A$2; 3; 4 )लिए $A$2, 3 पंक्तियों के नीचे, दाईं ओर 4 स्तंभों के सापेक्ष सेल को संदर्भित करता है ।

ROW()और COLUMN()संख्याएं हैं, जो वर्तमान शीट में वर्तमान सेल की स्थिति का प्रतिनिधित्व करती है (जैसे $A$1= कॉलम 1 / पंक्ति 1, $C$2= कॉलम 3 / पंक्ति 2)।

(-1)हर जगह आवश्यक है क्योंकि हम ऑफसेट का उपयोग कर रहे हैं, और पहली पंक्ति और स्तंभ 1 है, लेकिन हम पहले संदर्भित कक्ष होना चाहता हूँ $A$2, नहीं $A$2प्लस ऑफसेट 1।

(ROW()-2)Output- / प्रिंट तालिका में एक शीर्षक (यह हो shold -1 यदि आप एक शीर्षक नहीं है) के लिए है।
$A$2स्रोत "डेटेबल" में एक शीर्षक के लिए है। शीर्षक के बिना इसे $A$1(के बजाय $A$2) के साथ संदर्भित किया जाना चाहिए ।

विवरण:

3 पैरामीटर OFFSET(...;...;MOD(COLUMN()-1;3))है स्तंभ ऑफसेट , यह हमेशा स्रोत "datatable" के पहले 3 स्तंभों में से एक दर्शाएंगे।
यह $A$2प्लस कॉलम ऑफ़सेट 0, 1, 2, 0, 1, 2, 0, 1, 2, ...

दूसरे पैरामीटर OFFSET(...; (ROW()-2) + ((COLUMN()-1-MOD(COLUMN()-1;3))/3*4) ;...)में पंक्ति ऑफसेट का चयन करता है ।
मूल रूप से यहाँ गणित y + x * 4 है।

4 पंक्तियों की संख्या है जिसे आप प्रदर्शित करना चाहते हैं।
3 स्रोत "datatable" में कोलम की संख्या है।

X स्तंभ और मॉडुलो से बना है। 3.
COLUMN()-10, 1, 2, 3, ... और इसी तरह है।
MOD(COLUMN()-1;3)0, 1, 2, 0, 1, 2, 0, 1, 2, होगा ...

COLUMN()-1-MOD(COLUMN()-1;3)0, 3, 6, 9, ... और इसी तरह होगा, जहां मूल्य केवल हर 3 कॉलम बदल रहा है।
3 से डिवीजन का परिणाम 0, 1, 2, 3, होगा ...
4 के साथ गुणा 0, 4, 8, 12, ... में परिणाम होगा

(मोडुलो के बारे में स्पष्टीकरण के लिए , MOD()एक्सेल मदद या विकिपीडिया में मोडुलो ऑपरेशन भी देखें )

(मूल विचार के लिए जेक काचर को धन्यवाद)


1

आप एक सरल सूत्र का उपयोग कर सकते हैं:

=OFFSET(Sheet1!$A$1,(ROW()-2)*5+COLUMN(),0)

5 कॉलम में डेटा को क्षैतिज रूप से प्रवाहित करने के लिए।
फिर आप पृष्ठ आकार का चयन कर सकते हैं, प्रत्येक पृष्ठ पर पहली पंक्ति प्रिंट कर सकते हैं, आदि
सरल, साफ, कोई VBA की आवश्यकता नहीं है।


3
शायद एक एक्सेल गुरु के लिए उपयोगी है - लेकिन मुझे नहीं पता कि मैं इसे कहां डालूं या इसका उपयोग कैसे करूं।
एंथनी निकोल्स

1
जो अनुरोध किया गया था, वह ठीक नहीं है, लेकिन यह दिलचस्प नहीं है। यदि कॉलम A में संख्याओं की एक लंबी श्रृंखला है, तो यदि आपने C, D, E, F, G कहने के लिए इस सूत्र की प्रतिलिपि बनाई है और इसे पर्याप्त संख्या में नीचे खींच लिया है पंक्तियों के साथ, आपको डेटा के 5 छोटे कॉलम मिलेंगे। डेटा पाँच स्तंभों में बहता है, जबकि मुझे उम्मीद है कि आप चाहते थे कि डेटा प्रत्येक स्तंभ के नीचे और पूरे साँप के नीचे प्रवाहित हो। फिर भी, बहुत दिलचस्प कॉम्पैक्ट फॉर्मूला।
19

0

मुझे सबसे आसान तरीका एक नई वर्कशीट बनाना और बस अलग-अलग कॉलम में मैन्युअल रूप से टेबल को फिर से बनाना था।

उदाहरण के लिए A1 =Sheet1!A1

बी 1 =Sheet1!B1

सी 1 =Sheet1!C1

D1 रिक्त (एक विभक्त स्तंभ के लिए)

तब E1 =Sheet1!E51

एफ 1 =Sheet1!B51

G1 =Sheet1!C51

और इसे 50 से अधिक पंक्तियों में कॉपी करें। यह तब एकल स्तंभ 100 पंक्ति तालिका को 2 स्तंभ 50 पंक्ति तालिका में बदल देता है। अपनी आवश्यकताओं के अनुरूप समायोजित करें।

बेशक यह मैनुअल है, और इसी तरह शेष पंक्ति गणना पर निर्भर करता है। मूल तालिका में पंक्तियों की संख्या और इच्छित कॉलम की संख्या से गतिशील रूप से गणना करना मुश्किल नहीं होगा। एकमात्र समस्या यह है कि यदि मूल तालिका नई शीट पर स्तंभों में अलग होने पर एक पृष्ठ पर फिट होगी तो उससे आगे क्या होता है।


0

यदि आपके पास Adobe Indesign है तो आप इसमें एक्सेल फाइल रख सकते हैं और इस लेआउट को आसानी से बना सकते हैं।

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