目標達成?


2017年も今日で最後ですが、実は今年の初めにいくつか目標を立てていました。

今日は、その目標が達成できたのかを検証してみたいと思います。

まず、今年の1月2日に立てた目標は次の通りです。

・筋力アップ
・ジョギング 週1回 5km
・スマホアプリ作成
・株の購入
・ブログを毎日更新
・ブログのPVが月に3万PV以上
・読書
・Azureに登録
・ASP.NET MVCのサイト作成
・LINEスタンプ リリース

まあ、ざっとこんな感じです。

では実際に達成できたのかどうか、ひとつひとつ検証していきたいと思います。

餅つき2017


毎年の恒例の餅つきです。

今年も滞りなく終わりました。

さっそく昼につきたての餅をいただきましたが、調子に乗って少し食べ過ぎてしまいお腹が苦しいです。

しかし、こうして年末に餅をついて食べれるというのは幸せなことです。

来年もまた同じように食べれるように頑張りたいです。

大掃除

今日、自宅の大掃除をしました。

風呂場や台所、トイレなど、いつもより丁寧に掃除したんですが、そんななかある驚くべき発見がありました。

それは電気ケトルの洗浄です。

前に電気ケトルはクエン酸を入れて沸騰させるときれいになるというのを聞いていたので、今回ためしにクエン酸を入れて沸騰させてみました。

そして、その結果がこれです。


洗浄前の状態の写真を撮り忘れてしまってお見せ出来ないのが残念なのですが、えっ!嘘だろ!?と思うぐらいめちゃくちゃきれいになりした。

洗浄前は真っ黒と言っていいぐらい汚れていて、見たら引くぐらいの汚れというか水垢?が付いていたのですが、クエン酸を小さじ3杯ぐらい入れて沸かしただけで、あっという間にきれいなりました。

こんな簡単に落ちるんならもっと早くやればよかった思いました。

これはなかなかお勧めですので、電気ケトルの汚れにお困りの方はぜひ試してみてください。





【PowerShell】SendToフォルダを表示するスクリプト2


すみません、昨日の記事『SendToフォルダを表示するスクリプト』、ぜんぜんダメでした。

もっといいやり方があります。

.Net Frameworkで特殊フォルダを取得できました。

以前、自分で記事を書いておきながらすっかり忘れていたのですが、SendToも特殊フォルダとして取得できました。

ですので最適な方法はこれです。
[Environment]::GetFolderPath('SendTo') | Invoke-Item






【PowerShell】SendToフォルダを表示するスクリプト


たまにコンテキストメニューの「送る」にショートカットを追加したくなったりすることがあるのですが、あの「SendTo」フォルダってどこだったっけ?といつも分からなくなります。

そこでSendToフォルダを表示するスクリプトを作ってみました。

#ユーザー名取得
$user = $env:username

#SendToフォルダパス
$folder = 'C:\Users\' + $user + '\AppData\Roaming\Microsoft\Windows\SendTo'

#フォルダを開く
Invoke-Item $folder
SendToフォルダは、「ユーザー」→「(ユーザー名)」→「AppData」→「Roaming」→「Microsoft」→「Windows」→「SendTo」と進んでいくとあります。

単純に$env:usernameでユーザー名を取得して「SendTo」までのパスを作成しました。


実行結果







【PowerShell】天気予報を取得してWindowsフォームに表示する


以前書いた、『Invoke-RestMethodを使って天気予報を取得してみる』の方法で取得した天気情報をWindowsフォームに表示するようにしてみました。

とりあえず明日の天気だけ表示するようにしています。今日とか明後日も表示させようか思いましたがラベルとか配置させるのが面倒なのでやめました。(笑)

#天気情報取得
$city = 140020
$tenki = Invoke-RestMethod http://weather.livedoor.com/forecast/webservice/json/v1?city=$city

Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing
 
#フォーム
$form = New-Object System.Windows.Forms.Form 
$form.Text = "天気予報"
$form.Size = New-Object System.Drawing.Size(200,180) 
$form.StartPosition = "CenterScreen"
$form.BackColor = [System.Drawing.Color]::White
$form.MaximizeBox = $false
$form.MinimizeBox = $false
$form.FormBorderStyle = [System.Windows.Forms.FormBorderStyle]::FixedSingle

#タイトル
$title = New-Object System.Windows.Forms.Label
$title.Location = New-Object System.Drawing.Point(20, 20) 
$title.Size = New-Object System.Drawing.Size(200,20) 
$title.Text = $tenki.title
$title.Font = New-Object System.Drawing.Font($title.Font, [System.Drawing.FontStyle]::Bold)
$form.Controls.Add($title) 

#ラベル1
$label1 = New-Object System.Windows.Forms.Label
$label1.Location = New-Object System.Drawing.Point(30, 50) 
$label1.Size = New-Object System.Drawing.Size(200,20) 
$label1.Text = $tenki.forecasts[1].dateLabel + '  ' + ([DateTime]::Parse($tenki.forecasts[1].date)).ToString("yyyy年MM年dd日")
$form.Controls.Add($label1) 

#PictureBox
$pic = New-Object System.Windows.Forms.PictureBox
$pic.ImageLocation = $tenki.forecasts[1].image.url
$pic.Location = New-Object System.Drawing.Point(30, 80) 
$pic.Size = New-Object System.Drawing.Size(50, 31)
$pic.SizeMode = [System.Windows.Forms.PictureBoxSizeMode]::Zoom
$form.Controls.Add($pic) 

#予報
$telop = New-Object System.Windows.Forms.Label
$telop.Location = New-Object System.Drawing.Point(90, 80) 
$telop.Size = New-Object System.Drawing.Size(70,20) 
$telop.Text = $tenki.forecasts[1].telop
$form.Controls.Add($telop) 

#最高気温
$tempmax = New-Object System.Windows.Forms.Label
$tempmax.Location = New-Object System.Drawing.Point(90, 100) 
$tempmax.Size = New-Object System.Drawing.Size(30,20) 
$tempmax.Text = $tenki.forecasts[1].temperature.max.celsius
$tempmax.ForeColor = [System.Drawing.Color]::Red
$form.Controls.Add($tempmax) 

#最低気温
$tempmin = New-Object System.Windows.Forms.Label
$tempmin.Location = New-Object System.Drawing.Point(120, 100) 
$tempmin.Size = New-Object System.Drawing.Size(30,20) 
$tempmin.Text = $tenki.forecasts[1].temperature.min.celsius
$tempmin.ForeColor = [System.Drawing.Color]::Blue
$form.Controls.Add($tempmin) 

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

#リソースを開放
$pic.Image.Dispose()
$pic.Image = $null

実行結果







【PowerShell】Windowsフォームに画像を表示する


Windowsフォームに画像を表示できるか試してみました。

今回、試しにこの画像を表示させてみたいと思います。

動物のアイコン | かわいいフリー素材集 いらすとや

Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing

#フォーム
$form = New-Object System.Windows.Forms.Form 
$form.Text = "イメージテスト"
$form.Size = New-Object System.Drawing.Size(300,200) 
$form.StartPosition = "CenterScreen"

#PictureBox
$pic = New-Object System.Windows.Forms.PictureBox
$pic.Size = New-Object System.Drawing.Size(100, 100)
$pic.Image = [System.Drawing.Image]::FromFile("C:\work\pic\animal_buta.png")
$pic.Location = New-Object System.Drawing.Point(20,20) 
$pic.SizeMode = [System.Windows.Forms.PictureBoxSizeMode]::Zoom
$form.Controls.Add($pic) 

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

#リソースを開放
$pic.Image.Dispose()
$pic.Image = $null

実行結果



<参考サイト>
PictureBoxコントロールに簡単に画像を表示する: .NET Tips: C#, VB.NET






【PowerShell】クリスマスツリーを作ってみた


今日は12月24日、クリスマスイブということでスクリプトでクリスマスツリーを作ってみました。

################################################################################
# ChristmasTree.ps1
################################################################################
for($i = 0; $i -lt 10; $i++)
{
    cls
    Write-Host "   Merry Christmas   " -ForegroundColor Red -BackgroundColor Green
    Write-Host ""

    $mod = $i % 2

    if ($mod -eq 0)
    {
        Write-Host "          ☆" -ForegroundColor Yellow
        Write-Host ""
        Write-Host "        *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -ForegroundColor Green
        Write-Host ""
        Write-Host "      *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -ForegroundColor Yellow
        Write-Host ""
        Write-Host "    *" -NoNewline -ForegroundColor Yellow
        Write-Host "   *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -ForegroundColor Red
        Write-Host ""
        Write-Host "  *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -ForegroundColor Yellow
        Write-Host "          ||" -ForegroundColor DarkRed
        Write-Host "          ||" -ForegroundColor DarkRed
        Write-Host ""
    }
    else
    {
        Write-Host "          ☆" -ForegroundColor Yellow
        Write-Host ""
        Write-Host "        *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -ForegroundColor Yellow
        Write-Host ""
        Write-Host "      *" -NoNewline -ForegroundColor Yellow
        Write-Host "   *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -ForegroundColor Green
        Write-Host ""
        Write-Host "    *" -NoNewline -ForegroundColor Red
        Write-Host "   *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -NoNewline -ForegroundColor Yellow
        Write-Host "   *" -ForegroundColor Green
        Write-Host ""
        Write-Host "  *" -NoNewline -ForegroundColor Yellow
        Write-Host "   *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -NoNewline -ForegroundColor Yellow
        Write-Host "   *" -NoNewline -ForegroundColor Green
        Write-Host "   *" -ForegroundColor Red
        Write-Host "          ||" -ForegroundColor DarkRed
        Write-Host "          ||" -ForegroundColor DarkRed
        Write-Host ""
    }

    Start-Sleep -m 1000
}
なんかものずごい力技!(汗)


実行結果


それではよいクリスマスを。






【サクラエディタ】矩形貼り付けを行う



以前、矩形選択の方法を書きましたが、今回は矩形貼り付けです。

矩形貼り付けとは、矩形選択で文字列を列単位でコピーしたものを貼り付けて挿入することできる機能です。




たとえばこのような「,」区切りの文字列があったとします。



この3列目の「3」が入ってるところに次の文字列を貼り付けてみます。



まず、[Shift] + [F6] で矩形選択を行います。

選択が出来たら [Ctrl] + [C] でコピーします。

参考:【サクラエディタ】1から順番に数字を縦に出力するマクロ



次に貼り付け先で、同じく矩形選択を行います。

選択が出来たら、ここで [Shift]キー + [F9]キー を押します。

矩形貼り付け
[Shift] + [F9]



するとこのように、コピーした文字列が貼り付けられました。

【サクラエディタ】1から順番に数字を縦に出力するマクロ



1から順番に数字を縦に出力するマクロを作ってみました。

こんなマクロ、何の役に立つんだと思われるかもしれませんが、仕事でたまたまこういう処理が必要だったので作りました。つまり完全に自分用です。(笑)

var
    i : Integer;
    s : String;
    n : Integer;
begin
    s := S_InputBox('数字を入力してください。', '', 3);

    n := StrToInt(s);
    
    for i:=1 to n do begin
        S_InsText(IntToStr(i));
        S_Char(13);
    end;
end;
マクロは、PPAマクロです。
文法はDelphiみたいな感じです。

実行結果


最初にインプットボックスで最大値を入力してOKを押します。


するとこのように1から10までの数字が縦に出力されます。

ブログ村に登録してみました。


昨日ですが、「にほんブログ村」に登録してみました。

「にほんブログ村」とは、ブログへのアクセス数などでランキング形式に表示してくれたりするサイトです。

まあ、他にもいろいろな機能があるみたいですが、簡単に言うとそんなサイトです。

これで少しアクセス数がアップすればいいなと思っております。

あと、これでブログ仲間も作れればと思っております。

気になる方、わたしも登録してみたい!という方は、下記バナーからぜひアクセスしてみてください。
ブログランキング・にほんブログ村へ
にほんブログ村


♪♪♪
もしよろしければポチッとお願いします。
にほんブログ村 IT技術ブログ プログラム・プログラマーへ
にほんブログ村


【Access】リボンを非表示にするマクロ


リボンは最小化するだけじゃなく非表示にすることも出来ます。
リボンを非表示にすればウィンドウが広く使え、見た目にもすっきりします。

下記は、フォーム読み込み時にリボンを非表示にしています。
Private Sub Form_Load()

    DoCmd.ShowToolbar "Ribbon", acToolbarNo

End Sub
ShowToolbarメソッドの第1引数に"Ribbon"、第2引数にacToolbarNoを指定すれば非表示、acToolbarYesを指定すれば表示になります。

【Access】リボンを最小化するマクロ


リボンを最小化する方法です。

たとえばこのようなフォームにボタン(buttonChange)が貼り付けてあるとします。



この「切り替え」ボタンをクリックしたときにリボンの最小化・解除を切り替えるには次のようにします。

Private Sub buttonChange_Click()

    Application.CommandBars.ExecuteMso "MinimizeRibbon"
    
End Sub
リボンを最小化するには、CommandBarsオブジェクトのExecuteMsoメソッドで「MinimizeRibbon」を指定します。ただし、リボンが最小化されてる状態で実行するとリボンが表示されるようになっていますので注意が必要です。その場合は、GetPressedMsoメソッドでリボンの状態を確認するなどしてください。


実行結果







【注意】知らない人から発注書が添付された怪しいメールが来た

今日、また怪しいメールが届きました。

そのメールがこちらです。



件名は、「12月度発注書送付」

Excelファイルが添付してあります。

おそらくこのExcelファイルにウィルスが仕組まれているのでしょう。

あと、宛先欄のところには、私以外にもう二人いました。もちろん誰だか知らない人です。実在するのか分かりませんが、もしかするとこの人たちにも同じメールが行ってるのかもしれません。

ちなみにこの迷惑メールは、警視庁サイバーセキュリティ対策本部でも注意喚起しています。



みなさんも気をつけてください。

【本】ITエンジニアが覚えておきたい英語動詞30


ITエンジニアが覚えておきたい英語動詞30
板垣 政樹 (著)

最近この本を読んでるんですけど、なかなかいいです。

これまでもいろいろと英語教材に手を出してきましたが、こういうITエンジニアに特化したものはありませんでした。内容が非常に実戦的ですし、仕事してて実際に日本語で交わす会話を英語で言ったらどう言うのかということが書かれていてとても参考になります。

しかも、IT現場でよく使われる動詞30個に絞って、なぜその動詞を使うのか、なぜそのような言い回しをするのかといった、ネイティブの考え方に基づいた解説をしてくれるので非常に分かりやすいです。

【PowerShell】コピーしたソースコードに含まれる0xC2A0(no-break space)を半角スペース(0x20)に変換するスクリプトを作ってみた


当ブログの記事中に掲載しているソースコードをコピーしてVBEなどのエディターに貼り付けると、行頭の空白が変な文字に変換されててそのままでは使えないことがあります。

たとえば、このようなソースコードをコピーして、
Public Sub MakeForm()

    CreateForm
    
    DoCmd.Restore
    
End Sub

AccessのVBEに貼り付けてみると、

頭に「?」が並んだ状態になってしまいます。

これでは当然コンパイルできませんし、実行も出来ません。

調べてみると、どうやらこれはno-break spaceというものでWeb上で複数の空白を表現するのに使われたりするらしいんです。そしてUTF-8だと0xC2A0のコードになるようなんです。

あと気になるのは、この現象が起きるのはChromeだけなんですよね。
FirefoxやEdgeだと起きません。

なんなんですかね。

Javascriptの解釈の仕方が違うんですかね。

まあでも、このブログのアクセスの6割ぐらいがChromeからで無視するわけにはいかないんで、この0xC2A0を0x20に変換するスクリプトを作ってみました。

################################################################################
# Convert-C2A0.ps1
# 
# 0xC2A0を0x20に変換する
#
################################################################################

#コードを変換
function ConvertStr{
    param($code)

    [Byte[]]$data = [System.Text.Encoding]::UTF8.GetBytes($code)

    [byte[]]$b = @()

    [bool]$flag = $false

    for ($i=0; $i -lt $data.Count; $i++)
    {
        if ($data[$i].ToString("X2") -eq "C2")
        {
            $preIndex = $i
            $flag = $true
        }
        elseif (($flag -eq $true) -and ($data[$i].ToString("X2") -eq "A0"))
        {
            $b += 0x20
            $flag = $false
        }
        elseif (($flag -eq $true) -and ($data[$i].ToString("X2") -ne "A0"))
        {
            $b += $data[$preIndex]
            $b += $data[$i]
            $flag = $false
        }
        else
        {
            $b += $data[$i]
        }
    }

    $str = [System.Text.Encoding]::UTF8.GetString($b)

    return($str)
}


Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing

#フォーム
$form = New-Object System.Windows.Forms.Form 
$form.Text = "Convert C2A0"
$form.Size = New-Object System.Drawing.Size(400,240) 
$form.StartPosition = "CenterScreen"

#ラベル
$label = New-Object System.Windows.Forms.Label
$label.Location = New-Object System.Drawing.Point(20,15) 
$label.Size = New-Object System.Drawing.Size(250,20) 
$label.Text = "コードを貼り付けて変換ボタンを押してください。"
$form.Controls.Add($label) 

#テキストボックス
$textBox = New-Object System.Windows.Forms.TextBox 
$textBox.Location = New-Object System.Drawing.Point(20,40) 
$textBox.Multiline = $True
$textBox.AcceptsReturn = $True
$textBox.AcceptsTab = $True
$textBox.WordWrap = $True
$textBox.ScrollBars = [System.Windows.Forms.ScrollBars]::Vertical
$textBox.Anchor = (([System.Windows.Forms.AnchorStyles]::Left) `
              -bor ([System.Windows.Forms.AnchorStyles]::Top) `
              -bor ([System.Windows.Forms.AnchorStyles]::Right) `
              -bor ([System.Windows.Forms.AnchorStyles]::Bottom))
$textBox.Size = New-Object System.Drawing.Size(340,110) 
$textBox.Add_KeyDown({if ($_.Control -and ($_.KeyCode -eq [System.windows.forms.Keys]::A)) 
    {$textBox.SelectAll()}})
$form.Controls.Add($textBox) 

#変換ボタン
$ConvertButton = New-Object System.Windows.Forms.Button
$ConvertButton.Location = New-Object System.Drawing.Point(270,10)
$ConvertButton.Size = New-Object System.Drawing.Size(75,23)
$ConvertButton.Text = "変換"
$ConvertButton.Anchor = (([System.Windows.Forms.AnchorStyles]::Left) `
                    -bor ([System.Windows.Forms.AnchorStyles]::Top))
$ConvertButton.Add_Click({$textBox.Text=ConvertStr $textBox.Text; `
                          [System.Windows.Forms.MessageBox]::Show("変換が完了しました。")})
$form.Controls.Add($ConvertButton)

#閉じるボタン
$ExitButton = New-Object System.Windows.Forms.Button
$ExitButton.Location = New-Object System.Drawing.Point(285,160)
$ExitButton.Size = New-Object System.Drawing.Size(75,23)
$ExitButton.Text = "閉じる"
$ExitButton.Anchor = (([System.Windows.Forms.AnchorStyles]::Right) `
                   -bor ([System.Windows.Forms.AnchorStyles]::Bottom))
$ExitButton.Add_Click({$form.Close()})
$form.Controls.Add($ExitButton)

#フォームを常に手前に表示
$form.Topmost = $True

#フォームをアクティブにし、テキストボックスにフォーカスを設定
$form.Add_Shown({$textBox.Select()})

#フォームを表示
$result = $form.ShowDialog()
少し解説すると、テキストボックスに貼り付けられた文字列を、まずUTF-8としてバイト型配列に変換します。次に、バイト型配列を1バイトずつチェックしていき、"0xC2" "0xA0"と並んで来た場合に"0x20"に置き換えるようにしています。あとは、返還後の文字列をテキストボックスに書き込んでいます。

使用法

まず、上記スクリプトを名前を付けてファイルに保存し、PowerShellのプロンプトで実行してください。


スクリプトを実行すると、このような画面が表示されます。



画面が表示されたらテキストボックスにソースコードを貼り付け、[変換]ボタンをクリックします。



変換が終わるとこのようなメッセージが表示されます。

変換後の文字列が同じテキストボックスに表示されますので、このテキストボックスのソースコードをコピーして使ってください。






【Chrome】検索結果のページ移動をキーボードで出来るようにする拡張機能を入れてみた

Googleで検索して得られる検索結果の画面で、次のページを表示する際マウスを使って行っていると思いますが、このマウスの操作がめんどくさいと思ったことありませんか?できればキーボードで操作できるようにならないかなって思ったことありませんか?

私はけっこう前から思ってたんですけど、Chromeには標準でそういうショートカットはないのであきらめてました。

ところがこの前、何気なくChromeの拡張機能を見ていたらこんなものを見つけてしまいました。

【Windows】キーボードだけでウィンドウを移動する方法

前回、キーボードだけでウィンドウサイズの変更を行う方法を書きましたが、今回はウィンドウの移動です。

では手順です。

[Alt] + [Space] ⇒ [M]

たとえばメモ帳で試してみますと、キーボードで[Alt] + [Space]を押すとこのようなメニューが表示されます。

ここで[M]キーを押すとウィンドウを移動できるモードに切り替わります。

あとは、矢印キーを使って移動します。

移動モードを終了するには[Enter]を押します。


実行例



【Windows】キーボードだけでウィンドウサイズを変更する方法

通常はマウスを使ってウィンドウサイズを変更すると思いますが、まれにマウスが無かったり、ワイヤレスマウスを使ってて急に電池が切れて使えなくなってしまうことがあったりします。そういった場合キーボードだけで操作する方法を覚えておくと役に立つことがあります。

では手順です。

[Alt] + [Space] ⇒ [S]

たとえばメモ帳で試してみますと、キーボードで[Alt] + [Space]を押すとこのようなメニューが表示されます。

ここで[S]キーを押すとウィンドウのサイズを変更できるモードに切り替わります。

あとは、矢印キーを使ってサイズを変更します。

←→ で幅、 ↑↓ で高さを変更できます。

変更モードを終了するには[Enter]を押します。


実行例



【サクラエディタ】タブの切り替えを行うショートカット



サクラエディタでタブを切り替える方法です。

次のタブ

[Ctrl] + [Tab]




前のタブ

[Shift] + [Ctrl] + [Tab]




このタブを切り替えるショートカットは、Chromeなどのブラウザでも同じですので覚えておくと便利だと思います。

【Windows】コンテキストメニューを表示するショートカット

Windowsを使っていると右クリックしてコンテキストメニューを表示させる機会が多いのですが、このコンテキストメニューをキーボードからショートカットで表示することが出来ます。

すごく簡単です。

まず、ファイルを選択します。



選択したら [Shift] + [F10] を押します。

[Shift] + [F10]



するとこのようにコンテキストメニューが表示されます。


Lightning用の変換アダプタを買ってみた

先日、スマホをiPhoneに買い替えたのですが、充電用ケーブルなどが付属でついてきたものしかなく、ちょっと困っていました。

いままではAndroidのスマホ使っていたので、マイクロUSBケーブルは長いものを含めて何本かあるんですけどね。

うーん、どうしよっかと悩んでいたところ、Amazonでこんなものを見つけてしまいました。

Lightning用の変換アダプタです。

なんと5個も入ってて千円切ってます!

さっそく注文してみました。


まず届いた商品ですが、このような袋で送られてきました。



中には5個のアダプタと、おまけでシリコン製のスマホスタンドが入ってます。



手に取ってみるとこんな感じです。



実際にマイクロUSBに挿してみました。

特に引っかかるとかなく難なく差し込めました。
また、ゆるくて抜けてしまうということもないです。


最後に、iPhoneに繋いでみて充電出来るか試してみました。

まったく問題ないですね。当たり前ですが、ちゃんと充電できました。

あと、一応5個全部確認しましたが、不良品等は一つもありませんでした。

5個でこの値段はおすすめだと思います。
Android用のケーブルも無駄にならなくていいと思います。