質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Windows Forms

Windows Forms(WinForms)はMicrosoft .NET フレームワークに含まれる視覚的なアプリケーションのプログラミングインターフェイス(API)です。WinFormsは管理されているコードの既存のWindowsのAPIをラップすることで元のMicrosoft Windowsのインターフェイスのエレメントにアクセスすることができます。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

Q&A

0回答

4732閲覧

C# 「System.Runtime.InteropServices.COMException: 'ファイルにアクセスできませんでした。次のいずれかを確認してみてください:」が出ます

AIR11451481019

総合スコア9

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Windows Forms

Windows Forms(WinForms)はMicrosoft .NET フレームワークに含まれる視覚的なアプリケーションのプログラミングインターフェイス(API)です。WinFormsは管理されているコードの既存のWindowsのAPIをラップすることで元のMicrosoft Windowsのインターフェイスのエレメントにアクセスすることができます。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

0グッド

0クリップ

投稿2021/12/10 01:55

編集2021/12/10 02:43

使用環境はwindows10、Visual Studio2019(Windows Forms アプリ、.NET Framework、バージョン4.8)です。
こちらのサイトとほぼ同じコードを入力し「開始」を押しました。ですがthrow;の右に赤い×印が出て次のようなエラー?が出ます。

System.Runtime.InteropServices.COMException: 'ファイルにアクセスできませんでした。次のいずれかを確認してみてください: • 指定したフォルダーが存在することを確認します。 • ファイルが保存されているフォルダーが読み取り専用でないことを確認します。 • ファイル名とフォルダーのパスに次の文字が含まれていないことを確認します: < > ? [ ] : | * • ファイル名とフォルダーのパスが 218 文字以下になっていることを確認します。'

以下入力したコードです。解決方法を教えてください。

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Excel = Microsoft.Office.Interop.Excel; namespace _20211210 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Excel.Application excelApp = new Excel.Application(); Excel.Workbooks excelBooks = excelApp.Workbooks; Excel.Workbook excelBook = excelBooks.Add(); Excel.Worksheet sheet = excelApp.Worksheets["sheet1"]; try { excelApp.Visible = false; sheet.Cells[1, 1] = "名前"; excelBook.SaveAs("C:\test"); } catch { throw; } finally { excelApp.Quit(); System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet); System.Runtime.InteropServices.Marshal.ReleaseComObject(excelBook); System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp); } } } }

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/12/10 02:11

参考にした記事に書いてある「参照設定の追加」はやったのですか? そもそも Office がインストールしてなくて、それができないのでは?
退会済みユーザー

退会済みユーザー

2021/12/10 02:12 編集

(重複のため削除)
KOZ6.0

2021/12/10 03:18 編集

excelBook.SaveAs("C:\test"); ファイル名大丈夫ですか? C:\ に保存するのはお勧めできないので、フォルダを作って C:\test\test.xlsx とかにしたほうがよさそうです。
KOZ6.0

2021/12/10 04:19

あ、C# ですね。\t がタブになっちゃうので @を前につけるか \\ にしないと @"C:\test\test.xls" "C:\\test\\test.xls"
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問