Excelを開いてワークブックを開き、特定のワークシートをアクティブに設定する(ユーザーの入力に応じて)関数を作成しました。機能...メソッドCの変数from関数を使用する#
public void openExcel()
{
var excelObj = new Microsoft.Office.Interop.Excel.Application();
string fileName = @"C:\Users\" + userName + @"\Documents\Visual Studio 2015\Projects\ProgramForMom\ProgramForMom\bin\Debug\Excel Files\" + frm2.year.Text + " Expenses";
Workbook wb = excelObj.Workbooks.Open(fileName, 0, false, 5, "", "", false, XlPlatform.xlWindows, "", true, false, 0, true, false, false);
wb.Activate();
Microsoft.Office.Interop.Excel.Worksheet ws = wb.Worksheets[frm2.month.Text];
ws.Activate();
}
私は、ワークシートの範囲を選択したいと考えている別の方法を持っている...
var cellValue = ws.Range["A10"].Value2;
私は次のエラーを取得:
を"The name 'ws' does not exist in the current context"
私はこのmsdnページを見てみましたが、それを理解するのが難しかったです(私はプログラミングに慣れていません) - https://msdn.microsoft.com/en-us/library/ms173114.aspx
私は約5種類の方法があります(ユーザーがWindowsフォームの異なるボタンをクリックしたときに基づいています)。同じ方法でExcelを開きたいが、それぞれ異なる方法を選びます。 5回書き直す以外にこれを行う方法はありますか?
ご協力いただければ幸いです。
あなたは '文字列filename = System.IO.Pathにファイル名を簡素化することができます.GetFullPath(@ "Excel Files \" + frm2.year.Text + "Expenses"); ' – Slai
@Slaiありがとう!私は別のコンピュータでそれを使用する方法を見つけ出したいと思っていました。あなたの提案は私のものよりずっと優れています。それは有り難いです。 – Michael