हेक्साडेसिमल में Microsoft Excel 2007 सेल को कैसे प्रारूपित करें?


27

मैं हेक्साडेसिमल में Microsoft Excel 2007 में एक सेल को प्रारूपित करना चाहूंगा लेकिन यह नहीं कर पा रहा हूं कि यह कैसे करना है।

क्या सेल के लिए आधार को 10 से 16 तक बदलने का एक अंतर्निहित तरीका है?

जवाबों:


18

जैसा कि पहले उल्लेख किया गया है, सूत्र = DEC2HEX (A1) हेक्स में कनवर्ट करता है, और DEC2HEX (A1,8) 32 बिट्स को निरूपित करने के लिए 0 उपसर्ग के साथ हेक्स में कनवर्ट करता है। अग्रणी 0 जोड़ते समय संख्याओं को अधिक पठनीय बनाता है, खासकर यदि आप एक निश्चित बिंदु फ़ॉन्ट का उपयोग करते हैं, तो हेक्स और दशमलव संस्करण मिश्रित हो सकते हैं जब संख्या में सभी अंक 0-9 (जैसे 327701 = 50015) हो।

एक सुधार "0x" उपसर्ग जोड़ना है। ऐसा करने के 2 तरीके हैं। = "0x" और DEC2HEX (A1,8) ट्रिक करेगा, लेकिन यह फ़ील्ड को टेक्स्ट फ़ील्ड में बदल देता है, इसलिए इसे अब आसानी से फ़ार्मुलों में उपयोग नहीं किया जा सकता है। एक अन्य विधि एक कस्टम प्रारूप का उपयोग करना है। यदि आप सेल में कस्टम प्रारूप "0x" @ लागू करते हैं, तो सेल का मूल्य अभी भी एक समीकरण में उपयोग किया जा सकता है। उदाहरण:

╔═══╦════════════════╦════════════╦═══════════════ ══════════════╦═══════════════╗
║ ║ ए ║ बी ║ ║ ║
╠═══╬════════════════╬════════════╬═══════════════ ══════════════╬═══════════════╣
║ 1 ║ ║ मान ║ पत्राचार सूत्र ║ संख्या स्वरूप ║
║ 2 ║ दशांश 16 11162790 27 11162790 ║ सामान्य ║
║ 3 ║ हेक्स 54 AA54A6 DEC = DEC2HEX (B2) ║ जनरल ║
║ 4 ║ अग्रणी 0 के ║ 00AA54A6 DEC = DEC2HEX (B2,8) ║ जनरल ║
║ 5 ║ पाठ 0x उपसर्ग 00 0x00AA54A6 DEC = DEC2HEX (B2,8) ,8 "0x" @ ║
║ 6 ║ पाठ 0x उपसर्ग 00 0x00AA54A6 "=" 0x "और DEC2HEX (B2,8) ║ सामान्य ║
║ 7 ║ B5 का उपयोग करें 54 AA54A600 DEC = DEC2HEX (HEX2DEC (B5) * 256) ║ सामान्य ║
║ 8 ║ बी 5 ║ 0xAA54A600 का उपयोग करें H = DEC2HEX (HEX2DEC (B5) * 256) x "0x" @ ║
║ 9 6 ​​B6 ║ #NUM का उपयोग करने का प्रयास करें! ║ = DEC2HEX (HEX2DEC (B6) * 256) DEC जनरल H
╚═══╩════════════════╩════════════╩═══════════════ ══════════════╩═══════════════╝


हालाँकि, अलग-अलग अंकों वाली बड़ी संख्या अभी भी पढ़ने में कठिन हो सकती है, इसलिए मुझे दशमलव संख्याओं में "और" _ को हेक्स संख्याओं में रखना पसंद है। सबसे पहले आपको संख्या के ऊपरी और निचले 16 बिट्स प्राप्त करने की आवश्यकता है। 32-बिट संख्या के ऊपरी 16 बिट्स को = INT (A1 / 2 ^ 16) के साथ पुनर्प्राप्त किया जा सकता है। 2 ^ 16 द्वारा विभाजित 16 बिट्स की एक सही शिफ्ट की तरह काम करता है, और INT आंशिक अंश को हटा देता है। किसी भी 32 या 64-बिट संख्या के निचले 16 बिट्स प्राप्त करने के लिए MOD का उपयोग किया जा सकता है; = MOD (A1, 2 ^ 16)। एमओडी प्रभावी रूप से शेष बच जाता है, जो निचले 16 बिट्स है। यहां एक तालिका है जो इसे कार्रवाई में दिखाती है।

╔═══╦═════════════╦═══════════════╦═══════════════ ═════════════════════╦═════════╗
║ ║ ए ║ बी ║ ║ ║
╠═══╬═════════════╬═══════════════╬═══════════════ ═════════════════════╬═════════╣
║ 1 ║ ║ मान ║ पत्राचार सूत्र ║ प्रारूप ║
║ 2 ║ दशांश 0 3,098,743,209 87 3098743209 0 #, ## 0 ║
║ 3 ║ ऊपरी बाइट्स 8 B8B3 DEC = DEC2HEX (INT (B2 / 2 ^ 16), 4) ║ General ║
║ 4 ║ लोअर बाइट्स A 11A9 DEC = DEC2HEX (MOD (B2, 2 ^ 16))) जनरल ║
║ 5 ║ पूर्ण संख्या x 0xB8B3_11A9 "=" 0x "और DEC2HEX (INT (B2 / 2 ^ 16), 4) ║ General ║
║ & ║ ║ & "_" & DEC2HEX (MOD (B2, 2 ^ 16), 4) ║ ║
╚═══╩═════════════╩═══════════════╩═══════════════ ═════════════════════╩═════════╝


BTW, मुझे https://ozh.github.io/ascii-tables/ पर एक बड़ा धन्यवाद देना होगा । मैंने ASCII टेक्स्ट टेबल बनाने के लिए उस लिंक का उपयोग किया। मैंने अपने एक्सेल स्प्रेडशीट से तालिका को इसके इनपुट अनुभाग में कॉपी किया और इसने स्वचालित रूप से अच्छा यूनिकोड टेक्स्ट लेआउट बनाया।


16

यदि आप एक सेल को प्रारूपित करना चाहते हैं ताकि आप दशमलव संख्या में टाइप कर सकें और स्वचालित रूप से इसे हेक्साडेसिमल संख्या के रूप में प्रदर्शित कर सकें, तो यह संभव नहीं है। आप या तो सेल को टेक्स्ट के रूप में प्रारूपित कर सकते हैं और सीधे हेक्साडेसिमल नंबर दर्ज कर सकते हैं (लेकिन ध्यान दें कि एक्सेल गणना के लिए उन का उपयोग नहीं कर सकते हैं), या बेस 10 और बेस 16 के बीच कनवर्ट करने के लिए उत्पादों DEC2HEX()और HEX2DEC()फ़ंक्शन का उपयोग करें ।


1
संदर्भ के लिए, वहाँ भी है DEC2BIN()जो बाइनरी में कनवर्ट करता है। निश्चित चौड़ाई बाइनरी के लिए, कुछ का उपयोग करें जैसे=TEXT(DEC2BIN(A1), "0000")
टॉर क्लिंगबर्ग

1
जर्मन स्थानीयकृत Excel 2013 में, DEC2HEX और HEX2DEC त्रुटि संदेश #NAME ?. कार्यालय की सहायता से, मुझे पता चला कि कार्यों को DEZINHEX और HEXINDEZ, सम्मान कहा जाता है।
बर्नहार्ड हिलर

मैं = 0x1234AB से = 0x001234AB (मुझे 8 की निश्चित चौड़ाई की आवश्यकता है) कैसे बढ़ाऊं?
दानीजेल

@Danijel DEC2HEX के दूसरे पैरामीटर का उपयोग करें।
विंसेंट जी

7

यदि कोशिका को परिवर्तित किया जाना है तो A1उपयोग किया जाता है =DEC2HEX(A1)


2
आप अपने हेक्स मूल्य में एक अग्रणी "0x" जोड़ना चाह सकते हैं। ="0x"&DEC2HEX(A1,4)ऐसा परिणाम प्राप्त करने के लिए उपयोग करें जो जैसा दिखता है 0x1AF2
प्रयोक्ता ५

4

यदि आपको हेक्स में परिवर्तित संख्याओं पर गणितीय संचालन करने की आवश्यकता है, तो पहले उन्हें दशमलव में परिवर्तित करें, ऑपरेशन करें, फिर वापस हेक्स में परिवर्तित करें।

उदाहरण के लिए, यदि सेल A1में एक हेक्स संख्या है, जैसे कि इस सूत्र से बनाई जाएगी:

=DEC2HEX(17)

जिसे 11 के रूप में प्रदर्शित किया जाएगा, और सेल A2में सूत्र है:

=DEC2HEX(165)

जो प्रदर्शित किया जाएगा A5, और आप उन्हें एक साथ जोड़ना चाहते हैं, तो इस सूत्र को वांछित परिणाम मिलेगा:

=DEC2HEX(HEX2DEC(A1)+HEX2DEC(A2))

जो प्रदर्शित किया जाएगा B6


1
=REPT("0",4-LEN(DEC2HEX(B3)))&DEC2HEX(B3)

REPT सूत्र हेक्स स्ट्रिंग की लंबाई के आधार पर "0" को दोहराता है जो इसे दशमलव से परिवर्तित करके, और हेक्स स्ट्रिंग की वांछित लंबाई के आधार पर उत्पन्न होता है। इस उदाहरण में मैं लंबाई 4 के हेक्स स्ट्रिंग्स उत्पन्न करने के लिए देख रहा हूं।

आप तब वास्तविक ज़ीरक्सा स्ट्रिंग के लिए अग्रणी शून्य को संक्षिप्त करते हैं, जिससे वांछित लंबाई का एचईएक्स मान उत्पन्न होता है।

लाभ:

  1. अन्य वर्कशीट के सूत्र का आसान मुकाबला। दशमलव मान B3 के केवल दो सेल संदर्भों के साथ, पुन: असाइन करने के लिए।
  2. इस सूत्र के परिणामों को एक्सेल द्वारा HEX मानों के रूप में माना जाता है। आप "0x" को भी उपसर्ग कर सकते हैं, लेकिन मुझे यह आवश्यक नहीं लगता है।

नोट: मैं इसका उपयोग तब करता हूं जब मैं एचईएक्स स्ट्रिंग्स की नकल कर रहा हूं और वे अलग-अलग लंबाई पर नकल करते हैं। मैं पहले मूल मानों से दशमलव मानों का एक कॉलम तैयार करता हूं, जिसके बाद मैं इस फॉर्मूले को चला सकता हूं।


0

यहां एक समाधान है जो मुझे यह सुनिश्चित करने के लिए मिला है कि मैं इन हेक्स संख्याओं को HTML प्रारूप में प्रारूपित कर सकता हूं:

SWITCH(LEN(DEC2HEX(B6)),1,"000"&DEC2HEX(B6),2,"00"&DEC2HEX(B6),3,"0"&DEC2HEX(B6),4,DEC2HEX(B6))

2
आपके कोड में क्या चल रहा है, इसका स्पष्टीकरण उत्तर को अधिक उपयोगी बना देगा।
विलियमकॉफ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.