एक्सेल - सूची स्थिति के साथ एक विशिष्ट स्थिति के आधार पर सेल में कस्टम प्रवेश की अनुमति कैसे दें


0

मेरे पास एक सेल थी जो सूची सत्यापन के साथ लागू होती थी। उपयोगकर्ता विकल्प 1, विकल्प 2, विकल्प 3, अन्य को चुन सकता है।

स्थापना

यह सेटिंग है

मैं जो चाहता हूं वह यह है कि यदि दूसरों को चुना जा रहा है, तो उपयोगकर्ता को सीमा शुल्क प्रविष्टि की अनुमति है। यदि सेल खाली है या विकल्प 1,2,3 के साथ है, तो उपयोगकर्ता को मुफ्त पाठ की अनुमति नहीं है।

सेटिंग करते समय, मैंने "अवैध डेटा दर्ज किए जाने के बाद त्रुटि चेतावनी दिखाएं" पर नहीं था। हालांकि, यह उपयोगकर्ता को किसी भी समय पाठ मुक्त करने की अनुमति देगा।

यदि मैं "अवैध डेटा दर्ज किए जाने के बाद त्रुटि चेतावनी दिखाता हूं", तो उपयोगकर्ता पाठ को मुक्त नहीं कर पाएगा। वे केवल दिए गए विकल्पों को चुन सकते हैं, जो विकल्प 1,2,3 और अन्य हैं।

किसी भी सुझाव और मदद की सराहना की है। अग्रिम धन्यवाद।

जवाबों:


3

किस आधार पर मैंने आपके प्रश्न को समझा है। मैं एक अस्थायी VBA समाधान सुझा रहा हूं। कोड Excel 2013 में बनाया गया है। Excel 2016 में भी काम करना चाहिए। यदि यह आपके लिए काम करता है तो इसे वापस करने की कोशिश करें।

इस उदाहरण में सेल डी 3 का उपयोग किया जाता है। पहले सेल 3 में मैन्युअल रूप से अपना सत्यापन बनाएं, विकल्प ठीक 1, विकल्प 2, विकल्प 3 और अन्य हैं।

अब ALT+ दबाकर VBA Editor का उपयोग करें F11। VBA कोड संपादक विंडो खुलेगी। उदाहरण के लिए एक्सेल ऑब्जेक्ट शीट 1 पर डबल क्लिक करें यदि वह आपकी इच्छित शीट है और दाएं कोड विंडो में पहले ड्रॉप डाउन से वर्कशीट चुनें और ड्रॉप डाउन से इवेंट बदलें।

इसमें निम्नलिखित VBA कोड डालें। के बीच Private Sub Worksheet_Change(ByVal Target As Range)औरEnd Sub

If Target.Address = "$D$3" Then
    If Target.Value = "Others" Then
        With Target.Validation
        .Delete
        .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
        :=xlBetween
        .IgnoreBlank = False
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With
    End
    End If
End If

If Target.Address = "$D$3" Then
  With Target.Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="Option 1,Option 2,Option 3,Others"
        .IgnoreBlank = False
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
  End With
End If

फ़ाइल को .xlsm के रूप में सहेजें और सेल डी 3 में अब सत्यापन का काम करने का तरीका देखें।

यहां छवि विवरण दर्ज करें


1

आपके प्रश्न का विश्लेषण करने के बाद मैं इस निष्कर्ष पर पहुंचा था कि आपको सशर्त डेटा सत्यापन की आवश्यकता है । इसके लिए आपको कुछ चरणों का पालन करने की आवश्यकता है।

चरण 1: वह सेल चुनें जहां आप चॉइस डालना चाहते हैं और डेटा वैलिडेशन कमांड का चयन करें फिर सेटिंग, सूची और स्रोत टेक्स्टबॉक्स में कुंजी शब्द लिखें । जैसे आप पहले ही सूचीबद्ध कर चुके हैं।

चरण 2: आपको विकल्प 1 और अन्य जैसे प्रमुख शब्दों के लिए नामांकित डेटा रेंज बनाने की आवश्यकता है । "अन्य" के लिए याद रखें डेटा रेंज BLANK रखें, लेकिन अन्य को डेटा के साथ पॉप्युलेट करना होगा।

चरण 3: वह सेल चुनें, जिसे आप कुंजी शब्दों के अनुसार अपनी प्रविष्टियों के लिए मान्य करना चाहते हैं , डेटा सत्यापन आदेश के साथ शुरू करें और फिर अगले सेट सूची विकल्प पर सेटिंग्स करें और अंत में निम्न सूत्र लिखें।

= IF (ए 2 = "Option1", OptionOne, यदि (A2 = "Option2", OptionTwo, तो (A2 = "Option3", OptionThree, दूसरों)))

NB: कृपया ध्यान दें कि Option1, Option2 और Option3 वे नाम हैं जो मैंने कुंजी शब्दों को दिए हैं । और OptionOne, OptionTwo & OptionThree नामांकित डेटा रेंज के लिए कॉलम हेडिंग हैं ।

मैंने आपको सुझाव दिया है कि आप डेटा रेंज दूसरों को बनाए रखें क्योंकि वे रिक्त कोशिकाएँ आपको मुफ्त डेटा लिखने की अनुमति देती हैं।

आशा है कि यह आपकी मदद करेगा। याद रखें कि मेरे द्वारा TESTED होने के बाद मैंने यह समाधान पोस्ट किया है।

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