プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。
C#を勉強中ですが、既存エクセルの起動及び停止。又は新規エクセルの
起動はわかったのですが、処理後の名前をつけて保存方法がわかりません。
いろいろやってみたのですが***はコンテキスト内に存在しませんと
エラーになります。どこが悪いのでしょうか教えてください。
Workbook.SaveAs("c:\\Lot\\AA\\51.xls", Type.Missing, Type.Missing, Excel.XlFileFormat.xlXMLSpreadsheet,Type.Missing,Type.Missing,false,false, Excel.XlSaveAsAccessMode.xlNoChange,Type.Missing,Type.Missing,Type.Missing);
上記のようにcドライブ直下のLotのフォルダーに保存を行いたいのですが書き方を変更すると、usingに足りないものがあると別のエラーが出ます。
併せてよろしくお願いします。

A 回答 (4件)

n-junです。




一応こちらの環境ですが、
Visual C# 2005 EE + Excel2002
です。
    • good
    • 0

n-junです。



Excel.Application xlapp;
Excel._Workbook xlwb;
Excel.Workbooks xlwbs;

 {
   xlapp = new Excel.Application();
   xlapp.Visible = true;
   xlwbs = xlapp.Workbooks;
   xlwb = xlwbs.Add(Type.Missing);

   xlwb.SaveAs("W:\\abc.xls", Excel.XlFileFormat.xlXMLSpreadsheet, Type.Missing,
         Type.Missing, Type.Missing, Type.Missing,
         Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing,
         Type.Missing, Type.Missing,Type.Missing);

   xlapp.Quit();
 }


>Excel.XlFileFormat.xlXMLSpreadsheet
の位置を変えてやってみたら保存できました。
    • good
    • 0
この回答へのお礼

何度もありがとうございます
データが入ってるのは会社のpcでなので今は何も出来ませんし、明日は出張で外出します。
月曜日に確認いたしますので、結果又メールします。

お礼日時:2009/04/16 23:04

n-junです。



ExcelVBAのSaveAs メソッドのヘルプと、
【Visual C# 2005 または Visual C# .NET を使用してデータを Excel ブックに転送する方法】
http://support.microsoft.com/kb/306023/ja

を見て感じたのですが、
>Excel.XlSaveAsAccessMode.xlNoChange
より前で特に
>Type.Missing,false,false,
false×2個の分だけ多い感じがするのですが、C#的にはOKなのでしょうか?

やっぱ的はずれですかね。(C++は挫折しましたし)
    • good
    • 0
この回答へのお礼

いや~
的はずれではないと思いますよ
私もそこは見ましたし、同じように書きましたが駄目でした。
今は何がどう悪いのか全然・・さっぱりです。
多分ちょっとした事なんだと思うのですが、そのちょっとした所が全然思い浮かばなくて。
何度も有り難うございます

お礼日時:2009/04/16 15:36

C#は未経験なので違ったらごめんなさい。



>Workbook.SaveAs
Workbookは宣言されているものならいい(のかな?)
そうでなければExcelならわかってくれると思いますが、C#はわからないのかも。

VB2005なら
Dim xlwb As Excel.Workbook = xlApp.Workbooks.Open(~
と宣言して
xlwb.SaveAs(~
としてましたものですから。
    • good
    • 0
この回答へのお礼

有り難うございます
私もVBでは保存(ちょっと違いますがn-jun様と考え方は同じ)を行っていますので、分かりますが、C#はちょっと違うようで、C++のプログラミングをまねても駄目でした、どこか違うのだと思うのですがそれが分からないため、今既に保存をしている方の意見が又はそのものを頂きたいのです。

お礼日時:2009/04/16 09:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!