Nasıl özel bir Şerit sekmesi VBA kullanarak eklemek için?
Bir şekilde birkaç tuşa taşıyacak şerite özel bir sekme eklemek için arıyorum. Bazı kaynaklar üzerinde Google üzerinden ele dolaşıyordum ama çok tehlikeli ve deli gibi karmaşıktır.
Bunu yapmak için hızlı ve basit bir yolu nedir ? Yeni sekme benim VBA Excel.. içine yüklendiğinde yüklü almak istiyorum
GÜNCELLEME: here Bu örnek de denedim ama bir "" hata son talimat : . gerekli nesne al
Public Sub AddHighlightRibbon()
Dim ribbonXml As String
ribbonXml = "<mso:customUI xmlns:mso=""http://schemas.microsoft.com/office/2009/07/customui"">"
ribbonXml = ribbonXml " <mso:ribbon>"
ribbonXml = ribbonXml " <mso:qat/>"
ribbonXml = ribbonXml " <mso:tabs>"
ribbonXml = ribbonXml " <mso:tab id=""highlightTab"" label=""Highlight"" insertBeforeQ=""mso:TabFormat"">"
ribbonXml = ribbonXml " <mso:group id=""testGroup"" label=""Test"" autoScale=""true"">"
ribbonXml = ribbonXml " <mso:button id=""highlightManualTasks"" label=""Toggle Manual Task Color"" "
ribbonXml = ribbonXml "imageMso=""DiagramTargetInsertClassic"" onAction=""ToggleManualTasksColor""/>"
ribbonXml = ribbonXml " </mso:group>"
ribbonXml = ribbonXml " </mso:tab>"
ribbonXml = ribbonXml " </mso:tabs>"
ribbonXml = ribbonXml " </mso:ribbon>"
ribbonXml = ribbonXml "</mso:customUI>"
ActiveProject.SetCustomUI (ribbonXml)
End Sub
CEVAP
AFAIK kullanamazsınız VBA Excel şerit üzerinde özel sekme oluşturmak için Excel. Ancak görünen şerit bir bileşen VBA kullanarak yapmak/gizleyebilirsiniz. Ayrıca, yukarıda bahsedilen bağlantı MS Excel, MS Proje.
Excel uygulamalarım için sekmeler oluşturmak/Eklenti bu ücretsiz programı Custom UI Editor adı kullanarak.
Edit: OP . tarafından yeni talebi karşılamak İçin
Öğretici
Söz verdiğim gibi işte kısa bir öğretici
Özel UI Düzenleyicisi (ÇİVİ) yükledikten sonra açın ve sonra Dosya üzerine tıklayın ve ilgili Excel Dosyasını seçin. Lütfen Excel Dosyası ÇİVİ ile açmadan önce kapalı olduğundan emin olun. Örnek olarak yeni bir çalışma sayfası kullanıyorum.
Sağ tıklayın ve aşağıdaki resimde gösterildiği gibi tıklayın "2007 Özel Bölüm, kullanıcı arayüzü Office". Ekle"" . customUI.xml
Menü Ekle ileri ' yi Örnek XML | Özel Sekme|. Temel kod otomatik olarak oluşturulan olduğunu fark edeceksiniz. Şimdi senin ihtiyaçlarına göre düzenlemek için hazırsınız.
Hadi kodu inceleyin
label="Custom Tab"
: "" sekmesini vermek istediğiniz adı ile. Özel Sekmesini Değiştirin O zaman bırakalım olmak için "Jerome".Aşağıda bir bölümünü özel bir düğme ekler.
<button id="customButton" label="Custom Button" imageMso="HappyFace" size="large" onAction="Callback" />
imageMso
: Bu düğme üzerinde görüntülenecek resim. "HappyFace" şu anda görürsünüz. You can download more image ID's here.onAction="Callback"
: "Geri" düğmesine bastığınızda çalışır usulün adıdır.
Demo
Hadi 2 düğmeler oluşturmak ve onları arayın "JG Düğme" ve "JG Düğmesi 2". 1 İlk defa resmi olarak mutlu yüz erteleyelim ve "saniye. Güneş kalsın Değiştirilmiş kodu gibi görünüyor:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab id="MyCustomTab" label="Jerome" insertAfterMso="TabView">
<group id="customGroup1" label="First Tab">
<button id="customButton1" label="JG Button 1" imageMso="HappyFace" size="large" onAction="Callback1" />
<button id="customButton2" label="JG Button 2" imageMso="PictureBrightnessGallery" size="large" onAction="Callback2" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
ÇİVİ üretilen ve daha sonra bunun yerine yukarıdaki kodu yapıştırın olan tüm kodu silin. ÇİVİ kaydedin ve kapatın. Şimdi Excel Dosyası açtığınızda, bu gibi görünecektir:
Şimdi kod parçası. Açık VBA Düzenleyicisi, bir modül ekleyin ve bu kodu yapıştırın:
Public Sub Callback1(control As IRibbonControl)
MsgBox "You pressed Happy Face"
End Sub
Public Sub Callback2(control As IRibbonControl)
MsgBox "You pressed the Sun"
End Sub
Excel makro etkin dosya olarak kaydedin. Şimdi sana Gülen ya da Güneş tıkladığınızda ilgili mesaj kutusunu göreceksiniz:
Bu yardımcı olur umarım!
Nasıl Açısal js bir form için özel doğ...
Nasıl her XML çağırmak için özel bir b...
Nasıl Kaldır (MSI) sadece olur WiX öze...
Nasıl kullanarak özel durum işleme içi...
Nasıl/güncelleme, bir HTML ve JavaScri...