2010-09-19 10 views
6

जब आकार का उपयोग करके एक्सेल वर्कशीट में कोई चित्र डाला जाता है। Addicticture (...) विधि, Excel इसे स्वचालित रूप से "चित्र 1", "चित्र 2" नाम देता है।एक्सेल में आकार का आंतरिक नाम कैसे प्राप्त करें

इस नाम का आकार आकार संग्रह में आकार बदलने के लिए उपयोग किया जा सकता है जैसे आकार। Item ("चित्र 1")। यदि नाम बॉक्स का उपयोग कर एक्सेल में नाम बदल दिया गया है, तो दो अलग-अलग नाम हैं (या उनमें से एक एक कुंजी/कैप्शन है) जिसके माध्यम से आकार वस्तु का संदर्भ दिया जा सकता है। तो अगर मैं "MyPic" करने के लिए नाम बदल रहा आकृतियाँ संग्रह में एक आकार के संदर्भ के लिए इनमें से किसी भी उपयोग कर सकते हैं:

Shapes.Item("Picture 1") 
OR 
Shapes.Item("MyPic") 

नाम VBA में Shape.Name संपत्ति का उपयोग कर पहुँचा जा सकता है लेकिन हम कैसे अन्य उपयोग कर सकते हैं मूल्य (MyPic) जो आंतरिक रूप से परिवर्तित नहीं लगता है?


मुझे क्या करना कोशिश कर रहा हूँ Excel में एक तस्वीर के लिए एक सेल से जोड़ने के लिए है अपडेट किया गया। मैं सेल की टिप्पणी में चित्र डेटा रखता हूं।

  1. अगर मैं चित्र का नाम (बाहरी नाम) रखने तो कॉपी-पेस्ट एक ही कार्यपत्रक पर संरचना डुप्लिकेट नाम होगा और सेल में समान संरचना को इंगित करेंगे: ये परिदृश्य हैं।
  2. यदि मैं आंतरिक नाम रखता हूं तो अन्य वर्कशीट में कॉपी-पेस्टिंग समस्या पैदा करेगा क्योंकि एक ही कार्यपुस्तिका में किसी अन्य वर्कशीट पर एक ही आंतरिक नाम मौजूद हो सकता है।
  3. अगर मैं आईडी लेते हैं, मैं के लिए मुझे हो रही आंतरिक नाम महत्वपूर्ण है से यह

चित्र संदर्भ प्राप्त करने में सक्षम नहीं होगा। मेरे पास आकार संदर्भ है लेकिन इस रेफरी से आंतरिक नाम कैसे प्राप्त करें, इस बारे में कोई जानकारी नहीं है।

उत्तर

7

वर्कशीट (ओशॉट) में आकार जोड़ने के तुरंत बाद आप इसका संदर्भ देने के लिए oSht.Shapes(Osht.Shapes.count) का उपयोग कर सकते हैं। तो, oSht.Shapes(osht.shapes.count).Name आपको इसका नाम देगा।

यदि आप आकार संग्रह में किसी आकार का अनुक्रमणिका ढूंढना चाहते हैं और आप इसका नाम जानते हैं तो आपको Shapes.Name के माध्यम से इसे लूप करने की आवश्यकता है। यदि आप इंडेक्स को जानते हैं, तो आप "पिक्चर एन" वैकल्पिक नाम का निर्माण कर सकते हैं, या आप "पिक्चर एन" वैकल्पिक नाम स्टोर कर सकते हैं। आप आकृति की आईडी प्रॉपर्टी को भी स्टोर कर सकते हैं और फिर आकार को तब तक संदर्भित कर सकते हैं जब तक आपको Shape.ID

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

+0

+1: "यदि आप इंडेक्स को जानते हैं तो आप" पिक्चर एन "वैकल्पिक नाम का निर्माण कर सकते हैं" - यह हमेशा सत्य नहीं हो सकता है क्योंकि यदि आकार संग्रह में इंडेक्स 2 पर एक तस्वीर हटा दी जाती है, तो हमारे पास "चित्र" हो सकता है 3 "सूचकांक 2 पर। मुझे नहीं लगता कि आंतरिक नाम इंडेक्स से मेल खाने के लिए बदला जाएगा। – A9S6

+0

यदि मैं वीबीए में एक आकार जोड़ता हूं, तो आकार से वापसी मूल्य। Addicticture (...) मुझे इसका संदर्भ देगा, इसलिए यहां आकार (गणना) करने की आवश्यकता नहीं है। साथ ही, एक नव निर्मित वस्तु के लिए दोनों आंतरिक और प्रदर्शन नाम समान होंगे, इसलिए आकार। उस समय काम करेगा। समस्या यह है कि बाद में आकार संदर्भ का उपयोग करके उस आंतरिक नाम को कैसे प्राप्त किया जाए (उपयोगकर्ता ने प्रदर्शन नाम बदल दिया हो) – A9S6

+0

यदि आपके पास किसी ऑब्जेक्ट ऑब्जेक्ट का वैध संदर्भ है तो आकार.नाम आपको अपना बाहरी नाम देगा। –

संबंधित मुद्दे