Search

2018/03/28

薄毛の頭皮マッサージの手軽なもの:プロテクのウォッシングブラシ

すっごいMハゲ進行中なのでハゲ対策をやったけどほぼダメ。
ますます頭皮から毛髪が離脱している。

もう無理っと思ったけど頭皮マッサージをやってみた。
これやって良くなるわけではないけど、髪がふわっとしたような気がする。
1個600円くらいです。
PRO TEC(プロテク) ウォッシングブラシ 毛穴クレンジングタイプ

使い方はYoutubeにて。ライオン公式動画です。
結構ゴシゴシやるけど歯ブラシと同じ素材なので、頭皮は傷まないと思う。
実際やってみると今までない違和感があるけど痛みはない。
頭皮が伸びてスッキリする感じ。
PRO TEC(プロテク)「ウォッシングブラシの使い方」/1分38秒/ライオン


注意したいのが油を落とす点。
頭皮が乾燥している人は悪化するので、化粧水とか付けた方がいいと思う。
ドラッグストアの600円くらいのでもいいと思う。


状況にもよるけど、ハゲに一番いいのは体質改善みたいです。
ストレスから開放されて心身ともにリラックスな時間をたくさん持つこと。
野菜をしっかり食べて、適切な運動すること。
でも、仕事忙しくてそんなのできない・・・。
せめて頭皮マッサージでひとときにリラックス時間を楽しんでみます。


PowershellでExcelファイルの編集と作成:Import-Excelのコマンドメモ

概要は前回の投稿で。
PowershellでExcelの作成、Excel無しでもOK:Import-Excel

ここに備忘録としてコマンドもメモを記載する。
結構あいまいに書いてます。
既存のxlsxを開いて値を変更して保存するあたり。
----
Open-excelPackageのセルデータは配列。
Import-Excelはクラスになっている。

■import-excel
$xl = Import-excel -path $file_path;


$xl.[1]
$xl.item1[1]
$xl.item2[10]
※値は項目名のプロパティなので2次元配列のように扱えない。
※プロパティはパイプラインで扱う。

データの個数
$xl.item1.Count


■Open-Excelpackage
$xlpk = Open-Excelpackage -path $file_kikan;  # パス付きはロード不可!
$sh = $xlpk_kk.Workbook.Worksheets[1];


セルの参照の基本
$val = $sh.Cells[2,3].value;
$sh.Cells[2,3].value =100;

行の個数
$sh.Dimemsion.Rows

列の個数
$sh.Dimemsion.Columns

$sh.getvalue(2,2); 値の取得の簡易版
$sh.setvalue(2,2); ???使い方不明


■セル書式
セルの色付け:Open-Excelpackageのとき
設定したあとにsaveする。

Set-Format -Address $sh.Cells[ 2,2] -BackgroundColor LightBlue;
LightBlue、Blue、Yellow、Greenとか色指定の詳細は不明。


2018/03/21

PowershellでExcelの作成、Excel無しでもOK:Import-Excel

PowershellでExcelデータの作成とか編集とかは
下記の感じでCOMコンポーネントの例がたくさんあります。
WPS Officeのメリット:COMコンポーネントがPowershellで使える

でも、COMコンポーネントは処理がとても遅いので、
.Netを使ってxlsxオブジェクトを処理すると早いです。

その中の一つの方法が「ImportExcel」を使う方法らしいです。
ライセンスはApache Licenseです。
インストールも簡単にできると思います。
ImportExcel
https://github.com/dfinke/ImportExcel

ClosedXMLのようなものでも同じことができると思いますので、
状況に合わせて使うと便利だと思います。
PowerShell で ClosedXML を使って Excel ファイルを作成する @miyamiya様


----------------------
追記)
※.NETのDLLを使ってもいいかも。dllはNuGetで入手する。
※ImportExcelはEPPLUSを使ってます。
読むだけ:ExcelDataReader  xls,xlsx,csvに対応
書き込み:EPPLUS  xlsxのみ対応
下記のページを参照。
ExcelDataReaderでxlsとxlsxとcsvを読み込み:powershellでも動くよ


コマンドレットで使いたい! > ImportExcel
DLLで読み込みだけしたい! > ExcelDataReader
DLLでXLSXを読み書きしたい! > EPPLUS
----------------------


【機能の比較】
■COMコンポーネント
メリット:何でもできる!
デメリット:処理が遅い、有料ソフトが必要

■ImportExcel
メリット:処理が速い!Apache Licenseで無料で使える
デメリット:機能が限定される



下記にImportExcelのインストールとかんたんな使い方を書いておきます。
詳しい検証はしてません。

たぶん、AddPictureとかで画像を貼り付けるとかできない感じです。
でも、詳しくドキュメントを読んでいないので分かりません。

------------------


【インストールの手順】
■管理者でPowershellを起動
■「Install-Module ImportExcel」を入力
■Nugetをインストールするか聞いてくるので「Y」で進む
■信頼されていないリポトリジも聞いてくるので「Y」で進む
■念の為、「Find-Module ImportExcel」で確認する


【コマンド一覧を表示】
■「Get-Command -module ExcelImport」でコマンド一覧を表示してみる
長いので最下部に記載しました。

【使い方とかサンプルの表示】
■「Get-Help Import-Excel」で表示してみる
まずは Import-Excel、Export-Excelを調べてみましょう。

Import-Excel: Excelのデータをロード
Export-Excel: オブジェクトをExcelとして出力
Open-ExcelPackage: xlsxをオブジェクトとしてロード

Import-Excelのヘルプの例はこんな感じ。
「Import-Excel c:\tmp\text.xlsx」でロードするよ、みたいな感じで。
----------
名前
    Import-Excel

概要
    Create custom objects from the rows in an Excel worksheet.

構文
    Import-Excel [-Path] <String> [[-WorksheetName] <String>] [-StartRow <Int32>] [-DataOnly] [-Password <String>] [<Co
    mmonParameters>]

・・・以下省略
----------

【チュートリアルとかサンプル】
githubのページの下の方で紹介しています。
Examplesで実例もコピペで使えます。


【かんたんな使い方】
データをメモリに読み込めばあとはPowershellで処理する。
出力はExport-Excelにパイプラインで渡す感じで。


■9x1でxlsxに出力 ※-noheaderは項目名無し
@(1,2,3,4,5,6,7,8,9)  | Export-excel c:\tmp\test.xlsx -noheader;


■3x3でxlsxに出力
 @(
New-PSItem aa bb cc;
New-PSItem 11 22 33;
New-PSItem 77 88 99;
) | Export-excel c:\tmp\test.xlsx -noheader;


■値のみインポート ※最上段は項目名
$xl = Import-Excel c:\tmp\test.xlsx


■値のみインポート ※最上段もデータとする場合
$xl = Import-Excel c:\tmp\test.xlsx -dataonly

■値の表示 ※プロパティで指定
$xl | select P1

P1
-
1
2
3

■値を処理したあとの出力
$xl | Export-Excel c:\tmp\test.xlsx



■書式などを含んむときのインポート
$xlpkg = Open-ExcelPackage c:\tmp\test.xlsx;

■Packageの値の操作 ※配列で指定
$xlpkg.Workbook.Worksheet[1].Cells[1,1].value =4071;
$xlpkg.Workbook.Worksheet[1].Cells[1,2].text ="aaaa";
$xlpkg.Workbook.Worksheet[1].GetValue(1,2);


■値を処理したあとの出力と破棄
$xlpkg.save();
$xlpkg.dispose();






【コマンド一覧】
■「Get-Help xxx」で詳しい使い方が表示されます。

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Alias           Use-ExcelData                                      4.0.10     importexcel
Function        Add-ConditionalFormatting                          4.0.10     importexcel
Function        Add-WorkSheet                                      4.0.10     importexcel
Function        BarChart                                           4.0.10     importexcel
Function        Close-ExcelPackage                                 4.0.10     importexcel
Function        ColorCompletion                                    4.0.10     importexcel
Function        ColumnChart                                        4.0.10     importexcel
Function        ConvertFrom-ExcelData                              4.0.10     importexcel
Function        ConvertFrom-ExcelSheet                             4.0.10     importexcel
Function        ConvertFrom-ExcelToSQLInsert                       4.0.10     importexcel
Function        ConvertTo-ExcelXlsx                                4.0.10     importexcel
Function        Convert-XlRangeToImage                             4.0.10     importexcel
Function        Copy-ExcelWorkSheet                                4.0.10     importexcel
Function        DoChart                                            4.0.10     importexcel
Function        Export-Excel                                       4.0.10     importexcel
Function        Export-ExcelSheet                                  4.0.10     importexcel
Function        Export-MultipleExcelSheets                         4.0.10     importexcel
Function        Get-ExcelColumnName                                4.0.10     importexcel
Function        Get-ExcelSheetInfo                                 4.0.10     importexcel
Function        Get-ExcelWorkbookInfo                              4.0.10     importexcel
Function        Get-HtmlTable                                      4.0.10     importexcel
Function        Get-Range                                          4.0.10     importexcel
Function        Get-XYRange                                        4.0.10     importexcel
Function        Import-Excel                                       4.0.10     importexcel
Function        Import-Html                                        4.0.10     importexcel
Function        Import-UPS                                         4.0.10     importexcel
Function        Import-USPS                                        4.0.10     importexcel
Function        Invoke-AllTests                                    4.0.10     importexcel
Function        Invoke-Sum                                         4.0.10     importexcel
Function        LineChart                                          4.0.10     importexcel
Function        New-ConditionalFormattingIconSet                   4.0.10     importexcel
Function        New-ConditionalText                                4.0.10     importexcel
Function        New-ExcelChart                                     4.0.10     importexcel
Function        New-PivotTableDefinition                           4.0.10     importexcel
Function        New-Plot                                           4.0.10     importexcel
Function        New-PSItem                                         4.0.10     importexcel
Function        Open-ExcelPackage                                  4.0.10     importexcel
Function        PieChart                                           4.0.10     importexcel
Function        Pivot                                              4.0.10     importexcel
Function        Send-SQLDataToExcel                                4.0.10     importexcel
Function        Set-CellStyle                                      4.0.10     importexcel
Function        Set-Column                                         4.0.10     importexcel
Function        Set-Format                                         4.0.10     importexcel
Function        Set-Row                                            4.0.10     importexcel
Function        Test-Boolean                                       4.0.10     importexcel
Function        Test-Date                                          4.0.10     importexcel
Function        Test-Integer                                       4.0.10     importexcel
Function        Test-Number                                        4.0.10     importexcel
Function        Test-String                                        4.0.10     importexcel
Function        Update-FirstObjectProperties                       4.0.10     importexcel



[