[RESOLU] : Bouton radio en XML pour Excel (ruban)

pierre le grand

XLDnaute Nouveau
Bonjour à tous,

quelqu'un aurait-il déjà eu à définir un ruban excel en XML contenant des boutons radio ?

j'ai mis une liste dynamique, des cases à cocher, des boutons mais je n'ai pas trouver la commande me permettant de générer un ensemble de boutons radio.

Merci de venir à mon aide

Salutations.
 
Dernière édition:

PMO2

XLDnaute Accro
Re : Bouton radio en XML pour Excel (ruban)

Bonjour,

Essayez la démarche suivante

1) à l'aide de "Office 2007 Custom UI Editor" insérez le code XML suivant

Code:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="objRuban">
   <!-- Personnalisation du ruban pour boutons radio -->
  <ribbon startFromScratch="false">
    <tabs> 
      <tab id = "tab1" label="Perso" insertAfterMso="TabView">
        <group id="groupe1" >
          <button id="Button1" label="Radio1" 
              getImage="Button1_getImage"
              onAction="Button1_OnAction" size="normal" />
          <button id="Button2" label="Radio2"
              getImage="Button2_getImage"
              onAction="Button2_OnAction" size="normal" />
        </group>   
      </tab>
    </tabs>
  </ribbon>
</customUI>

2) dans un module standard du classeur, copiez le code suivant

Code:
Public Ruban As IRibbonUI
Public blnRadio(1 To 2) As Boolean

'Callback for customUI.onLoad
Sub objRuban(ribbon As IRibbonUI)
Set Ruban = ribbon
blnRadio(1) = True
Ruban.InvalidateControl "Button1"
End Sub

'Callback for Button1 getImage
Sub Button1_getImage(control As IRibbonControl, ByRef returnedVal)
If blnRadio(1) Then
  returnedVal = "ActiveXRadioButton"
Else
  returnedVal = "ShapeDonut"
End If
End Sub

'Callback for Button2 getImage
Sub Button2_getImage(control As IRibbonControl, ByRef returnedVal)
If blnRadio(2) Then
  returnedVal = "ActiveXRadioButton"
Else
  returnedVal = "ShapeDonut"
End If
End Sub


'Callback for Button1 onAction
Sub Button1_onAction(control As IRibbonControl)
blnRadio(1) = True
blnRadio(2) = False
Ruban.InvalidateControl "Button1"
Ruban.InvalidateControl "Button2"

'--- code de traitement ---

End Sub

'Callback for Button2 onAction
Sub Button2_onAction(control As IRibbonControl)
blnRadio(1) = False
blnRadio(2) = True
Ruban.InvalidateControl "Button1"
Ruban.InvalidateControl "Button2"

'--- code de traitement ---

End Sub

Un menu "Perso" apparaît avec 2 boutons simulant les boutons Radio.

Cordialement.

PMO
Patrick Morange
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote