異なる複数の.txtファイルの内容(実質的にすべての.txtファイルの内容を1つのフォルダに保存)をExcel 2010に挿入する方法はありますか? 1つのセル(A1)がファイルの名前であり、もう1つのセル(A2)がその.txtファイルの内容全体である必要があります。他の.txtファイル(B1-B2、C1-C2など)でも同じです。複数の.txtファイルの内容をExcel 2010に挿入
ありがとうございます。
異なる複数の.txtファイルの内容(実質的にすべての.txtファイルの内容を1つのフォルダに保存)をExcel 2010に挿入する方法はありますか? 1つのセル(A1)がファイルの名前であり、もう1つのセル(A2)がその.txtファイルの内容全体である必要があります。他の.txtファイル(B1-B2、C1-C2など)でも同じです。複数の.txtファイルの内容をExcel 2010に挿入
ありがとうございます。
CSVが許容される場合は、指定したディレクトリ内のすべてのテキストファイルを読み込むと、CSV形式で必要なデータを書き出すために小さなプログラムを書くことができます:あなたはCSVでを開くと
"File Name 1","Contents of File 1"
"File Name 2","Contents of File 2"
をExcelの場合、指定したとおりにデータが表示されます。
実際のExcelファイル(.xls、.xlsx)が必要な場合は、Interopを使用してC#からExcelライブラリにアクセスできますが、このソリューションはやや複雑です。
http://msdn.microsoft.com/en-us/library/ms173186(v=vs.80).aspx
あなたは、各ファイルの内容を読み取るために任意のフォルダ内のファイル名のすべて、およびFile.ReadAllText
を一覧表示するDirectory.EnumerateFiles
を使用することができます。
CSVファイルを扱うとき、出力の適切な引用の周りにいくつかのニュアンスがあります(私の答えの最初にWikipediaのリンクを見てください)。私は適切に引用された出力やすくするために少しextension methodを書いたCSV:
static public class Extensions
{
static public string CsvQuote(this string text)
{
if (text == null)
{
return string.Empty;
}
bool containsQuote = false;
bool containsComma = false;
int len = text.Length;
for (int i = 0; i < len && (containsComma == false || containsQuote == false); i++)
{
char ch = text[i];
if (ch == '"')
{
containsQuote = true;
}
else if (ch == ',')
{
containsComma = true;
}
}
bool mustQuote = containsComma || containsQuote;
if (containsQuote)
{
text = text.Replace("\"", "\"\"");
}
if (mustQuote)
{
return "\"" + text + "\""; // Quote the cell and replace embedded quotes with double-quote
}
else
{
return text;
}
}
}
EDIT:
(デバッグではないか何か)私の頭の上オフ、コードが見ることができるCSVを書き出しますこのような何か:
Yeap、.csvが受け入れられるので、私はおそらくそれをやります。すなわち、すべてのファイル名とその内容を.csvファイルに入れます。とにかく、どうしたらいいのか詳しく教えてもらえますか? :)私はこれに新しいので、簡単な説明は完璧だろう。前もって感謝します。 –
ファイルを反復処理するためのサンプルコードが追加されました。必要に応じてデバッグして変更する必要があります。 –
は[こちら](http://stackoverflow.com/questions/4937664/can-i-import-multiple-text-files-into-one-excel-sheet)を見てみましょう – Raystafarian