एक्सेल के लिए उपयोगिताओं - एक्सेल टिप्स

विषय - सूची

इस सप्ताह की टिप के लिए विचार महान साप्ताहिक क्विक टिप्स न्यूज़लेटर के लेखक डॉ एम के साथ बातचीत से आया है।

क्विक कॉपी कमांड

मुझे क्विक बहुत पसंद है, लेकिन यह निश्चित रूप से इसकी झुंझलाहट है। मेरे पास क्विकेन में नीचे और ऊपर की तरफ जाने वाली श्रेणियों के साथ एक निश्चित मेमोरियल रिपोर्ट है। क्विक इस रिपोर्ट को प्रिंट करने का अवसर प्रदान करता है, लेकिन निश्चित रूप से, मैं हमेशा रिपोर्ट को कॉपीबोर्ड पर कॉपी करने के लिए कॉपी कमांड का उपयोग करता हूं और फिर क्लिपबोर्ड को रिपोर्ट कॉपी करने के लिए एक्सेल में एडिट> पेस्ट का उपयोग करता हूं। यह सुविधा पुराने (और अभी भी उपलब्ध) प्रिंट से .prn फ़ाइल विकल्प की तुलना में बहुत तेज़ है।

यहाँ वह जगह है जहाँ झुंझलाहट होती है। पहले, क्वीन ने रिपोर्ट के साथ कॉलम हेडिंग को कॉपी करने की जहमत नहीं उठाई। इसलिए, मुझे मैन्युअल रूप से एक्सेल में महीने के नाम दर्ज करने होंगे। काफी सरल। दूसरा, जो श्रेणियां क्लिपबोर्ड पर कॉपी की जाती हैं, उनमें श्रेणियों और उप-श्रेणियों के लिए एक कष्टप्रद रूपरेखा प्रारूप शामिल होता है।

श्रेणियाँ और उप-श्रेणियां

क्विक आपको अपने खर्चों को वर्गीकृत करने के लिए श्रेणियों और उप-श्रेणियों का उपयोग करने की अनुमति देता है। बाईं ओर की रिपोर्ट में, बीमा, गैसोलीन, मरम्मत और लाइसेंस प्लेटों द्वारा मोटर वाहन के खर्च को और अधिक तोड़ दिया गया है। शायद मैंने अपनी श्रेणियों को स्थापित करने का एक खराब काम किया, लेकिन मुझे लगता है कि मेरे पास कुछ श्रेणियां हैं जहां मैं उपश्रेणी विस्तार और अन्य श्रेणियों को देखना चाहता हूं, जहां मैं केवल श्रेणी को देखना पसंद करूंगा।

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

लंबे समय से पाठकों को फिल टू पिवट टेबल ब्लैंक सेल्स में पिवट टेबल द्वारा उपयोग की जाने वाली आउटलाइन फॉर्मेट के लिए गो टू स्पेशल टिप का उपयोग करते हुए मेरा तिरस्कार याद होगा। हमारे यहां भी यही स्थिति है। यदि क्विक रिपोर्ट महज एक मध्यवर्ती कदम है और आप श्रेणी के आधार पर छांटना चाहते हैं, तो रूपरेखा प्रारूप भयानक है। कुल योग और उसके बाद श्रेणी के आधार पर, ऑटो: बीमा श्रेणी को रिपोर्ट के "I" खंड में गलत तरीके से छांटा जाएगा। उन श्रेणियों के लिए जहां मैं केवल कुल रखता हूं, वे गलत तरीके से रिपोर्ट के "टी" अनुभाग में छाँटे जाएंगे।

वहाँ दो उपयोगिताओं कि मैंने सोचा था कि इस स्थिति को कम करेगा। उपयोगिता को पतन कहा जाता है। जब आह्वान किया जाता है, तो यह मैक्रो उप-श्रेणी को एक एकल श्रेणी में एक उचित श्रेणी के नाम से ध्वस्त कर देगा। ऊपर के उदाहरण में, मैक्रो को चलाने जबकि सेल-पॉइंटर कहीं भी 34 पंक्तियों में 38 के माध्यम से ए 38 में "कंप्यूटर" के साथ श्रेणी को बदल देगा और पंक्तियों को 34 के माध्यम से हटा देगा।

उपयोगिता दो उन श्रेणियों के लिए है, जहां मैं उपश्रेणी विस्तार देखना चाहता हूं, लेकिन शीर्ष, धराशायी सबटोटल लाइन, और न ही श्रेणी कुल की आवश्यकता नहीं है। इस उपयोगिता को फिल कहा जाता है। यह उचित श्रेणी का नाम ढूंढेगा, और प्रत्येक उपश्रेणी को उपसमूह के साथ उपसर्ग करेगा। ऊपर दिए गए उदाहरण में, सेल-पॉइंटर को 30 के माध्यम से 24 पंक्तियों में कहीं भी स्थूल चलाने पर कोशिकाओं में परिणाम होगा A25: A28 को "ऑटो: बीमा" जैसे प्रारूप में बदला जा रहा है। 24, 29 और 30 को हटा दिया जाएगा।

रिपोर्ट का बेहतर संस्करण

दाईं ओर, रिपोर्ट का मेरा उन्नत संस्करण है। गर्म कुंजियों में संक्षिप्त और भरण निर्दिष्ट करके, मैं केवल कुछ कीस्ट्रोक्स के साथ इन परिवर्तनों को करने में सक्षम था। अब रिपोर्ट को क्रमबद्ध करना आसान है, यह जानते हुए कि श्रेणी को छाँटकर रिपोर्ट मूल अनुक्रम में लौट सकती है।

यदि आप मैक्रोज़ के लिए नए हैं, तो Excel VBA संपादक का परिचय दें।

एक बार जब आप मैक्रो की प्रतिलिपि बना लेते हैं, तो आप इन चरणों का पालन करके एक हॉट की असाइन कर सकते हैं:

  • टूल मेनू से, मैक्रोज़ चुनें फिर मैक्रो
  • भरें मैक्रो को हाइलाइट करें। विकल्प पर क्लिक करें। शॉर्टकट फ़ील्ड में, किसी भी पत्र को दर्ज करें। मैं भरण के लिए f का उपयोग करता हूं। ओके पर क्लिक करें
  • पतन मैक्रो को हाइलाइट करें। विकल्प पर क्लिक करें। शॉर्टकट के लिए एक पत्र चुनें, लेकिन c से दूर रहें, क्योंकि Ctrl + c सामान्य शॉर्टकट है
  • संपादन के लिए> कॉपी करें। ओके पर क्लिक करें
  • रद्द करें के साथ मैक्रो संवाद बंद करें।

अपनी खोज के एक हिस्से के रूप में, एक दिन के समर इंटर्न को डिजाइन करने के लिए, अनहत्ुआन डू ने निम्नलिखित मैक्रोज़ का निर्माण किया।

Option Explicit Dim Flag, Flag2 As Boolean 'Flags to keep the Find Procedures running Dim HeaderRow, TotalRow As Integer 'Number of the Header and Total Rows Dim Counter As Integer 'Counter to ensure searches are relative to activecell Dim TempString, TempTest As String 'Strings that are used as temporary holders to compare Dim CategoryName As String 'Name of the category currently in Sub Collapse() 'To collapse the rows, run this macro Flag = False Flag2 = False Counter = -1 'Continue looping until HeaderRow is found Do Until Flag = True Counter = Counter + 1 Call FindHeader Loop 'Create CategoryName CategoryName = Left(CategoryName, Len(CategoryName) - 1) CategoryName = Trim(CategoryName) 'Assign HeaderRow HeaderRow = ActiveCell.Row - Counter Counter = 0 'Continue looping until TotalRow is found Do Until Flag2 = True Counter = Counter + 1 Call FindTotal Loop 'Assign TotalRow TotalRow = ActiveCell.Row + Counter 'Replace "TOTAL Category" with "Category" Cells(TotalRow, 1).Value = " " & CategoryName 'Deleting sub-category rows Rows(HeaderRow & ":" & TotalRow - 1).Delete Shift:=xlUp End Sub Sub Fill() 'To add the CategoryName to each of the types, run this macro Dim i As Integer Flag = False Flag2 = False Counter = -1 'Continue looping until HeaderRow is found Do Until Flag = True Counter = Counter + 1 Call FindHeader Loop 'Create CategoryName CategoryName = Left(CategoryName, Len(CategoryName) - 1) CategoryName = Trim(CategoryName) 'Assign HeaderRow HeaderRow = ActiveCell.Row - Counter Counter = 0 'Continue looping until TotalRow is found Do Until Flag2 = True Counter = Counter + 1 Call FindTotal Loop 'Assign TotalRow TotalRow = ActiveCell.Row + Counter 'Adding CategoryName and colon to the start of each sub category For i = HeaderRow + 1 To TotalRow - 2 TempString = Trim(Cells(i, 1).Value) Cells(i, 1).Value = " " & CategoryName & ": " & TempString Next i 'Deleting Header and Total Row Rows(TotalRow & ":" & TotalRow - 1).Delete Shift:=xlUp Rows(HeaderRow).Delete Shift:=xlUp End Sub Sub FindHeader() Dim i As Integer TempString = Cells(ActiveCell.Row - Counter, 1).Value 'Checking to see if in first row If (ActiveCell.Row - Counter) = 1 Then MsgBox "You are not in a collapsable row" End If 'Checking to see if in a valid row 'If it reaches a TOTAL before reaching a colon, then error If Left(Trim(TempString), 5) = "TOTAL" Then MsgBox "You are not in a collapsable row" End If 'Checking the String for a colon For i = 1 To Len(TempString) TempTest = Mid(TempString, i, 1) If TempTest = ":" Then CategoryName = TempString Flag = True Exit For End If Next i End Sub Sub FindTotal() Dim i As Integer 'Finding the TOTAL Row TempString = Cells(ActiveCell.Row + Counter, 1).Value TempString = Trim(TempString) If TempString = "TOTAL " & CategoryName Then Flag2 = True End If End Sub

दिलचस्प लेख...