SORU
13 Ocak 2012, Cuma


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
13 Ocak 2012, Cuma


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

  1. Ö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.

    enter image description here

  2. 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

    enter image description here

  3. 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.

    enter image description here

  4. Hadi kodu inceleyin

    enter image description here

    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:

enter image description here

Ş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:

enter image description here

Bu yardımcı olur umarım!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ODN

    ODN

    26 Kasım 2006
  • Rickymon Tero

    Rickymon Ter

    1 Ocak 2007
  • TokShogun

    TokShogun

    6 HAZİRAN 2009