タグ別アーカイブ: DX

ガッツの日記 第4回 残念なエクセルに出会ったら

【上司はあなたが毎日、エクセルの最終列を探す旅に出ているのを知っていますか?】

私が出会ったエクセルの中で、残念なものの1つが「最終列を探す旅」をするエクセルです

別名は「The ウナギの寝床」です

横長になっている表はいくらでもありますが、私が出会った中で1番凄いものは列がALLを超えてきていました

何故、ここまで横長になるかというと、クロス表の信仰があるからです

表を作る方からすればクロス表にすれば見やすくなるような気がするし、横に延ばすだけで設計が要らず、作るのも楽です

ただ、その後に検索したりするのは大変です

エクセルは列方向にフィルター処理が行えないからです

ですので、最終列を探す旅になります

もちろん、この手の表で共有の管理表を作成して、後で集計するという場合はもっと大変です

各自に口頭で聞いて、集計した方が早いかもしれません

では、

この手の残念なエクセルに実際に出会った時にはどうしたらいいかでしょうか?

それが、この記事のテーマです

組織の壁

他の部署の人がこの手の表を見たら「変えたらいいじゃん」と思います

ところが、一度回りした仕事のツールを変えるのは容易ではありません

ましてや、皆で入力して管理しているエクセル表なら尚更です

「自分が変えます」と手を挙げた途端、以下のようにババを引くような形になるからです

・表を変えて万が一、うまく行かなかったら全て責任を負うような形になる

・必ず誰かは「前の方が使い慣れててよかった」と言う人がいる

・そもそも現在の表のデータを新しい表にどう移行するか?自分が手動で移行することになりそう

・そもそも本来の業務で忙しい

そうして、放置した結果、ますます皆が使い慣れていき、表を変えにくくなるという悪循環が起こります

しかも使い慣れるといっても、業務のスピードがそんなに上がるわけではないのです

大抵、

こういった「残念なエクセル」が業務効率を下げているケースでは、上司がよくそのことを認識していないケースがあります

本日、【Schoo(スクー)】の講座で「ルール(組織のしがらみ)がイノベーションの壁」を受講しました


DX推進者を物語の中の「勇者」の置き換え、DXの目的を「ラスボスを倒すこと」に置き換えて解説しているのですが、これがよく分かりやすい内容になっていました

詳細はぜひ【Schoo(スクー)】のページで確認していきたいのですが、秀逸だと思ったのはDXの推進を阻む「組織の壁」の表現です

〇現場無視系

王様/上司が現場を見ていない

無駄な気飾り/本質とかけ離れた指示

予算がおりず武器が買えない

〇遅延系

え?道具屋のチェックが必要なんですか?

ネットで武器を買おうと思ったらサイトがブロックされている

(以降省略)

この上の「上司が現場を見ていない」というケースは、表現をこの記事の趣旨に沿って変えると「たかがエクセルの表一つで業務が停滞している」ことが伝わっていないケースです

このケースは良くみかけます

先日もある方から「長年、部下がまさかこんなエクセル処理を行ってるとは思ってもみなかった」ということで相談を受けました

よく話を聞いたら、基本的なVBAの処理で済むものでした

場合によっては、管理部門から「残業が多いと注意された」、では「早く帰れ!」と上司が指示を出すこともあるでしょう

ババを引かないためにも、上司に問題の所在を説明して組織全体を巻き込んでいくのがやはり第一歩になるべきです

そうでないと、日常業務がこれまでと同じように降ってきて「業務改善」どころではありません

「そうはいっても、問題の深刻さを分かってもらえない」というケースもあるでしょう

そんな時にはIT部門の力を借りてでも粘り強く説明することが必要かもしれません

技術的対策の実際

では、実際に対策をどうたてたらいいか?

あくまで私がこれまで見てきたケースですが、残念なエクセルの根本的な問題の多くは「データそのもの」にあります

冒頭で紹介した「ウナギの寝床」はまさに典型的です

見やすさや作りやすさを優先して作られています

他の言葉で言い換えると、データの蓄積画面と作業画面を一緒に考えてしまっています

一緒にすると見やすいし、作りやすいような気がします

本来は、データの蓄積と作業は別画面にすべきです

データの蓄積であれば、ウナギの寝床を列数を固定にし、「縦縦の繰り返し」に並べ替えて蓄積します

ここがスタートです

そして作業画面を別途作成します

例えば、データを閲覧するだけであれば、ピボットテーブルで変換することも「データがきちんと蓄積」されていれば可能です

入力が伴う作業画面を別途作成する作業はAccessを使用したりするなど、技術が必要な時もあります

ただ、今ではローコードの技術もあるのでハードルが下がっています

Power Queryで各自が入力したエクセルファイルを、フォルダを通じて集約する技術なんかはオススメです

更新ボタンを押せば、ファイル内の複数ファイルが1つの場所に集約されます

あくまで、入力は「クロス表」で縦横並びにしたいという場合も、ピボット解除行列入れ替えの技術があります

<まとめ>

今回の記事では「ウナギの寝床」のような残念なエクセルに出会った場合の対策について書きました

とにかくこの手の業務を著しく停滞させるエクセルに出会った場合には、組織を巻き込んで対処するのが先決です

放置をすると、どんどん悪循環が起きます

技術的には、まずデータを規則正しく蓄積することを考えるのが先決です

Sharepointリストを活用することもかなりオススメです

3000万行保管でき、行単位でバージョン管理や変更者の特定も行えます

いや、どうしてもクロス表でしか管理できないです、ですから「エクセルじゃなきゃダメです」というケースでもPower Appsという方法があります

詳細はこちらの記事で紹介しています⇒詳細

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

Power Appsでエクセルを超える~列方向が可変のクロス表を作成

【工夫すれば、使い慣れたエクセルのクロス表をPower Apps内で使用が可能です】

エクセルは言わずと知れた、メールと並んで多くの方に利用されているツールです。

本当に素晴らしい機能が満載です

このブログもExcellent仕事術となっています

エクセルの特徴的な使い方の一つが、列方向に可変なクロス表による管理です

上のような画像のクロス表にて、列方向に「2023/08/05、2023/08/06・・・」と増やしていく使い方は良く行われていると思います

これはエクセルの表計算の仕組みを有効活用した手法です

但し、この表は確かに見やすくて便利なのですが、表が大規模になってくると幾つか問題が出てきます

・処理がセル単位になり、行列一括で処理が行えない

・一目で分かるようにシート別に区切って管理するので、データの一元管理が行えないケースもある

ですので、このクロス表の作業をシステム化しましょうという場合もあります

これはこれで問題があります

このクロス表のシステム化は結構、ハードルが高いのです

普段何気なく使用しているフィルター作業や並べ替えも縦方向ですよね?

システムは基本的にはデータの列を固定した上で、縦に並べるようにできています

エクセル以外のソフトだと、実用的なものをそれなりの低価格で作成するのはかなり困難だと言わざる負えません

エクセルのままであれば、特殊なVBAの使い方をすれば自動化はそれなりに可能ですが、様々な問題があります

何故かというと、エクセルは本来はあくまで表計算ソフトであり、Accessなどのデータベースソフトとは違うからです

私もプログラマーとして活動する中で、この問題には度々直面してきました

特殊な在庫管理業務など、この列数可変のクロス表でないと行えない作業が現実として世の中にあるからです

システム化を行わなくてはならない場合は、前述のようにエクセルとAccessを組み合わせるなどの特殊なVBAの使い方で乗り切ってきました

ただ、作成に時間もかかり作業画面も思うようには作成できませんでした

仕組みが複雑で、他の方に説明が難しいという問題もありました

ところが、Power Appsの登場で状況が変わりました

このクロスの列方向が可変の表を、Sharepointリストと組み合わせながら比較的、簡単に作成できるようになりました

下のGIF画像はPower Appsの画面です

横軸の「日付」はSharepointリストと連動しています

2023/08/11が最終日付でしたが、「2023/08/12」を追加すると列方向に追加されます

上記のGIF画像では一見、分かりずらいかもしれませんが、連番の動きに注目して頂ければと思います

最初、12番は空欄です

Sharepointリストに2023/08/12を追加すると12番に日付が追加されます

当然、下のGIF画像のように表の中身を新規に追加・更新もできます

そして、

通常のエクセル処理でもできない列フィルターも行えます

2023/08/04を指定すると、それ以降の日付のみに表示が変わります
エクセルVBAにて列フィルターを行うには、列を非表示にするという複雑な処理を行う必要がありました

ですので、非表示にしたものを再表示するなどの処理も必要です

後で詳細は紹介しますが、Power Appsであれば列フィルターも比較的に簡単に行えます

何より、Power Appsによりクラウド上で業務が完結できるのがいいです

この記事でPower Appsの魅力及び可能性を伝えられたら幸いです

それでは、まずは最初にポイントを大まかに2つ紹介します

1つ目はIndex関数、2つ目はキーを組み合わせる複合キーです

ポイント

Index関数

エクセルのIndex関数をご存じでしょうか?

Index関数とは指定範囲から、指定位置のセルの値を抽出します

INDEX(範囲, 行番号, [列番号])

Index関数を使えると、抽出するセル位置を可変にできます

下の画像であれば、指定範囲の1行目1列目~2行目2列目をそれぞれ抽出し、

下の画像であれば、指定範囲の2行目2列目~3行目3列目をそれぞれ抽出します

今回のPower AppsではこのIndex関数を、行列の表示数を固定のまま有効活用します

複合キー

下の画像をご覧ください

行列の見出しを組み合わせて複合キーを作成しています

この複合キーにより、表の中身の位置を示すことができます

例えば、範囲の1行目1列目の「8」は「A-2023/08/01の8」と表示することができます

この複合キーの活用により、行列双方向の表を列数固定の形式に並べ直すことができます

この複合キーの仕組みは実際には「引当テーブル」の中で有効活用します

準備するもの

Sharepointリストを3つ用意します

行方向用(行見出し)

行方向に並べる商品データを用意します

列方向用(列見出し)

こちらは日付データを用意します

中身用

こちらは複合キーを交えた引当データを用意します

*CTが中身の個数になります

複合キーはーなどの記号を入れると後で分かりやすくなります

それではいよいよ、Power Appsのキャンバスの作成に入ります

インデックス及びインデックスを動かす仕組み

前述のように、今回はIndex関数を使用します

まずはIndex関数が参照するインデックス(1,2,3・・・)とインデックスを動かす仕組みを作成します

ここで言うインデックスとは、具体的にはこちらのことになります

そして、インデックスを動かす仕組みはこちらの三角マークになります

インデックスを動かす各三角マークの「OnSelect」プロパティには、変数を設定するSet関数を埋め込みます

上の画像の下向きの矢印であれば、変数:num_Rowを1つ繰り上げて設定します

*上向き、左向きであれば1つ繰り下げます

この変数:num_Rowはインデックスの1番目/Label1_NOに反映されます

Label1_NO

但し、Max関数を使用することで1よりも小さくならないようにします

そして、インデックスの2番目/Label2_NOと3番目/Label3_NOはインデックスの1番目に1もしくは2を足した値を表示します

Label2_NOのTEXTプロパティ

こちらのインデックス/Labelを参照して、行列双方向で見出し用の値を抽出します

インデックス数/Labelは表示数を行列ともに固定にします

Index関数による見出し作成

上記のインデックス/Labelを基にして、Sharepointリストから見出し用の値を抽出します

繰り返しになりますが、こちらはIndex関数を使用します

Index関数の中身には2つ設定します

Index(テーブル,位置)

但し、上記のままだとレコードを抽出するだけなので、「.」を使用して抽出する列名を指定します

上記は行方向ですが、列方向も同じです

行方向、列方向ともに表示数は、インデックス数と同様に固定にします

クロス表の中身

クロス表の中身として、行列のインデックス数分の表示を行う仕組みを作成します

こちらは1:現状の中身を示す仕組みと2:中身を追加・もしくは更新する仕組みの2つに分かれます

1:現状の中身を示す仕組み

こちらは複合キーを作成して、SharepointリストからVLOOKUP関数を使用して値を抽出します

ポイントで前述した仕組みをまた活用します

画像に alt 属性が指定されていません。ファイル名: image-8.png

Power Appsの場合はセルの組み合わせではなく、次の画像のようにLabelの組み合わせ、VLOOKUP関数で値をSharepointリストから抽出します

LookUp(T_引当,
    fukugoukey=
     Label1_PRODUCTID.Text & “-” & Label1_DAYCOLUMN.Text
    ).CT

つまり、こちらのSharepointリストから、Labelを組み合わせた複合キーが一致する行を抜き出し、更に個数を表す列/CTを抽出して表示できるようにします

2:中身を追加・もしくは更新する仕組み

こちらはTextInputボックス内にIf関数を使い、新規にSharepointリストに追加する内容と更新を行う内容に区分します

If関数は「OnChange」プロパティに組み込み、入力があれば自動的にSharepointリストに反映されるようにします

条件式にはCountIf関数を使い、既に複合キーがSharepointリストに存在するかどうかを判定できるようにします

If
(
CountIf(T_引当,fukugoukey=Label1_PRODUCTID.Text &”-” & Label1_DAYCOLUMN.Text)=0,

もし、0の場合は「Patch関数」でSharepointリストに追加、0以外の場合は「CountIf関数」でSharepointリストの該当行を更新します

以下は式全体です

———————————————–

If
(
CountIf(T_引当,fukugoukey=Label1_PRODUCTID.Text &”-” & Label1_DAYCOLUMN.Text)=0,
Patch(T_引当,Defaults(T_引当),{fukugoukey:(Label1_PRODUCTID.Text &”-” & Label1_DAYCOLUMN.Text),                   ProductID:Label1_PRODUCTID.Text,
                 DAY:DateValue(Label1_DAYCOLUMN.Text),
                 CT:Value(TextInput11.Text)
                 }
),
UpdateIf(
T_引当,
fukugoukey=(Label1_PRODUCTID.Text &”-” & Label1_DAYCOLUMN.Text),
{
CT:Value(TextInput11.Text)
}
)
);
Reset(TextInput11)


最後にReset関数で、入力した値を消去しておきます

列フィルターを行う場合

エクセルとは違い、列フィルターは1つ関数を付け足すだけで行えます

前述のIndex関数の中にFILTER関数を使用し、第一引数のテーブルの絞り込みを行います

見出しを増やす場合

話を単純にするために、行列1つとして話を進めてきました

Power Appsであれば見出しを増やすことも簡単にできます

見出しを増やす場合は、Labelを追加し、VLOOKUP関数やIndex関数を使用してSharepointリストの値を抽出します

上の画像では、Index関数を使用していますが適時、適した方を選べば大丈夫です

<まとめ>

今回は、本来はシステム化が困難なエクセルの列数が可変な表を、Power Appsで実現する方法を解説しました

ポイントは行列の表示数を固定し、Index関数と複合キーをうまく活用することです

上記のポイントを押さえれば、比較的簡単に作成が行えます

何より、クラウド上で業務が完結するのがいいです

これからは、Power Appsでどこまで業務を変えられるか?しかも、簡単に作成できるか?に挑戦していきたいと思います

但し、今回は話をシンプルにするために省略しましたが、実際には「委任問題」など問題への対策なども必要なことも最後にお伝えしておきます

ちなみに先日、Power Appsでコネクト4というゲームも作成してみました

結構、簡単にできたので、他のゲーム作成も試してみたいです

Power Apps、本当にこれから面白くなってきます

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

RFM分析により膨大な会員の状況を可視化する~ツリーマップ使用~

【3つの指標をSCORE化し、オリジナルの観点で見える化を行えるようにしよう】

RFM分析*は昔からある分析手法ですが、Power BIを使用するとまた違った見せ方ができるようになります!

*R(Recency:最終購買日)、F(Frequency:購買頻度)、M(Monetary:累計購買金額)の3つの指標での分析

上のGIF画像では、Power BIの機能を活用してRFM分析にて行った内容を2つのストーリーで可視化できるようにしています

・金額ベース/Manetaryベースと会員数ベースの違い

・上記Manetaryの観点⇒RFMの観点

例えば、こちらのPower BI画面により金額と会員数ベースの違いが明確に分かります

続いて2つのビジュアルの階層を1つ下げると、最終注文からかなり月数が経っている会員(R:長)が多いことに気づけます

上記はあくまで例ですが、RFM分析とPower BIを組み合わせることにより、膨大なデータから「新たな発見」ができるかもしれません

ポイント

まずは従来のRFM分析通りに、「R(Recency:最終購買日)、F(Frequency:購買頻度)、M(Monetary:累計購買金額)」の3つの観点でランク付けします

今回の記事では、3つの観点それぞれを1と2でランク付けします(後で変換します)

更に今回の記事ではそれぞれのランクを組み合わせてSCORE化します

SCOREテーブル

使用RAWデータ

使用するRAWデータは次の画像の注文データです

raw_data

1年内で1回しか注文しない会員もいれば、複数回注文する会員もいます

ランク付け

まず最初に行うのは、RFMそれぞれの観点でランク付けを行うメジャーを作成することです

ランク付けを行う前に、RFMそれぞれの観点で「値/VALUE」を抽出する必要があります

Recency

⇒R-RANK = SWITCH(TRUE(),’MEASURE’①[R-VALUE]>3,”2″,”1″)

こちらはSWITCH関数を使用します

第一引数をTRUEにすることで、複数の条件式を組み合わせて使用することができます

①DATEDIFF(‘MEASURE’②[dayMax_customer],”2023/03/31″,MONTH)

DATEDIFF関数を使用して、2つの日付の「差」を抽出します

②は会員毎の最終注文日を抽出するメジャーです

こちらは次のように記述します

dayMax_customer = MAXX(FILTER(‘raw_data’,’raw_data'[CustomerID]=’raw_data'[CustomerID]),’raw_data'[OrderDate])

FILTER関数でテーブルから該当会員を絞りこんだ後に、MAXX関数で注文日の最終日を抽出しています

Frequency

⇒F-RANK = SWITCH(TRUE(),’MEASURE’①[F-VALUE]=1,”2″,”1″)

こちらもSWITCH関数を使用します

①は会員毎の注文回数を抽出するメジャーです

F-VALUE = COUNTROWS(raw_data)

COUNTROWS関数で該当する行(該当会員)の数を抽出しています

Monetary

⇒M-RANK = SWITCH(TRUE(),’①MEASURE'[M-VALUE]<100000,”2″,”1″)

①は会員毎の合計金額を抽出するメジャーです

M-VALUE = SUM(‘raw_data'[SalesAmount])

SCORE化

前述の3つのメジャーを通じて、会員毎にそれぞれのランク付けを1と2で行います

更にその後、1と2の文字列を組み合わせてSCOREを作成します

そのためにはSUMMARIZE関数を使用し、会員毎にSCOREを含むテーブル/rfmTableを作成します

SUMMARIZE関数はピボットテーブルと同じように、集計しながらテーブルを作成してくれます

*注意:メジャーでも新しい列でもなく、新しいテーブルから作成します

文法としては次のように書きます

SUMMARIZE(集計の切り口(会員ID),作成する列名,集計式・・・)

*SUMMARIZECOLUMN関数と似ていますが別です

rfmTable = SUMMARIZE(‘raw_data’,raw_data[CustomerID],”R-RANK”,’MEASURE'[R-RANK],”F-RANK”,’MEASURE'[F-RANK],”M-RANK”,’MEASURE'[M-RANK],“SCORE”,’MEASURE'[R-RANK]&’MEASURE'[F-RANK]&’MEASURE'[M-RANK],”M-VALUE”,’MEASURE'[M-VALUE])

上記の”SCORE”列はランクを含む列を&で組み合わせて作成しています

rfmTableを作成したら「SCORE」テーブルとでリレーションを作成します

ツリーマップの作成

ツリーマップでは四角形の大きさで数字の大小を表示します

数字の大きいものが「右より左」「下より上」に並ぶのも特徴の一つです

今回のツリーマップでは階層を複数で作成するのがポイントです

これでツリーマップの階層をコントロールできるようになります

<まとめ>

今回はPower BIの機能を活用してRFM分析の見せ方を進化させる方法を解説しました

紹介した内容はあくまで、解説しやすくするためにかなり簡素化しました

例えば、ランクは1と2の2つで付けましたが3つや4つに増やした方が分かりやすいケースもあります

またSCORE化もSCORE自体に「超VIP」「ご無沙汰優良」などのネーミングを付けて定点観測するといいかもしれません

ぜひオリジナル方法を見つけて活用してみてください

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

グラフを内容に合わせた形で表示する~Infographic Designer~

【グラフは見た目の瞬発力が重要です!】

今回は、一目でグラフの内容がわかる「Infographhic Designer」を使ったグラフの作り方を解説します

実際にレポートを触ってみたいという方はこちらをクリックしてみてください⇒サイト

開いたWEBサイトで、実際にレポートを操作できます

Infographic Designerとは?

Power BI Desktop上で「その他のビジュアル」からダウンロードできます!

要はアドインです!

次に開く画面で「INFO」と検索すると出てきます

そして、こちらでダウンロードします

「追加する」をクリックしたら、レビュー画面でこちらをご確認ください

元データ

元データは下の画像のデータになります

このデータをPower BI Desktopに取り込んだ上で2種類のグラフを作成します

左側のグラフの作成

男女別の形の選択

Infographic designerをクリックしてビジュアルをページに挿入します

ビジュアルを挿入したら次のようにデータを配置します

・Category ⇒性別

・Measure ⇒売上金額

次にこちらのマークをクリックします

これでMark Designerという画面が開きます

この画面で実際にグラフの形が設定できます

次に、

こちらのマークをクリックします

すると、別な画面が開きます

こちらの画面でフィル―ルドを選択します

すると、性別に「形」を選択できるようになります

「形」は様々なものが選べます

今回は、Peopleから形を選びます

形を選択したら「Apply」することを忘れないようにしてください

Applyで設定を完了したら「Back」で前画面に戻ります

テキストの作成

では、ここからはテキストを作成します

テキストを挿入するには「Mark Designer」の上の「Insert text」をクリックします

ここから、下の画像の「Text」の中身を設定します

「Text」の横のマーク「Data-Binding On」をクリックすると設定画面に移ります

次の画面では「None」を他のフィールドに切り替えます

こちらでフィールドを設定し、Applyをクリックして設定を確定します

次に上の画像の「Back」で前の画面に戻ります

これで「Text」の中身が設定できたので、フォントサイズと位置を調整します

上の画像の調整ができたら完成です

ちなみに「Text」の設定から「グラフ自体」の設定に戻すにはこちらを操作します

Mark Designerを消すには、右上の×印をクリックしてください

右側のグラフの作成

メジャーの作成

左側のグラフの選択に応じて、性別の売上割合を算出するメジャーを作成します

DIVIDEを使い「選択された性別の売上/左側のグラフでの選択」を全売上で割ります

全売上は「ALL」を使い、選択が行われてもすべてを抽出するようにします

売上割合 = DIVIDE(sum(‘売上金額'[売上金額]),CALCULATE(SUM(‘売上金額'[売上金額]),ALL(‘売上金額’)))

割合を表示するための設定

左側の設定と同じく、Infographic designerを使用します

今回は、Measureに上で作成したメジャーを設定します

すると下の画像のように100%とだけ表示されます

次に左側のグラフと同様に、Edit LinkをクリックしてMark Designerを開きます

Mark Designerが開いたとしても、Textの設定になっているので「Insert shape」をクリックします

次に開いた画面でグラフの形を選択します

今回は割合を表示するので、Layoutをクリックします

そして、Bound toの箇所をOuterに設定して前画面(Format)に戻ります

Format画面で2つ設定を行います

「Fill Percentage」の箇所でフィル―ルドを設定し、100の意味合いの「1」をofの隣に設定します

これで色などを調整したら完成です

ちなみにグラフの色は「値の出る場所」「出ない場所」に分けて設定できます

<まとめ>

今回は、アドイン機能の「Infographic designer」を使用して、内容に沿ったグラフの形を設定できるようにしました

全て英語なので、わかりずらい箇所もありますが、設定が必要な箇所はそんなにないはずです

X軸などの調整は他のビジュアルと同じ画面で設定することができます

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

フィルターを一発で解除するボタンを配置する~ブックマーク機能活用~

【ブックマーク機能を活用してダッシュボードを楽々操作!】

Power BIのブックマーク機能というのがあるのをご存じでしょうか?

Power BIでのブックマークの意味合いは、日常的に使っているブックマークとは似ているようで違います

「記録しておき、再現する」という点は一緒だという点だけは意識しておいてください

このブックマーク機能を使えば、面倒なスライサーの解除作業などはクリック一つで解決できるようになります

基本的なブックマーク活用の流れとしては、1.ボタンの用意2.操作/状態の記録3.用意したボタンへの記録内容の選択・割り当てになります

ボタンイメージの用意

Power BIの挿入タブには様々なボタンが用意されています

今回はイメージから事前用意した画像を使用します

今回用意したのは次の「×マーク」です

操作/状態の記録

ここから、スライサー等でフィルターが行われていない状態を保存(ブックマーク)します

下の画像の通り、フィルターが一切かかっていないことを確認します

フィルターの状況を確認したら、表示タブにある「ブックマーク」をクリックします

ブックマークの欄がでたら「追加」ボタンをクリックします

そうすると、記録内容が追加されます

追加された記録内容は後で「選択・割り当て」が行いやすいように名前をつけます

上の画像の「・・・」をクリックすると、名前が変更できるようになります

今回は「Filter Clear」という名前にします

用意したボタンへの記録内容の選択・割り当て

フィルターが解除された状態を「Filter Clear」に記録したので、今度は、「×マーク」に「Filter Clear」に選択・割り当てます

ページに配置した×マークをクリックすると上の画像のように「アクション」が選択できるようになります

アクションを「オン」にし、型を「ブックマーク」に指定します

その後「ブックマーク」の右に△マークをクリックすると、先ほど記録した「Filter Clear」を選択・割り当てできるようになります

×マークに「Filter Clear」を選択・割り当てをしたら、Ctrlキーを押しながら×マークをクリックすると、フィルターが解除されるようになります

<まとめ>

今回はPower BIのブックマーク機能を活用してフィルターを解除する方法を解説しました

フィルター解除の設定の流れは次の通りとなります

1.ボタンの用意

2.操作/状態の記録 ⇒ブックマーク機能

3.用意したボタンへの記録内容の選択・割り当て ⇒アクションで割り当て

Power BIではエクセルと違い、ボタンによる設定できる操作は充実しています

ボタン周りの操作についてはまた別な記事で解説していきたいと思います

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

分解ツリーの利用により、一見複雑な階層ごとの数字をシンプルに魅せる

【分解ツリーのボタンを活用して、階層別の数字を段階的に見せるようにしましょう!】

Power BIの分解ツリーをご存じでしょうか?

このビジュアルを使えば、セル結合が入った表を凝視しなくても階層別に数字を理解できます

上のGIF画像では売上金額を、地域ブロック別⇒都道府県別という風に階層化しながら数字を表示していっています

他の言い方をすると、究極のドリルダウンとも言えます!

今回はこの分解ツリーの作成方法を解説します

データの準備

分解ツリーで使用するデータは当然、リレーションを通じて階層化されていなければなりません

前述のGIF画像で使用したデータは次の画像の通り「地域ブロック都道府県客先」というデータ構造になっています

*<:個数小<個数大

分解ツリーの作成

分解ツリーは「視覚化欄」のこちらのボタンから作成できます

分解ツリーにて設定するフィールドは「分析」と「説明」の2種類になります

分析とは分解するもの、説明とは階層の種類と割り切って理解をしてみてください

前述のGIF画像にある分解ツリーでは、説明欄に必要な階層分のフィールドを設定しています

ツリーの書式調整

他のビジュアル/グラフと違い、書式の調整が少し勝手が違うと感じるかもしれません

例えば、数字のフォントの大きさを変える場合には「データラベル」にて調整します

<まとめ>

今回はボタンでツリーを足すことができる、分解ツリーをご紹介しました

設定において、少し日本語の意味合いが違うと感じるかもしれません

この点は割り切って理解する必要があるかもしれません

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

分布図の作成及びグループ化~データを見やすく分解する

ピボットテーブルグループ化機能を使うと、数字が見やすくなるため重宝しておりますが、Power BIでも同じようなことが行えます

今回は、Power BIにおけるグループ化機能を量/ヒストグラムと質に分けて解説します

分布の把握は数字分析の基本なので、分析を行う必要のある方には特に有用な情報だと思います

量によるグループ化

今回は下の画像のデータからヒストグラムを作成したいと思います

売上金額の範囲区分を一定の金額で設定し、レコード数(行数)747件の件数を範囲区分別に縦棒グラフで表示します

まず、レポート画面のフィールド欄で「売上金額」上で右クリックします

すると「新しいグループ」という表示が見えますので、こちらをクリックします

「新しいグループ」をクリックした後は、次の画像の画面が開きます

ピンのタイプはデフォルトで「ピンのサイズ」になっていますが、こちらは「ピンの数」に変更します

ここで「ピンの数」とは縦棒の数になります

OKボタンを押すと、新たなフィールドができます

こちらをX軸に配置し、Y軸に売上金額のカウントを配置します

すると、縦棒グラフがヒストグラムとなります

ヒストグラムのデータ区分の範囲はピンのサイズとなります

ちなみにY軸を合計に変えるとデータ範囲別に合計金額を表示することができます

質によるグループ化

こちらのグループ化はレポート管理画面の一つ下のデータ管理画面で行います

下の画像がグループ化を行うデータです

まず、グループ化の対象になる「都道府県」の列を選択します

すると上のタブが「列ツール」に切り替わり、「データグループ」が表示されます

ここで「データグループ」の▼マークをクリックすると次の画面が表示されます

「新しいデータグループ」をクリックすると表示が次のように切り替わります

ここでグループ化するものは、Ctrlキーを押しながら選択し、グループ化をクリックします

この選択、グループ化の処理によりグループ化が実施されます

仮に、この状態のまま画面右下のOKボタンを次のような列ができます

ですので、列名およびグループ名はOKボタンを押す前に修正しておきます

<まとめ>

今回は量と質の双方の観点からグループ化を行う方法を解説しました

Power BIではグループ化により、分析可視化だけでなく、分析作業も行えます

ヒストグラムについては、X軸の範囲が良く見えない点について不便に感じる方もいらっしゃると思います

その場合には、「その他のビジュアルの取得」から「histogramのアプリ」を探す方法もあります

ヒストグラム/histogramは複数種類がありますので、ぜひ試してみてください

上の画像の「Histogram Chart」ならばX軸も下の画像のように明確に表示されます

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

色の工夫やアイコンによりテーブルにメリハリをつける~条件付き書式~

【今回は、エクセルの条件付き書式の仕組みをPower BIで実現して、テーブルをメリハリがついたものにしましょう!】

エクセルで条件付き書式により、基準を作成して色を変えたりアイコンを挿入したことがある方も多くいいらっしゃると思います

Power BIでも条件付き書式は簡単に行えますので、ぜひ活用してみてください

バーの挿入

では下の画像の「売上金額の列」にグラフでいえば横棒グラフを挿入してみましょう!

ビジュアル>セル要素>設定の適用先>系列から対象とする列を選択します

次にデータバーをオンにしましょう

この時点で既にバーがテーブルに挿入されます

修正は下の画像の「関数マーク」から行えます

こちらで色などを選択できます

信号などのアイコン

アイコンはこちらから挿入できます

上の画像の関数マークをクリックすると下の画像の画面が立ち上がります

こちらの画面で各種設定をするわけですが、デフォルトではアイコンのレイアウトが「データの左側」になっています

こちらは「データの右側」に変える方がおすすめです

次にどの値範囲の時には、どのアイコンにするかについて「ルール」で指定をします

デフォルトでは「パーセント」の設定になっていますが、こちらは数値に設定し直しておいた方が無難です

注意点としては数値の範囲指定方法が限定的です

範囲指定の最後にて「~以上は・」という指定の仕方ができず「~まで」となってしまいますので、ダミーでありえない数値(例:前期比で900%など)を指定しておきましょう!

フォント・背景など

フォントや色なども条件に応じて、色を変えることができます

こちはデフォルトではルールではなくグラデーションが設定されています

グラデーションでは、数値の大小に応じて色の濃さが変わる仕組みになっています

このグラデーションでも構わない場合もあるかと思いますが、数値が「マイナス」の場合はフォントの色を赤にする場合などは「ルール」に変更する必要があります

グラデーションからルールに変更すると、数値の設定範囲を指定する画面が出てきます

<まとめ>

今回はPower BIにて条件付き書式を設定する方法を解説しました

エクセルと基本的に設定方法は同じですが、何点か全く違うところもあります

・設定列は「系列」で指定する

・グラデーションを場合に応じてはルールに変更する

この点は十分注意が必要です

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

ダッシュボードにプラカードを挿入しよう!~カードと複数の行カード~

【カードをうまく活用して、ダッシュボードをメリハリがついたインパクトのあるものにしよう!】

カードはエクセルダッシュボードでは、図形を使って作成されます

Power BIのカードはエクセルの図形よりも豊富な機能が揃っています

この豊富な機能を有効活用してダッシュボードを魅力あるものにしましょう!

今回の記事では、カードまたは複数の行カードをランク付け作業と連動させる裏技も紹介します

ページへの配置

カードまてゃ複数の行カードの配置は以下の画像の箇所から行います

こちらをクリックするとカードまたは複数の行カードがページに配置されます

値の設定

カードの場合は1つだけフィールドに値を設定します

複数の行カードの場合にはフィールドに複数の値を設定します

ビジュアルの調整

カテゴリラベル

デフォルトとではカテゴリラベルがオンになっています

こちらは好みに応じて調整してします

タイトル

こちらは「全般」から調整を行います

タイトルをオンにした状態で「テキスト」に入力すると、カードのタイトルに反映します

そのほか、横方向の配置などを調整できます

フォントなど

カード

「吹き出しの値」にて調整します

複数の行カード

「カード」にて調整します

アクセントバー

複数の行カードのみ

複数の行カードの場合、デフォルトで文字列の左にバーが付きます

こちらはアクセントバーをオフにすると消えます

罫線(丸みを含む)

「全般」の視覚的な境界で調整します

ランク付けと連動させる裏技

ここからは、ランク付けとカードを連携させます

ランク付けと連動させるにはフィルター欄を使用します

まずは、カードのフィールドを客先等の数字でない項目にて設定します

次にフィルター欄にフィールドを設定します

基本フィルターになっている箇所をクリックすると「上位N」が選択できるようになります

上位Nの項目の表示は’1’で設定してください

最後に、上位ランクの判断基準になるフィールドを「値」欄に設定します

注意点としては、フィルターを適用しないとランク付けが有効になありません

こちらはしっかり適用処理を行っておきましょう

ちなみに複数の行カードでも同じことがおこなえます

例えば、上位3社を指定するときっちり3社を抽出してくれます

但し、あくまで抽出を行うだけで、表示順位が数字ベースでの降順になっていませんので誤解を生むかもしれません

この点は十分に注意してください

<まとめ>

今回はダッシュボードにプラカードを挿入する方法を解説しました

カードや複数の行カードは機能が豊富にありますので、最初は戸惑うかもしれません

ただ調整する箇所は限られていると思いますので、すぐになれるのと思います

なお、カードの表示はほかのグラフのフィルターと連動します

例えば、売り上げを掲示するカードであれば、他のグラフで関東地方のフィルターがかかれば「関東地方の売り上げ」を、近畿地方のフィルターがかかれば「近畿地方の売り上げ」を掲示します

このフィルターをDAX(メジャー)の工夫で回避する場合はCalculateとALLを組み合わせて使用してください

長文に最後までお付き合い頂き誠にありがとうございました

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ

基本情報技術者試験を通じてITの登竜門をくぐろう~資格チャレンジ~

基本情報技術者試験はITエンジニアの登竜門と言われる試験ですが、単なる資格試験ではありません

一つ一つの問題にITのエッセンスが詰まっており、ITのフィールドで働くのに必要不可欠な知識が得られます

できたら基本情報技術者試験を通じて、合格以降も長く付き合える参考書にも出会っておきましょう!

試験概要

試験はIPA(情報処理推進機構)が運営しており、年に2回試験があります

出題範囲は、PCの基本的な仕組みからプログラミング、データベース、ネットワークからプロジェクトマネジメント、企業経営まで多岐にわたっており、専門性も求められます

合格率は大体23%ぐらいと言われているので、難関といえば難関だと思いますが、私が受験した時の感触だと「基本」と「過去問」の2つを忠実に習得することで短期間でも合格できると確信しました

私が合格したのは2016年なので大分前ですが、基本と過去問重視の傾向は変わっていないはずです

試験に取り組むメリット

基本技術者試験に取り組むメリットは大きく分けて2つあります

ITの仕組みの包括的な理解

今、ご覧になっているブログのページも複数の分野が連動して動いています

PCはもちらん、ブログページにつながるネットワーク、ブログを動かすサーバー、そしてセキュリティの仕組みも動いています

ITとは複数の分野が常に連動しているので、出題範囲が多岐にわたる試験に取り組むことでITの仕組みを包括的に理解することができます

逆に自分はプログラマーになりたいから、プログラミングだけ勉強したいと思ってもすぐに壁にぶち当たってしまいます

基本技術者試験の受験を通じて、ぜひITの包括的な知識を得ることをおすすめします

IT独自の考え方

「郷に入っては郷に従え」ということわざもありますが、どの世界にも独自の考え方があります

例えば、会計には複式簿記という考え方があります

これも会計独自の考え方です

ITにも同じように、IT独自の考え方があります

例えば、

基本技術者試験の参考書を購入すると、最初に出てくるのは「2進数」です

2進数では数字を「0,1,2,3,4,5,6,7,8,9」で数えるのではなく、「0と1」で数えます

これはPCを動かすのに、赤と白の旗で通信する手旗信号のようなやり方が効率がよいからです

私は最初、この2進数でかなり躓きましたが、覚えるうちに様々な分野で応用できることに気づきました

桁数も通常の10進数と違い、すぐに繰り上がってしまうので本当に面倒くさいのですが、複雑な事象をシンプルに処理できるように解釈し直すのに、2進数の考え方がとても役に立つのです

この場では詳細は割愛しますが、他にもIT独自の考え方があります

基本情報技術者試験を通じて、IT独自の考えた方を身に着けることにより、ITの世界で活躍するために必要な奥深さが身に付きます

隠れたメリット

基本情報技術者を学ぶ、隠れたメリットが上記の2つ以外にもあります

それはコミュニケーションです

この場で言うコミュニケーションは非常に広義な意味合いだと思ってください

仕事を進める上で、必ずコミュニケーションが必要になります

相手が使う用語を理解できないと仕事は全く進みません

ITの仕事には必ずITの専門用語が出てきます

相手が専門用語を使うたびに、意味を聞き直していては会議もまともに進みません

そして、仕事を進める上では専門書を頼りにするケースもあると思います

専門用語がわからないと本の内容が1ミリも入らないと思います

この専門用語の意味を理解するには、まとまった勉強が必要です

特にIT未経験の方には、この基本情報技術者試験がとてもいい機会になると思います

勉強する上での注意点

この試験は満点を目指す試験ではありません

午前と午後で60%以上の正当で合格することができます

*2022年4月13日時点の情報です

ですので完璧を目指す必要はありません

出題範囲も広いので、苦手なところは20点でよしとするぐらいの気持ちで勉強を進めていきましょう

一番大事なのは「全体を包括」することです

浅く広く

社会人が取り組む試験としては、とにかく出題範囲が広く、出題数も多い試験です

参考書などの教材を三巡ぐらい、回すぐらいの気持ちで取り組みましょう

一巡目は分からないことがあっても、あまり深堀せずに早めに一巡することが重要です

イメージ重視

専門的な箇所は、理解しようとしても頭に全く入らない時があります

その時は理屈で理解しようとせずにイメージをつかむようにしましょう

例えば、アルゴリズムの箇所であれば、簡単なマクロを手を動かして作成してみる

暗号化通信であれば、イメージ図が豊富な動画を繰り返し見てみる、といった感じです

過去問優先

とにかく理論より過去問への取り組みを優先してください

もしも難しいと感じた問題であれば、まずは回答を見てみてもいいです

とにかく実際の問題で頭に詰め込むことが大事です

これは前述のイメージ重視にもつながる話です

実際、毎年似たような問題があるので、過去問を取り組むことで合格の可能性が「ぐっと」上がります

勉強方法

参考書

まずは学習の軸となる参考書を決めましょう

できれば過去問が豊富なものがいいと思います

ちなみに私が使ったのは次の画像のシリーズです

ちなみに私の場合は2進数がどうしても頭に入らなかったので、漫画を有効活用しました

YOUTUBE

勉強していてわかりにくいところ、難解な箇所は、基本情報技術者試験よりワンランク下のITパスポート試験用の動画を見るのも有効です

https://www.youtube.com/watch?v=Emkx4kN6URk&t=19s

ぜひ理屈ではなく、イメージをつかむことを心がけてみてください

Udemy

動画サイトのUdemyでも基本情報技術者試験用の動画が豊富にあります

令和4年版:現役講師が教える【基本情報技術者試験】講座 午前&午後&プログラミング&過去問解説&指導メール

~始めから効率よく学ぶ~ 基本情報技術者試験 最速 合格講座

*Udemyの紹介記事はこちらから⇒紹介記事

<まとめ>

今回は基本情報技術者試験に取り組むメリットと勉強の仕方を紹介しました

とにかく出題範囲が広く、専門性の高い試験ですので、自分にあった教材を決めて何度も繰り返していきましょう

分からない箇所はとにかくイメージで理解しながら流していくことも重要です

この試験を受ける方の中には何度も落ちる方がいます

何度も落ちる方の特徴は、苦手意識から数多く苦手分野を作ってしまうことです

出題範囲が広く、出題量が多い試験なので、得意分野があってもあまり大幅な得点アップにはつながりません

とにかく苦手と感じた分野は、動画や漫画を利用してイメージで理解し、少しでも得点アップにつなげられるように努めましょう

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村

にほんブログ村 IT技術ブログ VBAへ