सशर्त स्वरूपण सूत्र के साथ काम नहीं कर रहा है


0

मैं एक सेल में अपनी एक्सेल शीट का नाम इनपुट करने के लिए नीचे दिए गए सूत्र का उपयोग कर रहा हूं। जब मैं उस सेल पर सशर्त स्वरूपण का उपयोग करने का प्रयास करता हूं और विकल्प का उपयोग करता हूं "डेटा को बदलने के लिए सेल को प्रारूपित करने के लिए कौन से सेल को निर्धारित करने के लिए एक सूत्र का उपयोग करें"।

=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)

मैं 01/01/17 को प्रदर्शित करने के लिए अपनी शीट का नाम (जो 010117 के रूप में लिखी गई तारीख है) प्राप्त करने की कोशिश कर रहा हूं। चूंकि एक्सेल अभ्यस्त मुझे शीट नाम सशर्त स्वरूपण में "/" प्रतीक का उपयोग करने की अनुमति देता है, यह मेरा एकमात्र विकल्प प्रतीत होता है, लेकिन यह इस उदाहरण में काम नहीं करता है।

विकल्प?


क्या आप शीट का नाम बदल सकते हैं? मुझे लगता है कि मुद्दा यह है कि यह एक से शुरू हो रहा है 0और एक्सेल ऐसा नहीं लगता। क्या सेल में शीट का नाम रखना आपका अंतिम लक्ष्य है, या यह है कि शायद आपको अंतिम लक्ष्य तक ले जाने के लिए एक कदम है? यह थोड़ा हास्यास्पद है, लेकिन अगर आप अपनी शीट का नाम बदल सकते हैं 10117, तो यह काम करने लगता है:=TEXT(DATE("20"&RIGHT(0&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255),2),MID(0&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255),3,2),LEFT(0&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255),2)),"mm/dd/yy")
BruceWayne

वह बोली ठीक है। निरंतरता के लिए इसकी अधिकता है क्योंकि बीमार के पास एक एक्सेल फ़ाइल में 365 शीट हैं, इसलिए मुझे अपनी शीट नामों पर दिनांक 010117,020117 आदि सेट करना पसंद है।
थक कर चूर

0 को हटाकर भी सशर्त स्वरूपण अभी भी समस्या को हल नहीं करता है
समाप्त

क्या VBA आपके लिए एक समाधान है? या इसे केवल सूत्र होने की आवश्यकता है?
BruceWayne

VBA सूट करेगा, मुझे अभी कोई सुराग नहीं मिला है कि इसे कहां से शुरू करना है
समाप्त

जवाबों:


0

यहां एक यूडीएफ है जिसे आप शीट नाम प्राप्त करने के लिए उपयोग कर सकते हैं, जिस शैली में आप चाहते हैं। कृपया ध्यान दें कि यह जाँच नहीं करता है कि यह एक मान्य दिनांक प्रारूप है, यह बस /हर दो संख्याओं के बीच में फेंकता है । इसे वर्कबुक मॉड्यूल में रखें।

Function sheetNameToDate()
Application.Volatile
Dim shtNm As String
shtNm = ActiveSheet.Name
sheetNameToDate = Left(shtNm, 2) & "/" & Mid(shtNm, 3, 2) & "/" & Right(shtNm, 2)
End Function

तो, एक पत्र में, किसी भी सेल में, आप टाइप कर सकते हैं =sheetNameToDate()और यह प्रारूप में पत्रक नाम वापस लौटाएंगे 01/01/17, 02/01/17आदि फिर आप एक सशर्त स्वरूप है कि है, उदाहरण के लिए कर सकते हैं =sheetNameToDate()="01/01/17"और इसे वापस कर देंगे TRUEकि यदि ऐसा है तो है।


जब मैं ऐसा करता हूं तो यह सभी रिटर्न "# नाम" है?
समाप्त

@ बहिष्कृत - हम्म। आपकी शीट केवल 6 नंबर लंबी है, हाँ? कोई अग्रणी / अनुगामी स्थान नहीं? क्या आप मुझे बता सकते हैं कि किस शीट का नाम #NAMEत्रुटि हो रहा है? उन सभी को? आपको प्रत्येक से पहले जोड़ने की आवश्यकता हो सकती है , और , लेकिन यह बिना किसी समस्या के Excel 2010 में चला गया। Worksheetfunction.Left()Mid()Right()
ब्रूसवेने
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.