2015-11-18

PowerShellでビープ音を鳴らす

完成されたソフトウェアを使用しているときに、エラーの場合や、クリックできない部分をクリックした場合等に「ピッ」とか「プッ」と音が鳴る時があります。

この音のことを「ビープ音」とか「警告音」とか言うそうです。

今回はこのビープ音をPowerShellから鳴らして、ドレミを奏でてみます。

早速スクリプトを記述します。
 [Console]::Beep(262, 500) #ド
 [Console]::Beep(294, 500) #レ
 [Console]::Beep(330, 500) #ミ
 [Console]::Beep(349, 500) #ファ
 [Console]::Beep(392, 500) #ソ
 [Console]::Beep(440, 500) #ラ
 [Console]::Beep(494, 500) #シ
 [Console]::Beep(523, 999) #ド

上記内容をコピーし、PowerShell ISEに貼り付けて、実行してみてください。
※音量に十分注意して実行してください!!

PowerShellで詳細プロパティの値を取得する

あるファイルを右クリックしプロパティを表示させると、そのファイルの情報(サイズや作成日時、更新日時など)を確認することができます。

Get-ChildItemコマンドレットを使用すれば、そのプロパティ情報を取得することができます。
$Sample = Get-ChildItem -Path "C:\PowerShell\サンプル.xlsx"

#ファイルサイズ
$Sample.Length

#更新日時
$Sample.LastWriteTime
上記以外にも、「$Sample.DirectoryName」でそのファイルが格納されているフォルダのパス、「$Sample.LastAccessTime」でアクセス日時を取得することができます。
その他については、「$Sample.」のタブ補完でご確認ください。


今回の本題はここからです。

2015-11-14

PowerShellでユーザーフォームを作る - リストビュー編 -

 PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

今回は「PowerShellでユーザーフォームを作る - リストビュー編 -」です。

リストビューは、以前ご紹介したリストボックスとは異なり、表示方法を指定できること、詳細表示を指定すれば、サブ項目まで表示させることができます。

今回のリストビューでは、詳細表示を取り上げていきますので、予めご了承ください。

<今回の完成品>


それではスクリプトを記述します。

[PowerShell] 右クリックイベントを設定する

今回は、PowerShellで独自にフォームを作成した際、右クリックイベントを設定する方法(記述方法)についてご紹介したいと思います。

クリックイベントやダブルクリックイベントの記述方法は下記リンク先の記事をご覧ください。

  参照 → [PowerShell] イベントの記述方法



早速スクリプトを記述します。
なお、今回は該当部分のみを詳細に記述し、フォーム部分やボタン部分の記述は省略していますのでご注意ください。

2015-11-06

[PowerShell] フォームにメニューバーを付ける

PowerShellで作成したフォームにメニューバーを付ける方法をご紹介します。

メニューバーは大多数のソフトウェアで使用されています。
メモ帳でも、フォルダでも、Google Chromeでも、Excelでもです。

メニューバーを付けることによって、フォーム内に入りきれない情報や機能を盛り込むことができるようになります。

自分で作ったフォームにもメニューバーを設置して、さらに使い勝手を良くしていきましょう!!


<今回の完成品>


画像の中で「項目1」「項目2」となっている部分がメニューバーです。
それぞれの項目内には、さらに小分類を設置することができます。

それではスクリプトを記述します。

2015-11-03

PowerShellでストップウォッチを自作する

今回は、PowerShellから.NET FrameworkのStopWatchクラスとTimerクラスを使用して、オリジナルのストップウォッチを作成します。

<今回の完成品>


できるだけシンプルなものにしています。
開始ボタンを押すと測定が始まり、もう一度押すと測定を停止します。
測定を停止するとリセットボタンが押下可能となり、それを押すと経過時間をリセットします。

それではスクリプトを記述します。

2015-09-23

[PowerShell] ツールチップを使用する

今回はPowerShellでツールチップを使用するときの記述方法をご紹介します。

「ツールチップ」とは"カーソル(主にマウスポインタ)と連動して使用される。ユーザがカーソルを何かの項目に合わせたとき、その項目に覆いかぶさるような形で小さな枠が出現し、その枠内には選択された項目に関する補足情報が表示される。"とWikipediaには書かれています。

要するに下の写真のようなものです。

<今回の完成品>


この写真の「タイトル 表示させる文字列」の部分がツールチップです。
(これが「ツールチップ」という名称だということは私も最近知りました。)

今回の完成品では、ボタンAにマウスカーソルを合わせる(乗せる)と、ツールチップが表示されるようになっています。

それでは、スクリプトを記述します。

2015-09-21

[PowerShell] イベントの記述方法

これまで様々なフォームの作成方法をご紹介してきました。
しかし、さらに便利なフォームにしてくには、ボタン等へのイベントを組み込むことが必要です。

そこで今回は、イベントの中でも最もオーソドックな「クリックイベント」と「ダブルクリックイベント」の記述方法をご紹介いたします。

フォームの使用感はイベントによって大きく変わってきますので、ぜひ覚えていきましょう!

<今回の完成品>


上記のフォーム上にある「ボタンA」をクリックすると次のメッセージが表示され、


さらにラベル「この文字列をダブルクリック」部分をダブルクリックすると、次のメッセージが表示されます。


それでは、スクリプトを記述します。

2015-09-12

PowerShellでユーザーフォームを作る - スクロールバー編 -

 PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

今回は「PowerShellでユーザーフォームを作る - スクロールバー編 -」です。

 スクロールバーは、下限・上限で範囲の決まっている値を変化させる際によく用いられるものです。

<今回の完成品>


バーを動かすと、0~100の間で数値が増減します。




それでは、スクリプトを記述します。

2015-08-04

PowerShellでユーザーフォームを作る - DatetimePickerコントロール編 -

 PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

今回は「PowerShellでユーザーフォームを作る - DatetimePickerコントロール編 -」です。

前回ご紹介したNumericUpDownコントロールは「数値」を増減させるものでしたが、今回ご紹介するのは「日付/時間」を増減させるものです。


<今回の完成品>


この中の展開ボタンを押すと次のように表示されます。


カレンダーが表示され、任意の日付を選択できるようになります。

それでは、スクリプトを記述します。

PowerShellでユーザーフォームを作る - NumericUpDownコントロール編 -

 PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

今回は「PowerShellでユーザーフォームを作る - NumericUpDownコントロール編 -」です。


タイトルを見て、「NumericUpDownコントロール??なにそれ?おいしいの??」と思ったそこのアナタ!!
ご意見はごもっともです。

NumericUpDownコントロールと言われても馴染みのない言葉だと思います。
しかし、これは見たことがあるのではないでしょうか。


<今回の完成品>


そうです!これがNumericUpDownコントロールです。
数字を増減させるときに使うアレですね!

私の業務上では使用する機会がありませんので、あまり細かい部分までは調べていませんが、せめて基本形だけでも紹介させていただきます。

PowerShellでユーザーフォームを作る - ピクチャーボックス編 -

PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
【PowerShellでInputBoxを使用する】
【PowerShellでMessageBoxを使用する】


ユーザーフォーム 8回目は「PowerShellでユーザーフォームを作る - ピクチャーボックス編 -」です。


   ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -
   ユーザーフォーム 2回目 【PowerShellでユーザーフォームを作る - オプション紹介 -
   ユーザーフォーム 3回目 【PoweShellでユーザーフォームを作る - リストボックス編 -
   ユーザーフォーム 4回目 【PowerShellでユーザーフォームを作る - チェックボックス編 -
   ユーザーフォーム 5回目 【PowerShellでユーザーフォームを作る - ラジオボタン編 -
   ユーザーフォーム 6回目 【PowerShellでユーザーフォームを作る - コンボボックス編 -
   ユーザーフォーム 7回目 【Windows Formでよく使うプロパティまとめ


正直、ピクチャーボックスはまったく使っておりませんので、今回は簡単にご紹介するのみとなりますことを、予めご了承ください。


<今回の完成品>
※画像ファイルは各自でご用意ください。



それでは例文を記述します。

2015-07-30

Windows Formでよく使うプロパティまとめ

PowerShellでは、.Net Frameworkを使用し、様々なフォームを作成することができます。

当ブログでもユーザーフォームの作成方法をいくつかご紹介してまいりました。

   ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -
   ユーザーフォーム 2回目 【PowerShellでユーザーフォームを作る - オプション紹介 -
   ユーザーフォーム 3回目 【PoweShellでユーザーフォームを作る - リストボックス編 -
   ユーザーフォーム 4回目 【PowerShellでユーザーフォームを作る - チェックボックス編 -
   ユーザーフォーム 5回目 【PowerShellでユーザーフォームを作る - ラジオボタン編 -
   ユーザーフォーム 6回目 【PowerShellでユーザーフォームを作る - コンボボックス編 -


今回は、Formクラスのプロパティの中から、筆者の独断と偏見で、特によく使うものに厳選して、それぞれの書き方・使用方法をご紹介していきます。

中には、過去記事にも書いたことのないものもありますので、ぜひご確認ください!

※下記の$formについては、ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -】を参照ください。

2015-07-29

PowerShellでユーザーフォームを作る - コンボボックス編 -

PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
【PowerShellでInputBoxを使用する】
【PowerShellでMessageBoxを使用する】


ユーザーフォーム 6回目は「PowerShellでユーザーフォームを作る - コンボボックス編 -」です。

   ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -
   ユーザーフォーム 2回目 【PowerShellでユーザーフォームを作る - オプション紹介 -
   ユーザーフォーム 3回目 【PoweShellでユーザーフォームを作る - リストボックス編 -
   ユーザーフォーム 4回目 【PowerShellでユーザーフォームを作る - チェックボックス編 -
   ユーザーフォーム 5回目 【PowerShellでユーザーフォームを作る - ラジオボタン編 -


コンボボックスと言われても、どんなものかすぐには浮かばない方もいらっしゃるかと思います。

百聞は一見に如かず。

コンボボックスは下記のようなものを言います。


<今回の完成品>


この画像のうち濃い緑の部分がコンボボックスです。
このコンボボックスを展開すると以下のようになっています。
これなら見たことがあるのではないでしょうか。


使い方はリストボックスと似ていますが、リストボックスはフォーム上で大きいスペースを必要とするのに対し、コンボボックスは小さいスペースで済むことが利点です。

また、コンボボックスと似たものとしてドロップダウンリストがあります。
この2つを同じものであると思われている方もいらっしゃるようですが、厳密に言うと少し異なります。

ざっと調べた内容を要約すると、下記の違いがあります。

  コンボボックス    … 一覧から選択、もしくはユーザーが直接入力で指定できる
  ドロップダウンリスト … 一覧から選択のみ(ユーザー入力不可)


今回作成するコンボボックスは、一覧にりんご、みかん、メロン、いちご、ぶどうが表示されますが、それ以外も指定することができるため、直接「オレンジ」と入力しても問題ないということです。
反対にドロップダウンリストは、ユーザー入力ができず、必ずりんご、みかん、メロン、いちご、ぶどうの中から選択しなければなりません。


前置きが長きなりましたが、ここから例文を記述します。

2015-07-18

PowerShellでユーザーフォームを作る - ラジオボタン編 -

PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
【PowerShellでInputBoxを使用する】
【PowerShellでMessageBoxを使用する】


ユーザーフォーム 5回目は「PowerShellでユーザーフォームを作る - ラジオボタン編 -」です。

   ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -
   ユーザーフォーム 2回目 【PowerShellでユーザーフォームを作る - オプション紹介 -
   ユーザーフォーム 3回目 【PoweShellでユーザーフォームを作る - リストボックス編 -
   ユーザーフォーム 4回目 【PowerShellでユーザーフォームを作る - チェックボックス編 -

ラジオボタン(RadioButton)は、選択肢をグループで括り、かつ、それぞれのグループ内で1つずつ選択させる場合に用いられます。


<今回の完成品>



Gerder(性別)グループとAge(年齢)グループに分かれているのが見えますでしょうか。

今回作成するものは、Genderグループから男性もしくは女性を選択し、Ageグループから年齢層を選択するものです。

前述の通り、それぞれのグループからは1つずつしか選択できません。

それでは例文を記述します。

2015-07-15

PowerShellでユーザーフォームを作る - チェックボックス編 -

PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
【PowerShellでInputBoxを使用する】
【PowerShellでMessageBoxを使用する】


ユーザーフォーム 4回目は「PowerShellでユーザーフォームを作る - チェックボックス編 -」です。

   ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -
   ユーザーフォーム 2回目 【PowerShellでユーザーフォームを作る - オプション紹介 -
   ユーザーフォーム 3回目 【PoweShellでユーザーフォームを作る - リストボックス編 -

前回はリストボックスを作成しましたが、今回はチェックボックス(CheckBox)を作成していきます。


<今回の完成品>



リストボックスと似ていますが、各項目の左側に □ が付いているのがおわかりかと思います。

リストボックスはリスト内から1つだけ選択させるものであるのに対し、チェックボックスは1つもしくは複数項目を選択させます。

それでは例文を記述します。

---------ここから-------------------------------------------------------------------------------------
# ユーザーフォームを作る - チェックボックス編 -

# アセンブリのロード
Add-Type -AssemblyName System.Windows.Forms

# フォームの作成
$form = New-Object System.Windows.Forms.Form
$form.Size = "250,280"
$form.Startposition = "CenterScreen"
$form.Text = "選択"

# ラベルを作成
$label = New-Object System.Windows.Forms.Label
$label.Location = "10,20"
$label.Size = "250,20"
$label.Text = "好きな果物を選択してください"

# チェックボックスを作成
$CheckedBox = New-Object System.Windows.Forms.CheckedListBox
$CheckedBox.Location = "5,40"
$CheckedBox.Size = "220,150"

# 配列を作成
$RETU = ("りんご","みかん","メロン","レモン","バナナ","すいか","いちご","パパイヤ","キュウイ","オレンジ","ぶどう")

# チェックボックスに10項目を追加
$CheckedBox.Items.AddRange($RETU)

# すべての既存の選択をクリア
$CheckedBox.ClearSelected()

# OKボタンの設定
$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = "40,200"
$OKButton.Size = "75,30"
$OKButton.Text = "OK"
$OKButton.DialogResult = [System.Windows.Forms.DialogResult]::OK

# キャンセルボタンの設定
$CancelButton = New-Object System.Windows.Forms.Button
$CancelButton.Location = "130,200"
$CancelButton.Size = "75,30"
$CancelButton.Text = "Cancel"
$CancelButton.DialogResult = [System.Windows.Forms.DialogResult]::Cancel

# フォームにアイテムを追加
$form.Controls.Add($label)
$form.Controls.Add($OKButton)
$form.Controls.Add($CancelButton)
$form.Controls.Add($CheckedBox)

# キーとボタンの関係
$form.AcceptButton = $OKButton
$form.CancelButton = $CancelButton

# 最前面に表示:する
$form.Topmost = $True

# フォームを表示
$result = $Form.ShowDialog()

# 処理分岐
if ( $result -eq "OK" )
{
    $AAA = @($CheckedBox.CheckedItems)
}else{
    exit
}
---------ここまで-------------------------------------------------------------------------------------

上記内容をコピーし、PowerShell ISEに貼り付けて、実行してみてください。
完成品と同じものが表示されましたか??

それではチェックボックスに関連する部分の解説をしていきます。
※フォームやボタン等については省略させていただきます。
 ご不明な方は、過去記事を参照ください。
  →【PowerShellでユーザーフォームを作る - 基礎編 -

**********************************解説*******************************************

# チェックボックスを作成
$CheckedBox = New-Object System.Windows.Forms.CheckedListBox
$CheckedBox.Location = "5,40"
$CheckedBox.Size = "220,150"

ここでは、CheckedListBoxクラスをインスタンス化し、使用準備を行っています。
同時にLocationプロパティで表示する位置を、Sizeプロパティで大きさを指定しています。


# 配列を作成
$RETU = ("りんご","みかん","メロン","レモン","バナナ","すいか","いちご","パパイヤ","キュウイ","オレンジ","ぶどう")

・チェックボックス内に表示させる項目を作成しています。



# チェックボックスに10項目を追加
$CheckedBox.Items.AddRange($RETU)

・作成した項目をチェックボックス内に追加しています。
 今回は配列に項目を格納した上で、まとめて追加しましたが、当然、ひとつずつ追加することも可能です。
 その場合は次のように記述します。

 $CheckedBox.Items.AddRange("りんご")
 $CheckedBox.Items.AddRange("いちご")
 $CheckedBox.Items.AddRange("みかん")
    ~~以下省略~~


# 処理分岐
if ( $result -eq "OK" )
{
    $AAA = @($CheckedBox.CheckedItems)
}else{
    exit
}

・チェックボックスの利点は複数項目を取得できることです。
 この部分では、チェックボックス内でチェックが入った全てのアイテムを変数AAAに格納しています。
***********************************************************************************

解説は以上となります。
今回の内容は前回のリストボックスとそこまで大きな違いはなかったと思います。

さて、次回は「PowerShellでユーザーフォームを作る - ラジオボタン編 -」を投稿したいと思います。

=======================================================================
本投稿に関する疑問や質問には可能な限りお答えさせていただきます。
お気軽にコメントやメールをお送りください。
(リクエストも歓迎します)
メール:tkk-powershell@gmail.com
また、間違いのご指摘・アドバイス等も歓迎いたします。
=======================================================================
Google+、Twitterで更新情報をお届けしています!
ぜひフォローをお願い致します!           
=======================================================================

2015-07-11

PowerShellでユーザーフォームを作る - リストボックス編 -

PowerShellでは、ユーザーの好みに合わせて、独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
【PowerShellでInputBoxを使用する】
【PowerShellでMessageBoxを使用する】


ユーザーフォーム 3回目は「PowerShellでユーザーフォームを作る - リストボックス編 -」です。

   ユーザーフォーム 1回目 【PowerShellでユーザーフォームを作る - 基礎編 -
   ユーザーフォーム 2回目 【PowerShellでユーザーフォームを作る - オプション紹介 -


基礎編では、入力ボックス(テキストボックス)をユーザーフォームで作成しました。
今回はその応用として、リストボックス(ListBox)の作り方をご紹介します。


<今回の完成品>



背景色などはあえて変更せず、シンプルなものにしています。

それでは例文を記述します。

2015-07-09

PowerShellでユーザーフォームを作る - オプション紹介 -

PowerShellでは、ユーザーが独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
PowerShellでInputBoxを使用する
PowerShellでMessageBoxを使用する


ユーザーフォーム 2回目は「PowerShellでユーザーフォームを作る - オプション紹介 -」です。
前回は基礎編として、シンプルな入力ボックス(テキストボックス)を表示させました。


   前回の記事はこちら → 【PowerShellでユーザーフォームを作る - 基礎編 -

今回は、前回の内容に様々なオプションをつけることで、ますます自分好みなフォームを作ることを目的とします。


<前回の完成品>



<今回の完成品>


印象がまったく違いますね。
見た目では色が付いただけのように見えますが、実際は細かい部分が多く変わっています。

それでは例文を記述します。

PowerShellでユーザーフォームを作る - 基礎編 -

PowerShellでは、ユーザーが独自にフォームを作成することができます。

以前の投稿で、インプットボックスやメッセージボックスをご紹介しましたが、それは非常にシンプルなものであり、使い勝手が良い反面、自由度が低いものでした。

過去の投稿はこちら↓↓
PowerShellでInputBoxを使用する
PowerShellでMessageBoxを使用する


よって今回より数回に分けて、独自のユーザーフォームを作る方法をご紹介していきます。


ユーザーフォーム 1回目は「PowerShellでユーザーフォームを作る - 基礎編 -」です。


<今回の完成品>


下記の例文を実行すると、上記のフォームが表示されます。

インプットボックスとあまり変わらない!といった声が聞こえてきそうですが、まぁ今回は基礎編ですので、どうかお付き合いください。


それでは例文を記述します。

2015-06-26

PowerShellでExcelを操作する - ヘッダー、フッターの設定編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!



Excel操作 10回目の今回は「PowerShellでExcelを操作する - ヘッダー、フッターの設定編 -」です。



<前準備>

・C:\TESTフォルダ内に、AAA.xlsxのExcelファイルを作成しておいてください。
 AAA.xlsxの内容は空のままでOKです。



それでは早速、例文を記述していきます。

2015-06-18

PowerShellでExcelを操作する - 罫線の操作編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!



Excel操作 9回目の今回は「PowerShellでExcelを操作する - 罫線の操作編 -」です。

前回は「下線」でしたが、今回は「罫線」です。
⇒ 前回の記事はこちら 【PowerShellでExcelを操作する - 下線の操作編 -


<前準備>

・C:\TESTフォルダ内に、AAA.xlsxのExcelファイルを作成しておいてください。
 AAA.xlsxの内容は空のままでOKです。



それでは早速、例文を記述していきます。

2015-06-17

PowerShellでExcelを操作する - 下線の操作編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!



Excel操作 8回目の今回は「PowerShellでExcelを操作する - 下線の操作編 -」です。

前回はフォントサイズや文字色、文字スタイルなどの指定方法について書きました。
⇒ 前回の記事はこちら 【PowerShellでExcelを操作する - フォントの操作編 -

今回は、その続きとして下線の指定方法を書いていきます。


<前準備>

・C:\TESTフォルダ内に、AAA.xlsxのExcelファイルを作成しておいてください。
 AAA.xlsxの内容は空のままでOKです。


それでは早速、例文を記述していきます。

2015-06-16

PowerShellでExcelを操作する - フォントの操作編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!



Excel操作 7回目の今回は「PowerShellでExcelを操作する - フォントの操作編 -」です。

前回までは、Excelの起動から始まり、セルのコピーやら行の挿入やら色々とやってきました。
その中で、「文字列を指定したセルに入力する」こともやりました。

今回紹介するのは、その延長となります。


<前準備>

・C:\TESTフォルダ内に、AAA.xlsxのExcelファイルを作成しておいてください。
 AAA.xlsxの内容は空のままでOKです。


それでは早速、例文を記述していきます。

2015-06-12

PowerShellでExcelを操作する - ブック間のコピー編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないことと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!


Excel操作 6回目の今回は「PowerShellでExcelを操作する - ブック間のコピー編 -」です。

過去の記事で、同一ブック上でのコピー&貼り付けはご紹介いたしましたが、今回は異なるブック間(ブックAと別のブックB 等)でコピー&貼り付けを行います。



<前準備>

・C:\TESTフォルダ内に、AAA.xlsxBBB.xlsxのExcelファイルを作成しておき、AAA.xlsxには事前にB2:C5に、画像のような文字列を入力しておいてください。
BBB.xlsxは空のままでOKです。



⇒ 過去の参考記事はこちら 【PowerShellでExcelを操作する - 基礎編 -


それでは早速、例文を記述していきます。

PowerShellでExcelを操作する - 行・列の操作編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないことと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!


Excel操作 5回目の今回は「PowerShellでExcelを操作する - 行・列の操作編 -」です。

今回の主な内容は 行の挿入、列の挿入、使用行数の取得、使用列数の取得 です。



<前準備>

・Excel操作の過去記事をお読みいただき、C:\TESTフォルダ内に、AAA.xlsxというExcelファイルを作成していただくと、よりわかりやすいかと思います。
また、今回は事前にB2:C5に、画像のような文字列を入力しておいてください。



⇒ 過去の記事はこちら 【PowerShellでExcelを操作する - 基礎編 -


それでは早速、例文を記述していきます。

PowerShellでExcelを操作する - セルの操作編2 -


PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないことと思います。

そんな毎日使用するものだからこそ、定型業務をPowerShellで自動化していきましょう!!


Excel操作 4回目の今回は「PowerShellでExcelを操作する - セルの操作編2 -」です。

前回の投稿では、セルC5やセルM8といった一箇所のセルに対して、文字列を入力したり、逆に取得する方法について記述しました。 参照:【PowerShellでExcelを操作する - セルの操作編 -

今回はその続きとして、指定範囲から文字列を取得したり、指定範囲をコピー&貼り付けする方法について書いていきます。



<前準備>

・Excel操作の過去記事をお読みいただき、C:\TESTフォルダ内に、AAA.xlsxというExcelファイルを作成していただくと、よりわかりやすいかと思います。
また、今回は事前にB2:C5に、画像のような文字列を入力しておいてください。



⇒ 過去の記事はこちら 【PowerShellでExcelを操作する - 基礎編 -


それでは早速、例文を記述していきます。

PowerShellでExcelを操作する - セルの操作編 -


PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないことと思います。

そんな毎日使用するものだからこそ、定型業務を自動化していきましょう!!


Excel操作 第3回目の今回は「PowerShellでExcelを操作する - セルの操作編 -」です。
指定したセルへの入力や、セルからの取得などの方法を書いていきます。



<前準備>

・Excel操作の過去記事をお読みいただき、C:\TESTフォルダ内に、AAA.xlsxというExcelファイルを作成していただくと、よりわかりやすいかと思います。

⇒ 過去の記事はこちら 【PowerShellでExcelを操作する - 基礎編 -
⇒ 過去の記事はこちら 【PowerShellでExcelを操作する - シートの操作編 -


それでは早速、例文を記述していきます。

2015-06-11

PowerShellでExcelを操作する - シートの操作編 -

PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelファイルは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないことと思います。

そんな毎日使用するものだからこそ、定型業務を自動化していきましょう!!


Excel操作 第2回目の今回は「PowerShellでExcelを操作する - シートの操作編 -」です。
作成されたExcelファイルのワークシートについて、新規追加や削除、コピーなどの方法を書いていきます。


<前準備>

・前回の記事をお読みいただき、C:\TESTフォルダ内に、AAA.xlsxというExcelファイルを作成していただくと、よりわかりやすいかと思います。

⇒ 前回の記事はこちら 【PowerShellでExcelを操作する - 基礎編 -


それでは早速、例文を記述していきます。

PowerShellでExcelを操作する - 基礎編 -


PowerShellでは、Excelファイル(エクセル 拡張子xls、xlsx、xlsm等)を操作することもできます。

Excelは、Officeソフトの中でも特に使用頻度が高く、業務で毎日使用しているという人も少なくないことと思います。

そんな毎日使用するものだからこそ、定型業務を自動化していきましょう!!


Excel操作 第1回目の今回は、「PowerShellでExcelを操作する - 基礎編 -」と題し、PowerShellからExcelファイルを開く~セルに文字列を入力する~保存する~Excelを閉じる というような内容で書いていきます。


<前準備>

・Cドライブの直下に「TEST」という名前のフォルダを新規作成しておく



それでは早速、例文を記述していきます。

2015-06-10

PowerShellでプログレスバーを表示する

今回は「プログレスバー(英:ProgressBar)」について書いていきます。

プログレスバーと言われると馴染みがないかもしれません。

プログレスバーとは「進捗状況をグラフィカルに表示するもの」です。
よく見かけるのはコピーの時に出てくるこんなやつです!



これなら見たことがあるのではないでしょうか。


私は業務上、多くのtifファイル・PDFファイルを扱うことがあり、コピーや移動が頻繁に発生しています。
その作業をPowerShellでスクリプトファイルを作成し、簡素化しているのですが、容量が大きい場合などは時間がかかります。
そのとき、どの程度まで進んでいるのかを表示させたくなり、プログレスバーを導入しました。

プログレスバーを表示させるにはWrite-Progressコマンドレットを使用します。

それではプログレスバーを使った例文を記述します。

PowerShell 文字列の部分取得

第6回の投稿となりました。

今回は「文字列の部分取得」について書いていきます。


いろいろとPowerShellで 遊んで 業務効率を上げようと模索していると、変数に格納した文字列を部分的に使用したい場合に出くわします。

例えば・・・
① パスの一部分だけを取得したい(フルパスは必要ない)
② ユーザー入力された文字列のうち、最後の3文字だけを取得したい  などです。

こういった場面で私が使っているのがSubStringメソッドです。

それでは早速、例を記述します。
  -----------------------------------------------------------------------------
    PS C:\> $HOGE = "ABCDEFGHIJ"
    PS C:\> $HOGE.SubString(3,5)
    DEFGH
  -----------------------------------------------------------------------------

1行ずつ解説します。

PowerShellで日付を取得・操作する

今回はこれまでと少し路線を変更し、「日付の取得・操作」について書いていきます。

PowerShellで日付の取得といえば、Get-Dateコマンドレット (エイリアスは Date )です。
 まずは通常のGet-Dateコマンドレットを実行してみましょう。

PowerShellを起動し、「Get-Date」と入力します。

  -----------------------------------------------------------------------------
    PS C:\> Get-Date
    2015年6月10日 13:10:30
  -----------------------------------------------------------------------------

現在の日付と時間が表示されますね。
では次から、応用編です。

Get-Dateコマンドレットは、メソッドを追加することによって、いろんな条件で日付を取得することができます。

 ここから一気にメソッドとその実行結果をご紹介します。

PowerShellでファイル選択ダイアログを使用する

第4回は「ファイル選択ダイアログFile selection dialog)」を取り上げます。

前回は「フォルダ選択ダイアログ」を取り上げました。
⇒ [第3回] PowerShellでフォルダ選択ダイアログを使用する


では早速、基本型を記述します。
 
---------ここから-------------------------------------------------------------------------------------

# アセンブリの読み込み
Add-Type -Assembly System.Windows.Forms

# ファイル選択ダイアログのオブジェクト取得
$dialog = New-Object System.Windows.Forms.OpenFileDialog

# フィルタ条件の設定
$dialog.Filter = 'テキストファイル|*.txt|Csvファイル|*.csv'

# タイトルの設定
$dialog.Title = "ファイルを選択してください"

# ヘルプの設定
$dialog.ShowHelp = $true;

# デフォルト選択ディレクトリの設定
$dialog.InitialDirectory = 'C:\'

# 選択したファイルのパスを変数PATHに格納する
if ($dialog.ShowDialog() -eq "OK") {
    $PATH = $dialog.FileName
} else {
    $PATH = '選択なし。'
}


# 格納したパスをメッセージボックスで表示
[System.Windows.Forms.MessageBox]::Show($PATH,"処理完了")

 
---------ここまで-------------------------------------------------------------------------------------

上の内容をコピーして、PowerShell ISEを起動し、貼り付けたあと、[スクリプトを実行(F5)]を押してみてください。

まず始めに、下の画像のようなダイアログが表示されます。
(フォルダ構成はお使いのPCによって異なります)

2015-06-09

PowerShellでフォルダ選択ダイアログを使用する

[第1回] PowerShellでMessageBoxを使用する
[第2回] PowerShellでInputBoxを使用する

第3回は「フォルダ選択ダイアログ」を取り上げたいと思います。

取り上げたのはいいものの、私は普段、この「フォルダ選択ダイアログ」をほとんど使いません。
よって、あまり深く調査しておりませんので、今回は基本型のみとなります。
(今後、使用頻度が高まり、更に調査した場合は追記いたします)


ではさっそく「フォルダ選択ダイアログ」の基本型を記述します。

---------ここから-------------------------------------------------------------------------------------
# フォルダ選択ダイアログ 基本型

# COMオブジェクトの読み込み
$shell = New-Object -com Shell.Application
   
# フォルダ選択ダイアログの表示   
$folderPath = $shell.BrowseForFolder("A","B","C","D")

---------ここまで-------------------------------------------------------------------------------------

 では解説していきます。

PowerShellでInputBoxを使用する


第1回ではメッセージボックスの使用方法について投稿しました。

⇒ [第1回] PowerShellでMessageBoxを使用する方法


第2回は「InputBox (インプットボックス)」について書いていきます。

インプットボックスはメッセージボックスと並んで、よく使われるフォームのひとつではないでしょうか。

インプットボックスの強みといえば、ユーザーに入力された値を戻り値として変数に格納し、その後の様々な処理に活用できることです。

ではまず、インプットボックスの基本型を記述します。

PowerShellでMessageBoxを使用する

PowerShellをもっとたくさんの人に使っていただき、その方々の作業効率が向上することを願って、PowerShellの使い方を発信していくことにしました。

Web検索から辿り着いてこられた方々のお役に立てれば幸いです。

今回は「MessageBox (メッセージボックス)」について書いていきます。

メッセージボックスは処理が終わったタイミングや確認メッセージを表示させたい時など、なにかとよく使うものなので、ぜひ覚えていってください!

ここからメッセージボックスを表示させる方法を記述します。