2021/09/24 #クリップボードの数値の合計

皆様おはようございます、

#猫でもできるPowerShell(備忘録)

#クリップボードの数値の合計

<# 元ネタ

https://www.atmarkit.co.jp/ait/articles/0607/26/news118_3.html

#>

Add-Type -AssemblyName System.Windows.Forms

Add-Type -AssemblyName System.Drawing

 

$Form = New-Object System.Windows.Forms.Form

$Form.Size = New-Object System.Drawing.Size(400,200)

$Form.StartPosition = "CenterScreen"

$Form.Text = "コントロール配置テスト"

 

$button = New-Object System.Windows.Forms.Button

$button.Location = New-Object System.Drawing.Point(180,10)

$button.Size = New-Object System.Drawing.Size(150,25)

$button.Text = "クリップボードの合計"

$button.add_Click({

$label.Text = "(gcb |measure -sum).sum |scb |gcb";

$textbox0.text= (iex $label.Text)

$textbox1.text= gcb

})

 

$label = New-Object System.Windows.Forms.Label

$label.Location = New-Object System.Drawing.Point(10, 50)

$label.Size = New-Object System.Drawing.Size(240,20)

 

$textBox0 = New-Object System.Windows.Forms.TextBox

$textBox0.Location = New-Object System.Drawing.Point(10,70)

$textBox0.Size = New-Object System.Drawing.Size(180,40)

$textBox0.Multiline = $true

 

$textBox1 = New-Object System.Windows.Forms.TextBox

$textBox1.Location = New-Object System.Drawing.Point(10,120)

$textBox1.Size = New-Object System.Drawing.Size(180,20)

 

$CTLs = @($button,$label,$textBox0,$textBox1)

$form.Controls.AddRange($CTLs)

#[System.Windows.Forms.Application]::Run($form)

$Form.ShowDialog()

 

#実行結果

#表計算ソフトで 1~5の数をコピー(配列扱い)

f:id:TPTPTb:20210925000058p:plain

#スクリプトを実行し、合計ボタンを押す

f:id:TPTPTb:20210925000210p:plain

 

表計算ソフト上の数値データを集計して別ファイルに転記するというタスクが生じましたが、集計元のデータが未整理(ワークシート上で一定のルールで記載されていない)であった為、どさくさまぎれに仕上げた作品

なお数値が縦でなく横に並んでいる場合、コピーしても配列として認識されずにエラーになってしまうようです

ワークシートのデータを整理するのが先のような気もしますが、まあ良しとしましょう、、

ではまた;