2016-09-28 19 views
0

おはようございますすべてみんな複数のtsvファイルを1つのcsvファイルに変換する

私は非常にこれから少し深いところです。私は、PowerShellでいくつかのことを行うことが可能かどうか(あるいはそうでない場合は何がこれを行うのか)について疑問を抱いていました。

私は1つ以上の(最大7つの私は信じて)TSVファイルが添付された1日にいくつかの電子メールを受信します。 Outlook拡張プロセスでは、これらの添付ファイルを削除し、「処理するtsvファイル」というフォルダにドロップします。各ファイルには既に一意のファイル名があるため、ファイルを上書きすることはありません。

重要な場合は、TSVファイルに数千のカンマ(4,000)で区切られた数字が含まれていることを言及する必要があります。

これらのTSVファイルはすべて、1日の終わりに固定ファイル名で「出力csvファイル」と呼ばれる別のディレクトリに送信され、インポートすることができる単一のcsvファイルにマージする必要があります。

処理後、TSVファイルは複数回処理されないように、アーカイブディレクトリにシャントされる必要があります。このために、 "archive tsv files"というフォルダを作成しました。

"output csv file"ディレクトリ内でファイルを1日1回処理するので、理想的にはこのファイルを「出力csvファイルアーカイブ」と呼ばれる別のディレクトリに移動したいと思います(ご覧のとおり私たちはフォルダの命名に多くの時間を費やしました)。この時点で、ファイル名outputcsvに日付を追加して、それをoutputcsv280916(今日)にするか、またはこれが容易であれば段階的に増やします(例えば、outputcsv1、outputcsv2など)。

これは本当に初心者の質問ですが、私は本当にこれで新しいので、忍耐してください。

多くのおかげ

ポール基本的に

+1

これには別々の質問がたくさんあります。私は個々の部分に分解し、以前の質問やオンラインチュートリアルを見て何かをまとめて、そこに戻ってくる必要があると思いますあなたが執着している特定のものです。まず、「VBAオープンtsvファイル」を探し、「tsvファイルの内容を新しいワークブックに移動」し、最後に「ワークブックをCSVファイルとしてCSVファイルに保存する」と考えます。残りはあなたがそこから解決できる小さなものです – Gallus

+0

Gallus、「VBAオープンtsvファイル」のクイック検索を実行しても何も返されませんが、私はこれを試してみます。質問のいくつかのバリエーションを試してみました。 ODBC QとAを介して –

+0

これは、ステップ1に進む必要がある行の一種です:http://stackoverflow.com/questions/19966526/vba-to-open-excel-file-and-paste-sheet-1-data-into- rrimport-sheet-in-current-wでは、スクリプトのビットを1つのサブファイルにまとめて、フォルダ内の各ファイルを開き、内容を新しいブックにコピーし、そのブックを保存します。スクリプトをまとめたら、そこに問題がある場合に戻ってください。人々はそれを改善するのに役立ちます。私たちは最初からスクリプトを書くことはできません – Gallus

答えて

0

、インポート、CSVエクスポート-CSVを使用します。

if (Test-Path 'out.csv') { del 'out.csv' } 
dir '*.tsv' | ForEach { 
    Import-Csv $_ -Delimiter "`t" | Export-Csv 'out.csv' -Append -NoTypeInformation 
    move $_ 'archive tsv files' 
} 

ファイルが大きい場合、テキストとして直接読み込んでタブ文字を置き換えるよりも処理が遅くなりますが、それは別の質問です。

+0

おはようございます、約40行のコードで完成した人の助けを借りて、私はPowerShellスクリプトコースでErnestを探し始めました。 –

関連する問題