none
Crear nuevo Ribbon por codigo vba para msproject RRS feed

  • Pregunta

  • Hola,

    Tenemos un problema al intentar crear una nueva pestaña de botones (msproject) por codigo vba.

    Antes de actualizar a la version 2015 nos funcionaba correctamente, pero ahora al acceder a la pestaña se queda colgada...

    Os copio el codigo fuente:

    Public Sub AddPmoRibbon()
        Dim pmoRibbon As String
        
        pmoRibbon = "<mso:customUI xmlns:mso='http://schemas.microsoft.com/office/2009/07/customui'>"
        pmoRibbon = pmoRibbon + "<mso:ribbon>"
        pmoRibbon = pmoRibbon + "    <mso:qat/>"
        pmoRibbon = pmoRibbon + "    <mso:tabs>"
        pmoRibbon = pmoRibbon + "        <mso:tab id='pmotab' label='PMO' insertBeforeQ='mso:TabFormat'>"
        
        pmoRibbon = pmoRibbon + "            <mso:group id='JIRAgroup' label='INTEGRACIÓN CON JIRA' autoScale='true'>"
        
        pmoRibbon = pmoRibbon + "                <mso:button id='MSP2JIRA' label='Enviar MS Project a JIRA'"
        'pmoRibbon = pmoRibbon + "                    imageMso='TableSetLeftToRight' onAction='msp2jira'/>"
        pmoRibbon = pmoRibbon + "                    imageMso = 'ExportSharePointList' size='large' onAction='msp2jira'/>"
        
        pmoRibbon = pmoRibbon + "                <mso:button id='JIRA2MSP' label='Actualizar trabajo desde JIRA'"
        pmoRibbon = pmoRibbon + "                    imageMso = 'ImportSharePointList' size='large' onAction='jira2msp'/>"
        pmoRibbon = pmoRibbon + "            </mso:group>"
        
        pmoRibbon = pmoRibbon + "            <mso:group id='utilsGroup1' label='UTILIDADES' autoScale='true'>"
        
        pmoRibbon = pmoRibbon + "                <mso:button id='logout' label='Logout en JIRA'"
        pmoRibbon = pmoRibbon + "                    imageMso='StopLeftToRight' onAction='LogOutJIRA'/>"

        
        pmoRibbon = pmoRibbon + "                <mso:button id='PreFlight' label='Validar Proyecto'"
        pmoRibbon = pmoRibbon + "                    imageMso='CitationInsert' onAction='validateProjectMsg'/>"

        pmoRibbon = pmoRibbon + "                <mso:button id='identificar' label='Identificar Proyecto'"
        pmoRibbon = pmoRibbon + "                    imageMso='FileManageMenu' onAction='showIdentificacion'/>"

        pmoRibbon = pmoRibbon + "                <mso:button id='Reset' label='Resetear Sincronización'"
        pmoRibbon = pmoRibbon + "                    imageMso='FileNew' onAction='Reset'/>"
        pmoRibbon = pmoRibbon + "            </mso:group>"
        
        pmoRibbon = pmoRibbon + "            <mso:group id='exportGroup' label='EXPORTAR' autoScale='true'>"
        pmoRibbon = pmoRibbon + "                <mso:button id='showConfiguration' label='Configurar parámetros de exportación'"
        pmoRibbon = pmoRibbon + "                    imageMso='FilePrepareMenu' onAction='showConfiguration'/>"
        
        pmoRibbon = pmoRibbon + "                <mso:button id='ExportToHTML' label='Exportar Alcance como Html'"
        pmoRibbon = pmoRibbon + "                    imageMso='FilePublishAsWebPage' onAction='ExportToHtml'/>"
        
        pmoRibbon = pmoRibbon + "                <mso:button id='ExportToXML' label='Exportar Alcance como Xml'"
        pmoRibbon = pmoRibbon + "                    imageMso='XmlExport' onAction='ExportToXml'/>"
        
        pmoRibbon = pmoRibbon + "                <mso:button id='CopyToClipboard' label='Copiar Alcance al Portapapeles'"
        pmoRibbon = pmoRibbon + "                    imageMso='ExportWord' onAction='CopyToClipboard'/>"
        pmoRibbon = pmoRibbon + "            </mso:group>"
        
        pmoRibbon = pmoRibbon + "      </mso:tab>"
        pmoRibbon = pmoRibbon + "    </mso:tabs>"
        pmoRibbon = pmoRibbon + "  </mso:ribbon>"
        pmoRibbon = pmoRibbon + "</mso:customUI>"
        
        ActiveProject.SetCustomUI (pmoRibbon)
    End Sub

    Debe de ser algun problema en el codigo que ahora no es compatible con la nueva version 2015, y si lo era en anteriores.

    Hemos intentado crear la pestaña a mano y luego exportarla para ver el formato que se obtenia y hemos visto que es exactamente tal y como lo escribimos por codigo.

    ¿Alguna sugerencia?

    Muchas gracias

    Saludos

    viernes, 20 de noviembre de 2015 9:58

Todas las respuestas

  • Hola!

    yo de ribbons nada y de Project menos, pero observo que utilizas el símbolo mas (+) para concatenar en lugar de el ampersand (&) y eso no puede traer nada bueno.


    Saludos a todos desde Huelva Emilio http://www.mvp-access.es/emilio/

    domingo, 22 de noviembre de 2015 15:46
  • Hola Emilio,

    Ya hemos modificado los + por &. Seguimos con el mismo problema.

    Muchas gracias por contestar

    Saludos

    lunes, 23 de noviembre de 2015 8:45
  • Hola

    ¿Probaste a ver que te genera la variable proRibbon? hacer un Debug.print del mismo y verificar sí se ha construido correctamente el xml.

    Salu2,


    José Mª Fueyo [MS MVP Access]

    lunes, 23 de noviembre de 2015 12:08
  • Si, el contenido de la variable es correcto.

    Si genero a mano una nueva pestaña y la exporto la plantilla es exactamente igual.

    Algo ocurre con esta nueva version, ¿puede que ya no sea correcto llamar desde project 2015 a este link ?<mso:customUI xmlns:mso='http://schemas.microsoft.com/office/2009/07/customui'>

    martes, 24 de noviembre de 2015 8:16
  • Hola

    Pues no te sabría decir, pero lo que he visto buscando es esto:

    https://msdn.microsoft.com/en-us/library/aa942866(v=vs.120).aspx

    Una cosa, hablas siempre de Project 2015 ¿no será 2016?



    José Mª Fueyo [MS MVP Access]

    martes, 24 de noviembre de 2015 16:52
  • Implementa la pestaña desde el Custom UI Editor y no desde código VBA...

    Accede al XML del archivo y vincula los procedimientos a cada control añadido en la cinta de opciones o Ribbon.

    ---

    Por otro lado, prueba hacer esto...

    Cambia esto:

    "<mso:customUI xmlns:mso='http://schemas.microsoft.com/office/2009/07/customui'>"

    Por esto:

    "<mso:customUI xmlns:mso='http://schemas.microsoft.com/office/2006/01/customui'>"

    Saludos...


    Cordialmente, Andres Rojas Moncada

    miércoles, 6 de enero de 2016 15:00