Используя программу на C #, мне нужно нажать кнопку «Button1», которая запускает макрос, и далее появляется диалоговое окно, которое снова требует нажатия кнопки «Button_OK».
Кроме того, выполнение остается в рабочем состоянии до тех пор, пока не будет нажата кнопка Button_OK.
Ниже приведен код:
Excel.Application app = new Excel.Application();
app.AutomationSecurity = Microsoft.Office.Core.MsoAutomationSecurity.msoAutomationSecurityLow;
;
// Make the excel visible
app.Visible = true;
Excel.Workbook wb = app.Workbooks.Open("<PATH>\\Downloads\\Edited\\UpdatedAgain23\\Again\\<FILENAME>.xlsm", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
Excel.Worksheet ws = wb.Worksheets["SHEETN"] as Excel.Worksheet;
ws.Select();
if (wb.HasVBProject) // Has macros
{
try
{
try
{
// Show "Microsoft Excel Security Notice" prompt
var project = wb.VBProject;
}
catch (System.Runtime.InteropServices.COMException comex)
{
Console.Write("Catch 1");
// Macro is enabled.
app.Run("<FILENAME>.xlsm!MacroName");
Console.Write("Catch 2");
app.Run("formname: Button_Click");
Console.Write("Catch 3");
Console.Write("\nThrown");
wb.SaveAs("<FILEPATH>\\Downloads\\Edited\\UpdatedAgain23\\Again\\AndAgain\\<FILENAME>.xlsm", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
throw;
}
}
catch (System.Exception expn)
{
return;
}
Кроме того, нажатие кнопки Button_OK запускает некоторую загрузку данных, котораянеобходимо для редактирования Excel программно, и мне нужно сохранить это также