FinTech Dialy

FinTech Diary

ソーシャルレンディング/ロボアドバイザー等のフィンテックを実際に利用した感想などを書いていますφ(..)

【Vtuber】私的萌えるVtuberまとめ

最近の生きる希望です。

 

四天王

dic.nicovideo.jp

 

キズナアイ

たのしい

www.youtube.com

 

ミライアカリ

かわいい

www.youtube.com

 

輝月ルナ

おもしろい

www.youtube.com

 

電脳少女シロ

癒し

www.youtube.com

 

 

にじさんじ

www.ichikara.co.jp

 

月ノ美兎

どはまりしました。

www.youtube.com

 

家長むぎ

かわいい。守ってあげたくなる圧倒的妹力。

www.youtube.com

 

個人Vtuber

応援したいですね。

 

名取さな

最近の一押しです。

Vtuber界に舞い降りた新米バーチャルナースさん。

なんともたどたどしい感じが、非常によいです。圧倒的な妹力があります。

www.youtube.com

 

時折「せんせえ♡」って呼んでくれるのがまたよいですね。

バーチャルサナトリウムに引き籠りたくなります。

 

 

薬袋カルテ

さなちゃんと違ってお姉さんな感じ。回を追うごとにクオリティが上がっていくのすごい。

www.youtube.com

 

のらきゃっと

もふりたい。

www.youtube.com

 

 

おまけ

 のじゃおじ「のじゃぁ……んっ…んじぁ…あっ…ぁ…あっんっ…」

www.nicovideo.jp

 

リスト

Twitterのリストです。

気になるVtuberを随時追加しています。

twitter.com

 

ランキング

厳しい世界><

virtual-youtuber.userlocal.jp

 

Vtuber関連銘柄

申し訳程度の金融要素。

kabutan.jp

 

 Vtuberファンド

個人でも投資できるクラウドファンドとかでないかな(・・?

www.gamebusiness.jp

 

 バーチャルキャスト

 申し訳程度のIT要素。

 ニコ動プレミアム会員としては、ニコ同には是非頑張ってほしい所ですね。

www.itmedia.co.jp

 

 おわり

また一つ生きる楽しみが増えました。

ゴールデンウイークが楽しみです(⌒∇⌒)

 

 

【クレジットカード】メインカードの変更を検討してみる(ライフカード⇒JCB CARD W)

メインで使用していたライフカードの改悪を機に、メインカードの変更を検討しましたφ(..)

 

改悪を機に変更を検討

 

「誕生月ポイント5倍」で有名なライフカード。

私も1年以上メインで利用し続け、限度額も増額して貰えたりと大変お世話になってきましたが、今回の改悪を機に利用を見直すことにしました。

誕生月のポイントが3倍に変更された他、様々な点が改悪されました…。

詳細は下記記事が大変参考になります。

matsunosuke.jp

 まつのすけさんのサイトにはクレカに関する記事も多いのですが、内容が非常に充実しており、いつも参考にさせて頂いていますm(_ _)m

 

 

現在使用しているカード

私が現在利用している2つのカードについて整理しました。

 

ライフカード(メイン)

利用シーン

・携帯やニコ動の利用料金支払い(リカーリング)

・普段使い(実店舗での利用やAmazon等のネットショッピング)

 

//用語メモφ(..)

カーリング…クレジットカードの継続課金取引のこと。

参考:リカーリング - Wikipedia

使い始めた理由

・誕生月ポイント還元率5倍(還元率2.5%)

 ライフカードといえばこれ。だったが、改悪で誕生月でも3倍(還元率1.5%)に…><;

・初年度ポイント1.5倍(還元率0.75%)

・年間利用額別の還元率アップ

⇒年間利用金額50万円以上で還元率+0.25%など、利用額に応じたステージ制。

ビットコインに交換できる

⇒今後もこのような新しいサービスの提供に期待したのだが…改悪orz

 

参考1:ライフカードがポイントをビットコインに交換可能に! - The Goal

参考2:「ライフカード」のメリット、人気の秘密とは?

 

//用語メモφ(..)

ポイント還元率… 利用額に対して付与されるポイントの割合。例えば、1000円利用で5円分のポイントがつく場合、還元率0.5%となる。

参考:ポイント還元率とは!?高還元率クレジットカード特集! | クレジットカード大学

 

ビューカード(サブ)

利用シーン

・通勤定期券/Suicaオートチャージ

 上記はポイント3倍で還元率1.5%になる。その他のシーンではライフカードを使用。

使い始めた理由

・通勤定期券/Suicaオートチャージでポイント3倍

・定期券Suica一体型なので、1枚で済む。

 コンビニでの支払はSuicaを使っている(クレカより決済が早いし楽)。

 

年間利用状況

まとめてみた。月平均で約7万8千円、年間で100万円以上カードで支払っていることがわかった。

改めて見ると結構使ってるもんですね(..)

支払年月 支払金額
ライフ View 合算
2017年 5月 3,680 55,485 59,165
  6月 54,927 50,467 105,394
  7月 8,108 50,679 58,787
  8月 6,234 50,672 56,906
  9月 17,797 35,870 53,667
  10月 30,844 35,845 66,689
  11月 46,520 5,000 51,520
  12月 112,978 5,000 117,978
2018年 1月 200,245 31,060 231,305
  2月 5,252 26,060 31,312
  3月 27,726 31,060 58,786
  4月 92,029 31,060 123,089
年間      合計 606,340 408,258 1,014,598
  平均 93,283 62,809 78,046

  

補足

 ・Viewカードの利用額が5万台から3万台に下がっているのは、携帯・ニコ動の支払いをライフカードに変更したため(スペシャルステージ狙い)。

Viewカードの利用額が途中5000円になっているのは、休職していたため。

 

 年間利用額はクレカ選びの重要な指標となるので、ちょっと面倒ですが、一度計算してみることをお勧めします(っ・ω・)っ

 

 

 次期メインカードの選定

ライフカードに代わるメインカードを検討します。

 

最終候補

年会費・還元率・自身の年間利用金額等を元に検討した結果、以下の3つが最終候補となった。

 

JCB CARD W

・Orico Card THE POINT

・P-one Wiz

 

年会費や還元率等の基本的な情報は価格.com等の情報サイトでも確認できますが、詳細な情報については、まつのすけさんの記事が私の知る限り最も充実しており、検討の際非常に参考になりました。

 

参考1:高還元率のおすすめクレジットカードまとめ!2018年最新版 - The Goal

参考2:クレジットカードの「真の専門家」がおすすめするクレカを大公開! - The Goal

参考3:JCB CARD Wはポイント2倍がお得!メリット・デメリットを徹底解説 - The Goal

参考4:Orico Card THE POINT(オリコカードザポイント)はネット通販で驚きの高還元!メリット・デメリット・使い方まとめ - The Goal

参考5:P-one Wizは年会費無料で還元率1.5%!メリット・デメリット・年会費の仕組まとめ - The Goal

 

比較検討

最終候補からさらに一つに絞り込む。

参考サイトを参考にしつつ、3つのカードについて自分の気になる観点を表にした。

項目 JCB CARD W Orico Card
THE POINT
P-one Wiz
申込可能年齢 18歳~39歳 18歳以上 18歳以上
年会費(税込) 無料 無料 無料
ポイント還元率 1.00% 1.00% 1.495%
特約店 Amazonで還元率2%
JCBオリジナルシリーズパートナー
特約店なし
ただし、入会から半年は還元率2%
レンタカー・パッケージツアー割引(3~8%)
ポイント有効期限 2年 1年 約1~2年
ポイント対象金額 月間合計利用額の1000円につき1ポイント
⇒100円単位切捨
月間合計利用額の100円につき1オリコポイント
⇒10円単位切捨
1取引の100円毎に1%割引
毎回10円単位切捨
   +
1%OFFされた利用金額の1000円につき1ポケットポイント
発行開始 2017年10月23日 2014年6月16日 2015年7月21日

 

こっから結構悩みました(- -;)

でも色々考えてるときが一番楽しいかも(・・?

 

参考1:JCB CARD Wとオリコカード ザポイントの違いを比較!どっちがお得か徹底解説 - The Goal

参考2:年会費無料のポイント高還元率カード 『Orico Card THE POINT』 登場!〜 Amazon.co.jp等のご利用で還元率2.0%以上を実現!! 〜たまったポイントはAmazonギフト券、T-POINT等へリアルタイムに交換可能!|株式会社オリエントコーポレーション

参考3: 「請求時1%OFF」+「ポイント」 様々な機能・特典を賢く(Wizard)組み合わせ(With) 業界トップクラスの高還元率カード P-one Wizデビュー!

参考4:JCB、「プラチナ」「ポイント優遇」「女性向けサービス」をコンセプトに3種類のカードを新たに募集開始 | JCB グローバルサイト

 

検討結果

検討の結果、JCB CARD Wに決めました。

まあタイトルでネタばれしちゃってますが…

 

JCB CARD Wに決めた理由

Amazonで還元率2%

 Amazonはよく使うので。ちなみにスタバは3%だが、たぶんほとんど行くことはない…

・改悪リスク

他の2つのカードと比べて、JCB CARD Wは新しく発行されたカード。

ライフカード然り、このところ高還元率カードの改悪が相次いでいる。

せっかく新しいカードを作ったのにすぐに改悪されるとか悲しすぎるので、一番最近発行されたもので、恐らく当面改悪されないであろうJCB CARD Wを選択した。

 

カード見直しのすすめ

カードの見直しは、自分の普段の支払を見直すよい機会になりました。

もしなんとなく最初に作ったカードを使い続けている方は、一度見直してみると、新たな発見などもあり面白いですよ^_^

 

 

 

おまけ

お得な小ネタなど。

 

ただでカードは作らない

カードを発行する際は、必ずハピタス経由で発行申請を行うようにしています。

今回のJCB CARD Wの発行で、3500円分のポイントが貰えました。

m.hapitas.jp

ただ、カードの発行状況は信用情報機関を通じてカード会社各社で共有されているので、ポイント目当てであまり短期間にカードを作りすぎると、「こいつ金に困ってるのか?」と判断され審査で落ちるようになりますので、その点はお気をつけて…

 

カード発行以外にも、銀行・証券・FX口座の開設等でもポイントを獲得することができるので、新しくサービスに登録する際には、必ずハピタスに広告がでていないか確認するようにしています。

 

ただでカードは使わない

住信SBIネット銀行には、前月の利用状況に応じて毎月ポイントが貯まるスマートプログラムというポイント制度があります。1ポイント1円で、500ポイントから、100ポイント単位で現金に交換できます。

 

簡単な条件だと、
・給与・年金の受取/定額自動入金サービスいずれかの利用で30ポイント
・毎月1件以上の口座振替ありで5ポイント
等があります。

 

給与の受け取り口座とクレカの引落口座を住信SBI銀行に設定しておけば、それだけで毎月自動的に35ポイント溜まっていきます。一年で35×12=450円分のポイントが貰える計算になります。

 

空前の超低金利時代にこの特典はありがたい限りです。
メガバンクの預金金利は年0.001%なので、預金金利で年450円貯めようとしたら、4500万円(税金を考慮するとそれ以上)必要になります…∩(´;ヮ;`)∩

 

www.netbk.co.jp

 

社会に出てからというもの、金利は下がり税金は上がり…
俗にいうゆとり世代ですが生活にゆとりはありませんので、利用できるサービスは極力活用していきたいところです。

 

 

クレカの付帯保険について

私は滅多に海外旅行に行かないのであまり気にしていませんが、よく海外旅行に行かれる方の場合は、付帯保険について知っておくとよいかもしれません。

自動付帯のカードと利用付帯のカードを両方持っている場合には、飛行機等の交通費は利用付帯のカードで支払を行うと、万一の際どちらの保険も適用されます。

詳細な条件はカードによって異なるので、旅行に行く前に要確認φ(..)

 

//用語メモφ(..)

自動付帯…カードを所持していれば自動で保険が適用される

利用付帯…旅費の支払いにそのカードを使用した場合のみ保険が適用される

 

参考1:自動付帯と利用付帯の違いをチェック|究極の海外旅行保険付きクレジットカード

参考2:海外旅行保険が「自動付帯」にもかかわらず、年会費無料のお得なクレジットカードはコレだ!「利用付帯」と「自動付帯」のカード活用法|クレジットカード活用術|ザイ・オンライン

 

 

 

おわり

マイナス金利増税等今後も厳しい環境が続きそうですが、探せばお得なサービスは色々ありますし、ソーシャルレンディングやロボアドなど、個人向けの投資サービスも充実しつつあります。

 

クレカやポイントサイト等でポイントを稼ぎつつ、ソーシャルレンディング等の投資で資産を増やしていき、一緒に真のゆとり世代を目指しましょう٩( 'ω' )و

 

 

 

 

【プログラミング】支払可能見込額と総量規制利用可能枠を算出する【JavaScript】

支払可能見込額と総量規制利用可能枠を算出するJavaScriptを作成しましたφ(..)

支払可能見込額と総量規制限度額

クレジットの割賦と融資を規制するために設けられた限度額。
今回は、年収等必要事項を回答すると限度額を算出するJavaScriptを作成した。

支払可能見込額とは

支払可能見込額…クレジットのショッピングを規制する法律(割賦販売法)で定められたショッピング(割賦)に対する限度額。包括クレジット(クレジットカード)の場合は、以下に0.9を掛けた値。

支払可能見込額=年収-生活維持費(※1)-年間請求予定額(※2)

※1.生活維持費

下記参照。 f:id:natsumedeus:20180326001502p:plain

※2.年間請求予定額

クレジット利用残高(割賦)。一括払いは対象外。各カード会社での利用残高の合計(割賦利用残高は信用情報機関を通して各社間で共有されている)。

[参考①]支払見込可能額の算出方法

[参考②]割賦販売法施行に伴うご利用可能枠の設定ルールについて



用語メモφ(..)

・個別クレジット: ショッピングクレジット、個品割賦とも。カードを使わない個別契約の分割販売のこと。カードを使用しないで分割で商品を購入する場合、都度信販会社と契約を結ぶため。例えば、家電量販店AAAでパソコンを、次に楽器店BBBBでピアノを、どちらも分割払いで購入した場合、2回契約する(各店舗でそれぞれ契約書を記入する)ことになる。

・包括クレジット: クレジットカードのこと。カード会社と契約を結ぶ(カードを作る=契約する)ことで、商品購入の都度契約を結ぶ必要がなくなる。契約するのはカード発行時の時のみで、店舗での商品購入時に都度契約を結ぶことはしないため、包括クレジットという。


総量規制限度額とは

総量規制限度額…クレジットのキャッシングを規制する法律(貸金業法)で定められたキャッシング対する限度額。なお、銀行のカードローンは総量規制の対象外。

総量規制利用可能枠=総量規制限度額(※1)-総量規制対象残高(※2)

※1.総量規制限度額

総量規制限度額=年収÷3

※2.総量規制対象残高

クレジットカードや消費者金融で利用しているキャッシングの残高。各社での利用残高の合計(融資利用残高は信用情報機関を通して各社間で共有されている)。なお、銀行のカードローンは総量規制の対象外。

[参考①]総量規制について(日本貸金業協会)

[参考②]借入限度額はいくらまで?総量規制との関係について




支払可能見込額の算出

支払可能見込額を算出するJavaScriptです。

①~④の項目に回答し、「支払可能見込額を表示」ボタンを押下して下さい。

支払可能見込額がホップアップで表示されます。

 

①年収(万円単位)

②年間請求予定額(万円単位)

③住宅費用有無(住宅ローン又は賃貸負担の有無)

有り 無し

④同一生計者数(本人・別居者含む)

 

 

総量規制利用可能枠の算出

総量規制利用可能枠を算出するJavaScriptです。

①~②の項目に回答し、「総量規制利用可能枠を表示」ボタンを押下して下さい。

総量規制利用可能枠がホップアップで表示されます。

 

①年収(万円単位)

②総量規制対象利用残高(万円単位)

 

 



コード

以下は共通の仕様。
・入力欄の最大桁数は10桁。
・入力欄に数値以外を入力した場合、エラーメッセージを表示。
・入力欄に小数点以下を入力した場合、小数点以下は切り捨て。
・入力欄が空欄だった場合、0とみなす。
・算出した値が0未満の場合、0に置換。

支払可能見込額の算出

・算出式
 支払可能見込額 = 年収-生活維持費-年間請求予定額

HTML部分

<p>①年収(万円単位)</p>
<p><form name = fr_income><input name="income" type="text" value="0" size = "10" maxlength = "10"/></form></p>

<p>②年間請求予定額(万円単位)</p>
<p><form name = fr_bill><input name="bill" type="text" value="0"  size = "10" maxlength = "10"/></form></p>

<p>③住宅費用有無(住宅ローン又は賃貸負担の有無)</p>
<p><form name = fr_house></p>
<p><input checked="checked" name="house" type="radio" value="exist" />有り <input name="house" type="radio" value="none" />無し</p>
<p></form></p>

<p>④同一生計者数(本人・別居者含む)</p>
<p><form name = fr_people>
<select name="people">
<option selected="selected" value="one">1人</option>
<option value="two">2人</option>
<option value="thr">3人</option>
<option value="fou">4人以上</option>
</select>
</form></p>

<p><form><input type="button" value="支払可能見込額を表示" onclick="show_kapu_available()" /></form></p>

JavaScript

<script type="text/javascript">// <![CDATA[
function show_kapu_available(){
        income_amount = document.fr_income.income.value;
        if(isNaN(income_amount )){
                alert("年収には数値を入力して下さい"); 
                return;
        }
        bill_amount = document.fr_bill.bill.value;
        if(isNaN(bill_amount )){
                alert("年間請求予定額には数値を入力して下さい"); 
                return;
        }
        people_count  = document.fr_people.people.value;
        if(document.fr_house.house[0].checked){
                switch(people_count) {
                    case 'one':
                        life_amount = 90;
                        break;
                    case 'two':
                        life_amount = 136;
                        break;
                    case 'thr':
                        life_amount = 169;
                        break;
                    case 'fou':
                        life_amount = 200;
                        break;
                }
        }
        else  {
                switch(people_count) {
                    case 'one':
                        life_amount = 116;
                        break;
                    case 'two':
                        life_amount = 177;
                        break;
                    case 'thr':
                        life_amount = 209;
                        break;
                    case 'fou':
                        life_amount = 240;
                        break;
                }
        }
        kapu_available = Math.floor(income_amount)  - Math.floor(bill_amount)  - life_amount;
        if (kapu_available < 0){
                kapu_available  = 0;
         }

        alert("支払可能見込額=" + kapu_available + "万円"); 
}
// ]]></script>

総量規制利用可能枠算出

・算出式
 総量規制利用可能枠 = 年収÷3-総量規制対象利用残高

HTML部分

<p>①年収(万円単位)</p>
<p><form name = fr_income2><input name="income2" type="text" value="0" size = "10" maxlength = "10"/></form></p>

<p>②総量規制対象利用残高(万円単位)</p>
<p><form name = fr_bill2><input name="bill2" type="text" value="0"  size = "10" maxlength = "10"/></form></p>

<p><form><input type="button" value="総量規制利用可能枠を表示" onclick="show_yusi_available()" /></form></p>

JavaScript

<script type="text/javascript">// <![CDATA[
function show_yusi_available(){
        income_amount = document.fr_income2.income2.value;
        if(isNaN(income_amount )){
                alert("年収には数値を入力して下さい"); 
                return;
        }
        bill_amount = document.fr_bill2.bill2.value;
        if(isNaN(bill_amount )){
                alert("総量規制対象利用残高には数値を入力して下さい"); 
                return;
        }
        yusi_gendo = income_amount/3;
        yusi_available =  Math.floor(yusi_gendo) -Math.floor(bill_amount);
        if (yusi_available < 0){
                yusi_available  = 0;
         }

        alert("総量規制利用可能枠=" + yusi_available + "万円"); 
}
// ]]></script>



JavaScriptの参考

主に以下参考にさせて頂いた。

[参考①]はてなブログでJavaScriptが使えることを知りました

[参考②]JavaScriptによるフォームの制御

[参考②]要注意!?JavaScriptの数値チェック6のテクニック




クレジットカードAPI

経済産業省が色々検討しているようで、注目している。
API公開されたらもうちょっと面白いことができる…かな?

www.meti.go.jp


おわり

JavaScriptは新人研修で少し触ったことがあったのですが、結局配属先は汎用機系のPJだったので使うことはなく…
約3年ぶりにやってみましたが、Webページで何か動くってのはやっぱり楽しいですね٩( 'ω' )و

【プログラミング】文字コードを変換するユーザー定義関数(ASCII⇒BASE64/EBCDIC)【エクセル】

仕事のついでに作った副産物的なものです。

また使う機会があるか微妙ですが、どなたかの参考になる可能性も微粒子レベルで存在しているかもしれないので、一応φ(..)メモしておきます。

 

 

作成した関数と変換結果

エクセルのマクロ(VBA)で、文字列の形式を変換するユーザー定義関数を作成した。関数の引数にセル番地を入力すると、参照先の文字列を各形式に変換する。

作成した関数と変換結果の例は以下の通り(例:セルA1=Natsume)。

No 文字列 関数 形式 備考
1 Natsume 文字列 プレーンテキスト(ASCII)
2 01001110011000010111010001110011011101010110110101100101 =Str2Bin(A1) バイナリ ASCIIコード値(2進)
3 7897116115117109101 =Str2Dec(A1) デシマル ASCIIコード値(10進)
4 4E617473756D65 =Str2Hex(A1) ヘキサ ASCIIコード値(16進)
5 TmF0c3VtZQ== =Str2Base64(A1) Base64 電子メール等で使用される文字コード
6 D581A3A2A49485 =Asc2Ebc(A1) EBCDIC メインフレーム等で使用される文字コード

 

VBAのコード

[1]参考サイトを参考に作成した関数

'文字列をバイナリ列に変換
Function Str2Bin(strText)
    hData = Str2Hex(strText)
    Str2Bin = Hex2Bin(hData)
End Function

'文字列をHexに変換
Function Str2Hex(strText)
  bData = String2Bytes(strText)
  sHex = Bytes2Hex(bData)
  Str2Hex = strConv(Replace(sHex, vbLf, ""), vbUpperCase)
End Function

'HexをBase64に変換
Function Hex2Base64(strText)
  bData = Hex2Bytes(strText)
  sBase64 = Bytes2Base64(bData)
  Hex2Base64 = Replace(sBase64, vbLf, "")
End Function

'文字列をBase64に変換
Function Str2Base64(strText)
  hData = Str2Hex(strText)
  sBase64 = Hex2Base64(hData)
  Str2Base64 = Replace(sBase64, vbLf, "")
End Function

 参考①:VBScriptでBase64やHex、バイナリを扱う関数をまとめてみた – でじたぬ

 

 

 

'Hexをバイナリ列に変換
Function Hex2Bin(strText)
s = "0123456789ABCDEF"
t = "0000000100100011010001010110011110001001101010111100110111101111"
For i = 1 To Len(strText)
    p = InStr(s, Mid(strText, i, 1))
    bit1 = Mid(t, (p - 1) * 4 + 1, 1)
    bit2 = Mid(t, (p - 1) * 4 + 2, 1)
    bit3 = Mid(t, (p - 1) * 4 + 3, 1)
    bit4 = Mid(t, (p - 1) * 4 + 4, 1)
    bita = bit1 & bit2 & bit3 & bit4
    Hex2Bin = Hex2Bin & bita
    Next i
End Function

'文字列をDec(ASCIIコード)に変換
Function Str2Dec(strText)
For i = 1 To Len(strText)
    p = Mid(strText, i, 1)
    d = Asc(p)
    Str2Dec = Str2Dec & d
    Next i
End Function

参考②:VBAで4桁の16進数から16桁の2進数変換 -VBAで4桁の16進数(FFFFとか)を2- Visual Basic(VBA) | 教えて!goo

 

 

 

'ASCIIをEBCDICに変換
Function Asc2Ebc(strText)
Dim AscCode As String
Dim EbcCode As String
Dim ArrayLen As Integer: ArrayLen = 256
Dim AscArray() As String
Dim EbcArray() As String
ReDim AscArray(ArrayLen)
ReDim EbcArray(ArrayLen)
Dim InCode As Long
Dim HexCode As String

AscCode = "000000100020001A00200026002D25332546254F2560256A007B007D003F0030" & _
          "000100110021001A001A2525002F25350061006A2141256B0041004A001A0031" & _
          "000200120022003221232527252425370062006B0073256C0042004B00530032" & _
          "000300130023003321562529252625390063006C0074256D0043004C00540033" & _
          "0004001400240034215725632528253B0064006D0075256F0044004D00550034" & _
          "000500150025003521222565252A253D0065006E007625730045004E00560035" & _
          "000600160026003621262567252B253F0066006F0077212B0046004F00570036" & _
          "000700170027003725722543252D2541006700700078212C0047005000580037" & _
          "00080018002800382521213C252F2544006800710079001A0048005100590038" & _
          "0009001900290039252325222531212E00690072007A001A00490052005A0039" & _
          "000A001A002A003A003F0021003F003A254825522561001A001A001A001A001A" & _
          "000B001B002B003B002E0024002C0023254A25552562001A001A001A001A001A" & _
          "000C001C002C003C003C002A00250040254B25582564001A001A001A001A001A" & _
          "000D001D002D003D00280029005F0027254C255B2566001A001A001A001A001A" & _
          "000E001E002E003E002B003B003E003D254D255E2568001A001A001A001A001A" & _
          "000F001F002F003F2822224C003F0022254E255F2569001A001A001A001A00FF"

EbcCode = "00102030405060708090A0B0C0D0E0F001112131415161718191A1B1C1D1E1F1" & _
          "02122232425262728292A2B2C2D2E2F203132333435363738393A3B3C3D3E3F3" & _
          "04142434445464748494A4B4C4D4E4F405152535455565758595A5B5C5D5E5F5" & _
          "06162636465666768696A6B6C6D6E6F607172737475767778797A7B7C7D7E7F7" & _
          "08182838485868788898A8B8C8D8E8F809192939495969798999A9B9C9D9E9F9" & _
          "0A1A2A3A4A5A6A7A8A9AAABACADAEAFA0B1B2B3B4B5B6B7B8B9BABBBCBDBEBFB" & _
          "0C1C2C3C4C5C6C7C8C9CACBCCCDCECFC0D1D2D3D4D5D6D7D8D9DADBDCDDDEDFD" & _
          "0E1E2E3E4E5E6E7E8E9EAEBECEDEEEFE0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFFF"

For i = 1 To ArrayLen
    a = i * 4 - 3
    e = i * 2 - 1
    AscArray(i) = Mid(AscCode, a, 4)
    EbcArray(i) = Mid(EbcCode, e, 2)
Next i

For k = 1 To Len(strText)
    InCode = Asc(Mid(strText, k, 1))
    HexCode = Right$("0000" & Hex$(InCode), 4)
    For l = 1 To ArrayLen
        If HexCode = AscArray(l) Then
            Asc2Ebc = Asc2Ebc & EbcArray(l)
        End If
    Next l
Next k

End Function

参考③:VBS/EBCDICファイルをシフトJISに変換する | Tipi

参考④:EBCDIC - Wikipedia

参考⑤:ASCII 文字セットと EBCDIC 文字セット(IBM Knowledge Center)

参考⑥:【69542】10進→16進8桁への変換(Excel VBA質問箱 IV )

 

 

[2]参考サイトから引用させて頂いた関数

注:以下も[1]と一緒にマクロに保存しておかないと[1]の関数も動きません([1]の関数内で使用しているため)

'文字列をバイナリに変換
Function String2Bytes(strText)
  Set objEncoder = CreateObject("System.Text.UTF8Encoding")
  String2Bytes = objEncoder.GetBytes_4(strText)
  Set objEncoder = Nothing
End Function

'バイナリを文字列に変換
Function Bytes2String(Bytes)
  Set objEncoder = CreateObject("System.Text.UTF8Encoding")
  Bytes2String = objEncoder.GetString((Bytes))
  Set objEncoder = Nothing
End Function

'文字列をバイナリに変換 (Shift_JIS)
Function SJIS2Bytes(strText)
  Set objStream = CreateObject("ADODB.Stream")
  objStream.Open
  objStream.Type = 2  'adTypeText
  objStream.Charset = "Shift_JIS"
  objStream.WriteText strText
  objStream.Position = 0
  objStream.Type = 1  'adTypeBinary
  SJIS2Bytes = objStream.Read
  objStream.Close
  Set objStream = Nothing
End Function

'バイナリを文字列に変換 (Shift_JIS)
Function Bytes2SJIS(Bytes)
  Set objStream = CreateObject("ADODB.Stream")
  objStream.Open
  objStream.Type = 1  'adTypeBinary
  objStream.Write Bytes
  objStream.Position = 0
  objStream.Type = 2  'adTypeText
  objStream.Charset = "Shift_JIS"
  Bytes2SJIS = objStream.ReadText
  objStream.Close
  Set objStream = Nothing
End Function

'バイナリをBase64に変換
Function Bytes2Base64(Bytes)
  Set objElement = CreateObject("Msxml2.DOMDocument").createElement("base64")
  objElement.DataType = "bin.base64"
  objElement.NodeTypedValue = Bytes
  Bytes2Base64 = objElement.Text
  Set objElement = Nothing
End Function

'Base64をバイナリに変換
Function Base642Bytes(strText)
  Set objElement = CreateObject("Msxml2.DOMDocument").createElement("base64")
  objElement.DataType = "bin.base64"
  objElement.Text = strText
  Base642Bytes = objElement.NodeTypedValue
  Set objElement = Nothing
End Function

'バイナリをHexに変換
Function Bytes2Hex(Bytes)
  Set objElement = CreateObject("Msxml2.DOMDocument").createElement("hex")
  objElement.DataType = "bin.hex"
  objElement.NodeTypedValue = Bytes
  Bytes2Hex = objElement.Text
  Set objElement = Nothing
End Function

'Hexをバイナリに変換
Function Hex2Bytes(strText)
  Set objElement = CreateObject("Msxml2.DOMDocument").createElement("hex")
  objElement.DataType = "bin.hex"
  objElement.Text = strText
  Hex2Bytes = objElement.NodeTypedValue
  Set objElement = Nothing
End Function

引用元:VBScriptでBase64やHex、バイナリを扱う関数をまとめてみた – でじたぬ

 

 

ASCII⇒EBCDICの変換について

変換テーブルは以下のように作成した。

wikiからEBCDICコード表をエクセルにコピペ

f:id:natsumedeus:20180321232705p:plain
 参考:EBCDIC - Wikipedia

 

②制御コード等を手動でASCIIコード(10進)に置換

f:id:natsumedeus:20180321232737p:plain

④DEC2HEX関数(桁数=4)でHEXに変換

f:id:natsumedeus:20180322000340p:plain

 

⑤CONCAT関数で結合 

⇒ASCIIコード配列(HEX4桁区切り)ができる。実際の関数では、4桁区切りで配列に格納する。

f:id:natsumedeus:20180321232910p:plain

 

EBCDICコード表を作る

f:id:natsumedeus:20180321232934p:plain

⑦CONCAT関数で結合

EBCDICコード配列ができる。実際の関数では、2桁区切りで配列に格納する。

f:id:natsumedeus:20180321232953p:plain

 

 

 おまけ

エクセル表のはてなブログへの貼り付け

エクセルの表をはてなブログに貼り付けるには、Googleスプレッドシートを利用するのがよい。

参考:ブログ記事に表(table)を入れる時はGoogleスプレッドシートを活用すべし|はてな・ワードプレス対応 | ANAマイルdeうりと行くスカイ?

 

文字コード・基数変換

下記サイトが色々できて大変便利。

単位変換、進数変換等の便利なWEBアプリ集

 基数変換

2進数、8進数、10進数、16進数相互変換ツール

 BASE64変換

データ変換ツール(BASE64, URLエンコード(URLデコード), HEX(16進ダンプ), MD5, SHA-1変換フォーム)

 

ASCII⇔EBCDIC

金融・決済関連事業者を支援する目的のサイト。メインはEMVというICカードの規格に関するツールだが、一部文字コードを変換するツールもある。

Character encoding conversion(emvlab.org)

 

応援チップについて

サイドバーに「応援チップ」を配置しました。

もし記事が何かの役にたつことがありましたら、チップして頂けるととっても喜びます。

   喜びの舞 (ノ゚д゚)ノソイヤ!゙(ノ゚д゚)ノソイヤ!゙(*'Д')bギュン!゙(*'Д')b゙

  

また、「はぁ~何このクソ記事、つっかえ…」という場合は、「ごっこ」からビットコインに似た何かをぶつけることができるので、憂さ晴らしに遊んでみてください。

 

 

 

おわり

BASE64はともかく、EBCDICて馴染みない人も多いかと思いますが、汎用機系の古いシステムではよく使われるんです…

 

そもそも、2進数とか16進数とかも、IT関係にお勤めでない方には意味不明かとは思いますが…私も、最初に2進とか16進の勉強をした時は理解不能でした(×_×)

2進だと1+1は2じゃなくて10になる…とかねw

 

 

 

では最後に一句…

 

文字コード みんな違って みんないい

                    なつめ

 

 

 

ごめなさいちょっと言ってみたかっただけです><;

 

【確定申告】初めての確定申告

初めて確定申告したので、その時のφ(..)メモ

 

確定申告の方法

初めてだったので色々探し回ったが、下記記事が大変参考になった。

www.rikei20.com

 

 

仮想通貨の損益計算

これも色々探し回ったが、Cryptact(クリプタクト)が無料で利用でき、非常に便利だった。各取引所からダウンロードしたCSVファイルをアップロードするだけで計算してくれる。

jp.techcrunch.com

 

ICOや未対応の取引所での取引は、カスタムファイルを作成してアップロードする。

[参考]カスタムファイルの作成

 

 

クレジットカードで納税

 納税の方法は現金納付、振替納税、クレカ支払いが利用できる。

ポイントも付くので、クレカで支払うことにした…

のだが、クレカだと手数料かかる(--;)

kokuzei.noufu.jp

 

クレカ納付の手数料と、クレカの還元率によっては、損をする場合も><;

shokonoaruie.com

 

手続きの電子化について

税金や補助金等公的な手続きについて、「面倒くさそう」というイメージが強い。 

実際日本の公的な手続きにおける電子化はまだ改善の余地が多いと改めて実感した。

 

確定申告は「確定申告書等作成コーナー」のおかげで、思っていたより簡単に作成できた。しかし、完全にPC上で手続きが完了するe-Taxを利用するには専用のICカードリーダーが必要(スマホでの認証はまだ不可能)で、結局、e-Taxを利用しない場合は、書類を印刷し、税務署に提出or郵送する必要がある。

biz-owner.net

 

また、確定申告以外だと、以前傷病手当の書類を記入したことがあるが、これは会社から用紙を貰って、手書きで記入して、病院の先生に渡して、また必要事項を記入して貰って、会社に郵送するという、完全にアナログな手続きであった。

さらに、確定申告で医療費控除を申請したい場合はまた自分で確定申告の書類に記入しないといけないし…

 

この当たり、マイナンバーと上手く連携する形で電子化が進展することに期待したいと思う…が、まだしばらく先のことになりそう(--;)

 

 

そんな中で、最近ネット等でエストニア電子政府化がかなり進んでいるという記事を見かけたのを思い出した。

www.kh-tax.com

国として電子政府化を推進すると共に、税制の簡素化を進めた結果とのこと。

 

日本では、確定申告や傷病手当以外にも、奨学金の申請や生活福祉資金の申請等々…

申請の方法や対象の条件が複雑で、煩雑な手続きが必要な制度って結構あると思う。

それゆえに、本当に必要な人がその制度を利用できていない上に、制度の運営に無駄に資金がかかっているような気がする(--;)

 

おわり

最後愚痴みたいになってますが…日本でも、徐々に手続きの電子化や制度自体の簡素化が進むことに期待したいです。

ただ、確かに電子化されてなくて不満に感じることはありますが、IT業界は人手不足ですし、電子化って簡単に言うけどシステム化って簡単じゃないって今は自分でも多少は理解しているつもりなので、多少の不便は仕方ないかな、ということで我慢したいと思います^^;