我继承了一个VB6应用程序,它可以启动Excel,打开工作簿,并在间隔时间内运行宏。此宏通过其参数返回值。在尝试使用互操作将其转换为C#时,我可以成功地运行宏,但这些参数值不会被返回。
下面的代码中是否缺少或不正确,还是根本不支持?
VBA宏:
Sub Foo(bar As Long)
bar = 5
End Sub
C#代码:
void CallFoo()
{
// Declared as an object to avoid losing the value in auto-boxing
// The result is the same if declared a
我有一个C#控制台应用程序。我现在有一个运行应用程序的计划任务设置,它提供了两个命令行参数,如下所示。
/AUTORUN FALSE /INTRADAY FALSE
我想知道的是,是否可以让一个Excel运行C#控制台应用程序并传递命令行参数?例如,excel电子表格包含一个按钮,单击该按钮将启动我的C#控制台应用程序?
更新
我正在使用下面的代码。控制台应用程序加载,但它确实读取了我的命令行的争论。
Sub TestConsole()
Dim id As Integer
id = Shell("""C:\Shared\Blah\Visual Studio\My
我想用c#编写简单的宏,更清楚的是,我只想在测试时保存一些类型(但希望使用代码片段,因为它们不会节省空间)。希望将保留关键字替换为c++中的较短单词示例(返回和):
#define r return
int foo(int i, int c){ r (i + c); }
因此,关键是要节省同样的空间和输入,在c#中是否存在类似的东西?
我安装了以下用于Word 2016的代码,引用Microsoft Word 16.0 Object Library
private void RefreshFootnoteNumbering(FileManagement.FileManager FileManager)
{
Console.WriteLine(DateTime.Now.ToString() + " Refreshing footnotes DOCX");
// Opening and saving in word generates the required element
var W