-1

次のような列とデータ値を持つTest.CSVというcsvファイルがあります

列 A には T1、T2、T2、T1 のような値があります 列 B には P1、P2、P2、P1 のような値があります

ここで、T1、T2、P1、P2 を新しい Excel シートにダンプしたいのですが、Test.CSV に存在する T1/T2 の数と P1/P2 の A と B の数をそれぞれチェック/フィルタリングした後、新しいファイル Test2 が作成されるようにします。一度保存されたxlsxは次のようになります

T1=2、P1=2、T2=2、P2=2

また、新しい Excel シートの T1/T2/P1/P2 の列名を T1-New/P1-New などに変更したい場合はお知らせください。ダンプ プロセス中に可能ですか?

これで何か助けていただければ幸いです

4

1 に答える 1

0

コマンドレットを使用してGroup-Object、CSV 列の値をカウントできます。

$csv = Import-Csv 'C:\path\to\Test.CSV'

$colA = $csv | Group-Object 'A' | select Name, Count
$colB = $csv | Group-Object 'B' | select Name, Count

name=count ペアを Excel シートに挿入するサンプル コード:

$xl = New-Object -COM 'Excel.Application'
$xl.Visible = $true

$wb = $xl.Workbooks.Add()

$val = "{0}={1}" - f $colA[0].Name, $colA[0].Count
$wb.Sheets.Item(1).Cells.Item(1, 1).Value = $val

$wb.SaveAs("C:\path\to\Test2.xlsx")
$wb.Close()

$xl.Quit()
于 2013-10-12T18:34:13.683 に答える