2010-11-16 32 views
2

J'ai un programme Winforms C# qui ouvre un document Excel avec le code ci-dessous. Cela fonctionne très bien, mais ce que je n'arrive pas à comprendre, c'est de désactiver TOUS les menus et barres d'outils.Code C# pour Masquer les barres d'outils dans un document Excel

La version Excel que j'utilise actuellement est 2003 ... Mais je vais passer à 2010 dans un proche avenir. Des idées?

//top of source... 
using Excel = Microsoft.Office.Interop.Excel; 

// Code inside a function... 

// Get report and display it on the screen. 
Excel.Application xlApp; 
Excel.Workbook xlWorkBook; 
Excel.Worksheet xlWorkSheet; 
object misValue = System.Reflection.Missing.Value; 
xlApp = new Excel.ApplicationClass(); 

xlWorkBook = xlApp.Workbooks.Open(strFileName, 0, true, 5, "", "", true,Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); 
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); 
xlApp.Visible = true; 
xlApp.DisplayFullScreen = true; 

// Display the Document and then Sleep. 
System.Threading.Thread.Sleep(timeToShowMilliseconds); 

// Close the Excel report 
xlWorkBook.Close(false, misValue, misValue); 
xlApp.Quit(); 

releaseObject(xlWorkSheet); 
releaseObject(xlWorkBook); 
releaseObject(xlApp); 

Répondre

0

que je cherchais dans votre cas et je pense avec Excel.Application vous pouvez trouver la réponse.

Apparemment, ce que vous devez faire est quelque chose comme ceci:

Excel.Application xlApp; 
xlApp.CommandBars("tabName").Controls("File").Enabled = false; 

essayer et laissez-moi savoir, si cela ne fonctionne pas, nous allons trouver quelque chose.

+0

Lorsque j'utilise xlApp.CommandBars ("Barre de menus de feuille de calcul"). Enabled = False; code, j'obtiens une erreur ... Le membre non invocable 'Microsoft.Office.Interop.Excel._Application.CommandBars' ne peut pas être utilisé comme une méthode. et si je le change en ... xlApp.CommandBars ["Barre de menu Worksheet"]. Enabled = False; Impossible d'appliquer l'indexation avec [] à l'expression de type 'Microsoft.Office.Core.CommandBars' – Mouglue

+0

J'ai testé en désactivant ('Enabled = false') toutes les barres de la barre de Commandes, mais cela n'a aucun effet. Malgré la valeur est correctement appliquée. –