技術メモ

【Excel】日本地図へ都道府県単位で色付け

Excel2016の機能を利用して、下のような日本地図を作成できます。

作成した日本地図 ダウンロードしたExcelの色付けと書かれた列の値を書き換えるだけで、該当の都道府県に色が付きます。

必要な設定と、作成した図をpngファイルとして保存できる機能を追加したExcelファイルをご用意いたしました。以下からダウンロードしてご利用ください。

ダウンロードはこちらから(324KB)

Excelを開くと上記の黄色い警告が表示されるので、それぞれのボタンをクリックして有効化してください。

Xperia XZ1(G8342)が充電できなくなったので修理してもらった話

海外版SIMフリーのXperia XZ1(G8342)という機種をAmazonで購入して半年ほど経ったころに、USBを挿しても充電できない状態になってしまいました。

最初は、半年しか経っていなかったので保証の範囲内で修理してもらえるものと思っていましたが、海外モデルの場合は保証が付いていないということを、故障した後で知りました。
初めて海外モデルを購入したのですが、購入前にもっと確認しておくべきでした・・・(SIMフリーの良い機種がこれ以外になかったんですよね・・・)

困っていたところ、ネットで町のお店という海外モデルのスマホを修理してくれるお店を発見しました。

修理可能か問い合わせしたところ、すぐにメールが返ってきました。
金額は税込み12,960円で、お店まではレターパックライトなどで送付する旨の回答がありました(お店までの送料360円は私の負担)。

ほかにお願いできる場所もなかったので、お願いすることにしました。

お願いした後も、連絡をこまめに頂いて安心できました。
無事に修理できたとの旨の回答を頂き、実際に修理してもらった品を確認したところ、外見上も修理したことが分からない状態であり、安心しました(こじ開けた跡があったらどうしようかと不安でしたが、心配無用でした)。

目的であった充電も問題なく行え、USBを利用してPCへのデータ転送を行うこともでき、助かりました。

このサイトは、こういった内容を紹介するものではないのですが、意外と海外モデルの修理についての情報が少なかったので紹介いたしました。

困っている方は一度相談してみてはいかがでしょうか。

◆修理していただいたお店

町のお店

https://machinoomise.com/html/page9.html

 

 

【SQL Server】複数行データをセミコロン区切りの1行に纏める

※SQL Server 2016にて確認

-- ダミーテーブル
with dummyData as (
	select 'AGroup' as code, 'A01' as child
	union 
	select 'AGroup' , 'A02'
	union
	select 'AGroup' , 'A03'
	union
	select 'BGroup' , 'B01'
	union 
	select 'BGroup' , 'B02'
	union
	select 'BGroup' , 'B03'
	union
	select 'CGroup' , 'C01'
)

select
	code,
	left(hoge.child, len(hoge.child) - 1) as child	--末尾のセミコロンを除く
from
	(
	select distinct
		dummy.code,
		(
			select 
				dummyData.child + ';' AS [text()]	--セミコロン区切りしたい列を指定
			from 
				dummyData
			where
				dummyData.code = dummy.code		--大元のfrom句で指定されているテーブルとJOIN
			for xml path ('')
		) as child
	from
		dummyData dummy
	) hoge

■実行結果

codevalue
AGroupA01;A02;A03
BGroupB01;B02;B03
CGroupC01

【SQL Server】セミコロン区切りの1行データを複数行に変換する

※SQL Server 2016にて確認

-- 1つのコードに複数のデータが入っているダミーテーブル
with dummyData as (
	select 'AGroup' as code, 'A01;A02;A03' as child
	union
	select 'BGroup' , 'B01;B02;B03'
)

select 
	code,	--元々のコード
	value	--childを;で分割した値が入る
from
	dummyData
	cross apply string_split(child, ';')	--セミコロンで区切る

■実行結果

codevalue
AGroupA01
AGroupA02
AGroupA03
BGroupB01
BGroupB02
BGroupB03

【VB.NET】RSS読み込み時、「リモート パーティがトランスポート ストリームを終了したため、認証に失敗しました。」が発生する

■現象

電光ニュースのYahooのRSS読み込み時、「System.Net.WebException: 接続が切断されました: 送信時に、予期しないエラーが発生しました。。 —> System.IO.IOException: リモート パーティがトランスポート ストリームを終了したため、認証に失敗しました。」エラーになる現象を確認。

YahooがTLS1.2より前のプロトコルに対応しなくなったことが原因。

■対応

TLS1.2を有効にするため、.NET Framework4から4.6に上げた後、RSS取得処理の前に、

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

を追加したところ、エラー無く取得できるようになった。

【SQL Server】invoke-sqlcmd で 重複する列名は~ エラーが発生する

■エラー内容

「invoke-sqlcmd : 重複する列名は、SQL PowerShell では許可されません。列を繰り返す場合、重複する列には Column_Name AS New_Name の形式で列の別名を使用します。」

■原因

invoke-sqlcmdの-InputFileで指定したSQLファイルの文字コードがSJISであったために、as句で付与した列別名が文字化けしてしまったために発生していた。

SQLファイルの文字コードをサクラエディタなどでUTF-8に修正したところ、エラーが解消された。