2013-09-26 22 views
7

में रिबन को कम करता है मैं वीबीए के साथ एक्सेल 2013 में रिबन को कम करना चाहता हूं। मैं रिबन को टॉगल नहीं करना चाहता, और मैं "फाइल", "सम्मिलित करें" आदि सहित सब कुछ छिपाना नहीं चाहता हूं। मैंने कई अलग-अलग तरीकों की कोशिश की है, लेकिन कोई भी मुझे संतुष्ट नहीं करता है।वीबीए एक्सेल

यह खाल सब कुछ:

Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"",False) 

यह टॉगल:

CommandBars.ExecuteMso "MinimizeRibbon" 

यह भी टॉगल:

SendKeys "^{F1}" 

कैसे मैं बस मेरी रिबन मजबूर कर सकते हैं कम से कम करने?

+1

आप उपयोगकर्ता को भ्रमित क्यों करना चाहते हैं? उपयोगकर्ता को यह तय करने दें कि रिबन दिखाई दे या नहीं। – adrianm

+1

कहां कहता है कि उपयोगकर्ता निर्णय नहीं लेता है? एक बटन पर क्लिक करें, एक मैक्रो चलाएं, निर्णय लिया। –

+0

'Workbook_Open()' ईवेंट में 'Application.DisplayFullScreen = True' के बारे में कैसे? –

उत्तर

5

सुनिश्चित नहीं हैं कि जब आप इस कॉल करने के लिए कोशिश कर रहे हैं लेकिन इस रिबन कम करने के लिए अपनी खुली

If Application.CommandBars("Ribbon").Height >= 150 Then 
    SendKeys "^{F1}" 
End If 

ओपन रिबन न्यूनतम आकार होने के लिए 150 तो यह केवल टॉगल होगा यदि यह खुला है लगता है अगर काम करेंगे

+0

धन्यवाद, यह बहुत अच्छा है, लेकिन मुझे पता है कि मेरे रिबन में 147 की ऊंचाई है और बंद होने पर 61 है। तो मैंने 100 पर अपना थ्रेसहोल्ड सेट किया। –

+1

उपयोगकर्ताफॉर्म से लॉन्च होने पर प्रेषक विफल हो जाएंगे क्योंकि वर्कशीट में फोकस नहीं है, इसलिए या तो प्रेषक के पहले एपैक्टिवेट का उपयोग करें, या कमांडबार्स कोड –

-3

आप इस पूरी तरह से जैसे ही कार्यपुस्तिका तो खोला है कार्यपुस्तिका कोड से जोड़ें छिपा हो करना चाहते हैं:

Private Sub Workbook_Open() 
    Application.ExecuteExcel4Macro "show.toolbar(""Ribbon"",False)" 
End Sub 
+0

का उपयोग करें ऐसा लगता है कि ओपी ने पहले से ही यह कोशिश की है और था परिणाम से संतुष्ट नहीं है। –

4

उपाय रिबन ऊंचाई, यह टॉगल, आगा को मापने में और यदि लंबा, फिर से टॉगल करें। एप्लिकेशन सेट करने के लिए भी सबसे अच्छा .creenupdating = false।

ht1 = Application.CommandBars("Ribbon").Height 
SendKeys "^{F1}", False 
DoEvents 
ht2 = Application.CommandBars("Ribbon").Height 
If ht2 > ht1 Then SendKeys "^{F1}", False 

और मुझे इससे नफरत है जब लोक सवाल तुम क्यों तुम क्या चाहते क्या करना चाहते हैं। मेरे पास एक डिक्टेटर ऐप है और एक्सेल के साथ बातचीत पर 100% नियंत्रण की आवश्यकता है।