0
私はC#2に変換しようとしているExcelのマクロを持っていますが、私はこの部分変換する方法を知らないのマクロエクセル:私はいくつかの方法を試してみました同等のC#
Dim Files As Variant
Dim glos As Integer
Dim Sheet1 As Object
Dim Un As Workbook
Files = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 2, "Open Files", , True)
If IsArray(Files) Then
'Something with some data
For y = LBound(Files) To UBound(Files)
Workbooks.Open Files(y)
b = ActiveWorkbook.Name
glos = glos + 1
For Each Sheet1 In ActiveWorkbook.Sheets
Sheet1.Copy after:= Un.Sheets(Un.Sheets.Count)
Next
Workbooks(b).Close False
Next
End IF
を、しかしdoesnの「トンの仕事、よく私はC#で、これまでにこれを持っている:
var excelApp = new Excel.Application();
Excel.Workbook oWB = excelApp.Workbooks.Add(Type.Missing);
dynamic Files = oWb.Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 2, "Select Files", Type.Missing, true);
if (Files is Array)
{
//Something with some data
Array ar = (Array)((object)Files);
for(int y = ar.GetLowerBound(1); y < ar.GetUpperBound(1); y++)
{
oWB.Application.Workbooks.Open(ar[y]);
b = excelApp.ActiveWorkbook.Name;
glos += 1;
foreach(Excel.Sheets Sheet1 in excelApp.ActiveWorkbook.Sheets)
{
Sheet1.Copy(After: Un.Sheets[Un.Sheets.Count]);
}
ExcelApp.Workbooks[b].Close(false);
}
}
私はC#に私の仕事で使ういくつかのマクロを翻訳自分のスキルを向上しようとしているが、私はこの1つで動けなく、申し訳ありません悪い英語、私はまだ言語を学んでいます。
ありがとうございます。
を使用して対処することができるが、問題文のではありません。エラーメッセージが表示されますか?彼らは何ですか?これらのエラーメッセージが表示されるのはどのコードですか? –
ええ、そうです、申し訳ありませんが、コードエラーが発生します。「[配列]型の式にindenxingを適用できません」 – MeLop
どのコード行ですか? –