タグ別アーカイブ: モダンエクセル

途中のステップを削除した場合のエラー修正処理~上級編6回目

こんにちは、Excellent仕事術ガッツ鶴岡です

 Power Queryは便利だけど、通常のエクセルとは使用方法が違うので苦労する点も多いですよね

 特にPower Queryエディターは、これまでのエクセルとは画面自体が違うので「理解に苦しむ」人もいらっしゃると思います

 Power Queryエディターの画面右にある「ステップの適用」は通常のエクセルでいえば、ショートカットキー:Ctrl+Zに相当する箇所なのです

 こちらの「ステップの適用」は最初は難解に感じる人もいらっしゃるかもしれません

 今回は、「ステップの適用」にて途中のステップを削除した場合の修正方法について解説します

 今回の解説を通じて、Power Queryへの理解の一助になれば幸いです

1.ステップを削除する前の状態の説明

今回は、以前の回で使用したデータを使用します

この回では、下のGIFのように販売単価と販売個数の合計を乗算して、新たな列を作成しました

その後に、新しくできた列の名前を下の画像のように「乗算」から「売上金額」に変更しました

今回は、更に売上金額の列を10万円以上でフィルダーをかけます

すると、適用のステップには次の画像のように1つのステップが追加されます

では、この状態から本題の解説に入ります

2.1つ前のステップを削除

1.で追加してステップの1つ前を削除します

すると、次の画像のようにエラーメッセージが発生します

1.でフィルターを10万以上した際には、あくまで「売上金額」の列に対してフィルターをしています

そのフィルターをした「売上金額」の列が削除されてしまったのでエラーになっています

3.エラーの修正

このエラーを修正するには、2つの方法があります

1つは、フィルターされた行を削除し、列名を変えるところからやり直す方法です

2つ目については、解説を始める前にまず「フィルターされた行のステップ」の1つ前のステップ「挿入された乗算のステップ」をクリックしてみます

上のGIFのように1つ前のステップを選択するとエラーメッセージは消えました

これは、あくまで次のステップである「最後尾のステップ」からエラーになっているということです

ここからが2つめの修正方法の解説です

解説するのはエラーになっていないステップから修正をかける方法です

エラーが起こっていない、「最後尾のステップの1つ前」のステップにカーソルを置いたまま、列名を1.でフィルターをかけた時と同じ「売上金額」に変更します

すると、下のGIF画像のようにエラーが起きていた最後尾のステップ「フィルターされた行」をクリックしてもエラーメッセージは出ません

<まとめ>

 今回は、途中のステップを削除した場合のエラー修正について解説しました。このような場合には、必ずしもエラーが起きたステップを削除した後に「やり直し」処理が必要なわけでありません

 エラーが起きていないステップから再度修正をかける方法もあります

 とはいえ、極力は途中のステップはなるべく削除しないで済むようにはしておきましょう

 尚、解説を端折ってしまいましたが、途中のステップを削除すると必ずエラーが発生するわけではありません

 あくまで、途中のステップを削除することで前後の処理の流れに矛盾が起こる場合にエラーが発生しますので、その点だけ最後に追記させて頂きます

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

次回はデータ自体がエラーになっている場合について解説します

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


にほんブログ村

エラー修正_データ自体のエラー~上級編7回目

こんにちは、Excellent仕事術ガッツ鶴岡です

 今回は、上級編の5回目で事前にアナウンスしたようにPower Queryのエラーのうち、「データ自体」のエラーの修正方法について解説します

 解説に使うデータは5回目と同じく、中級編の2回目と同じデータを使用します

 中級編の1回目では上の2つの表を組み合わせて、下のテーブルを作成していました!

商品台帳の販売単価と売上台帳の販売個数を乗じて、「売上金額」を新たな列として追加してあります

目次

1.エラー内容の確認

2.修正作業

<まとめ>

1.エラー内容の確認

下のクエリのようにエラーが発見された、というところから解説をスタートします

次に、上の画像の「1つのエラーです。」をクリックします

 すると、Power Queryエディターが開き、下の画像のようにエラー箇所が表示されます

今回のエラーは、販売単価と売上金額にてエラーが発生しています

 売上金額は販売個数と「商品台帳.販売単価」を乗じているので、大元の商品台帳のクエリにて「データ自体」の「狂い」生じている可能性があります

 ですので、エラーが発生している可能性があるクエリの中味を確認するため、エディターの矢印マークをクリックします

 すると、下の図のようにクエリーの一覧が表示されます

では、「狂い」生じている可能性がある商品台帳クエリーをクリックします

すると上の画像のようにやはり「狂い」が生じている箇所がありました

では、「Error」の箇所をクリックしてみます

すると、やはり本来は数字が入っているべきところに「!!!」が入っていました

 エラーの中味を確認したら、画面右の「適用したステップ」に追加されたステップを削除して元の画面に戻ります

エラーの箇所が特定できたところで、ここから2つの修正方法を解説します

続きを読む エラー修正_データ自体のエラー~上級編7回目

Power Queryって何??~時刻を曜日と日付に変換

 今回は、関数を使用せずにyyyy/mm/dd hh:mm形式の時刻データから「日付」と「曜日」データを作成する方法を紹介します

日付と曜日データは更に、両者を組み合わせて新たな列を作成します

 今回紹介する方法は、直感的なクリック操作のみで終了しますのでとても簡単です!

 解説は、次の画像のデータをPower Queryエディタ(以降、エディタ)に読込んだところからはじめます!

1.日付データの追加

勤務開始時刻列を選択した後に「列の追加」タブで「日」をクリックします

そうすると、次の画像のように「日」の列が新たにできます

ちなみに「日付のみ」をクリックすると、yyyy/mm/dd形式になります

2.曜日データの追加

まずは勤務開始時刻列を選択します

①と同じ画面ですが、今度は「日」より下の「曜日名」をクリックします

すると次の画像のように「曜日」が新しい列に出力されます

3.日付と曜日の組み合わせ

こちらは1.と2.の列を組み合わせる「列のマージ」処理を行います

こちらのメニューも「列の追加」タブにあります

「列のマージ」をクリックすると次の画像の画面が開きます

こちらの画面で3つ指定します

・区切り記号➡カスタム記号

・カスタム記号➡「 日 /」(2段目の欄です)

・新しい列名➡日付/曜日

3つ指定したら右下のOKボタンを押します

<まとめ>

今回は時刻データから日付データと曜日データを作成する方法を解説しました

本来は関数が必要な処理をクリック操作でできるので、とても便利です

 後、「列のマージ」もデータ整理(データクリーニング)に使えますのでこちらもぜひ活用してください

今回は以上です

最後までこの記事をお読みくださいありがとうございました

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

にほんブログ村

Power Queryって何??~経過時間を一括で計算する

エクセルは四則計算がミスなく簡単に行えるのが便利です

ところが、単純な引き算の対象が「時間」になると数倍ハードルがあがります

24をかけたり、60で割ったりして変換処理を行い、経過時間を計算することになります

日付を跨ったりすると、差分の計算式は大変なものになります

何より問題なのは、ミスが起きやすくなることです

自分も0.5時間をよく50分と間違えたりしていました

ところが、Power Queryならば直感的なクリック操作のみで計算できます

今回は、名前の列に空欄がある下の表からつの「経過時間」を計算します

*記事の最後に完成版のサンプルファイルがあります

A.日別の勤務時間行単位

B.日別の勤務日数行単位

C.名前別の合計勤務日数名前別単位

このPower Queryの操作のポイントは、実は「日本語」です!

 では、Power Queryエディタ(以降、エディタ)に上のデータテーブルを読み込んだところから解説をはじめます!

目次

1.行単位

2.名前別単位

3.<まとめ>

1. 行単位

A-1.列の選択

まず、「勤務終了時刻」次に「勤務開始時刻」の順番で「Ctrlキー」を押しながら選択してください

詳細は後述しますが、この選択順が重要なんです

A-2.減算処理

次に「列の追加」タブから「時刻」⇒「減算」と順にクリックしてください

時間の減産処理

すると、次のように「勤務終了時刻-勤務開始時刻」の差が時間単位で計算されます

減算結果の見方が少し特殊です

次の画像の黄色の箇所に注目すると分かり易いです

表示は「日付.時間:分」の順で表示されています

前述のCtrlキーで選択する順番を間違えると、この表示がマイナスになるので注意が必要です

A-3.日別の勤務時間(行単位)

では、②で算出した「減算」の列を経過時間に変換します

ポイントは前述の通り「日本語」です

「変換タブ」に移動して「時間」ではなく「合計時間数」をクリックします

すると、下の画像のように「経過時間」が計算されています

きちんと、30分が0.5時間に変換されています

ちなみに「合計時間」という表現は日本語としておかしいですよね・・・

B. 日別の勤務日数(行単位)

まず、適用のステップで1つ前の処理を削除します

そして、減算の列を選択し直して、次の画像のように「合計日数」をクリックします

すると、日数ベースでの経過時間が算出されます

結果が正しいかどうかを判断するのは難しいと思います

上の画像の黄色の箇所に注目してもらえれば、算出結果が正しいことがすぎに分かると思います

2. 名前単位

C. 名前別の合計勤務日数

ここからPower Queryの真骨頂です

過去の記事で紹介したフィル機能を活用して、名前の列の空欄を埋めます

次の画像の通り、名前の列から空欄が消えました

続きを読む Power Queryって何??~経過時間を一括で計算する

Power Queryって何??~日付を月や四半期単位に変換~

こんにちは、Excellent仕事術のガッツ鶴岡(@atsushi1039)です

 Power Queryを知らない時には、様々な日付関数を使用して日付の変換を行っていました

例:「2021/01/27」⇒Year関数⇒「2021」⇒Month関数⇒「1」

 Power Queryエディタでは、直感的なクリック操作でこれらの処理は一括で行えるので覚えておくととても便利です!

更に、Power Queryエディタでは「四半期単位」に変換できる点にも注目です!

使う画面は変換タブの「日付と時刻の列」になります      

目次

1.年への変換

2.月への変換

3.四半期

1.年への変換

日付の「年」への変換(例:2019/09/01⇒「2019」)は次の画像の「年」をクリックすれば行えます

次にGIF画像のように列ごと一括で変換されます

続きを読む Power Queryって何??~日付を月や四半期単位に変換~

Power Queryって何??~読込んだデータに行番号追加~

こんにちは、Excellent仕事術のガッツ鶴岡(@atsushi1039)です

Power Queryには、意外な便利機能が盛りだくさんあります

 今回、紹介する内容はあまり時短にはつながりませんが、Power Queryの奥深さを知って頂く意味でも、ぜひ紹介したいと思います

 Power Queryというと、どうしてもPower Queryエディタ(以降エディタ)での操作に注目が集まりますます

 今回の内容は、エディタからエクセルシートに読込んだ後の内容になりますが、かなり意外な内容です

下の画像のような、クエリから読込んだデータテーブルがあったとします

こちらに行番号を、エディタを使わずに挿入します

必要な処理はクリックだけです

 データテーブルにカーソルを置いて、データタブのプロパティをクリックします

次に開いた画面で、下の画像の「行番号を含む」をクリックします

次にデータテーブル上で右クリックします

すると、「更新」がクリックできるようになります

 「更新」をクリックすると、上のGIF画像のように0から始まる「行番号」が挿入されます

エディタで行番号を挿入するメニューについては、以前も解説しました

エディタでは「1」から始まる番号も指定できました

今回紹介した内容はあくまで「0」から始まる番号なので、その点は残念です

今回は以上です

Power Queryの便利さや奥深さを、今回の記事で感じて頂けたら幸いです

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

にほんブログ村

文字列を記号毎に分割し、行方向に展開する方法

こんにちは、Excellent仕事術のガッツ鶴岡(@atsushi1039)です

 以前、Power Query中級編にて記号の出現ごとに列分割する機能について解説しました

 この時には、記号毎に列分割した後に、ピボット解除により縦横の並びを縦縦方向へに並び替えました

 実は、Power Queryには記号毎に行方向に分割する機能もありますので、今回は前回の補足として記事を書きます

まずは、前回の具体的な内容について、振り返りたいと思います

前回は、次の画像のような表を解説に使用しました

 この上の表を「1.担当企業の列をコンマで列分割」⇒「2.ピボット解除」⇒「3.NOをつける」の3つの変換処理により、下の画像のようにしました

 では、 「1.担当企業の列をコンマで列分割」 を行分割で行う方法をPower Queryエディタ画面を開いたところから解説します

まずは、下の画像の「区切り記号による分割」をクリックします

次の画面で以下の2つを指定します

ここまでは、前回と一緒です

実は、「区切り記号の出現ごと」の下に詳細設定オプションというのがあるので、こちらをクリックします

すると、分割の方向が「行」でも選べるようになっています

こちらを指定して、画面右下のOKボタンをクリックします

すると、上のGIF画像のように行で分割されます

この機能は、データ整理(データクリーニング)でかなり活用できる内容です

覚えておいて絶対に損はないはずです

では今回は以上です

最後まで記事を読んで下さりありがとうございました

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

にほんブログ村

Power Queryって何~既存クエリのステップを一括で削除する方法

こんにちは、Excellent仕事術のガッツ鶴岡(@atsushi1039)です

今回は、既に作成したクエリをステップ毎に分割する方法を解説します

 例えば、以下のように5つのステップ(最初のソース以外)があるクエリがあったとします

最後のステップで右クリックします

こちらで、「前のステップの抽出」をクリックします

すると次の画面になるので、新たなクエリ名を入力してOKボタンを押します

すると元のクエリは次の様になります

右クリックしたステップが残っています

一方、新しいクエリは次のようになります

右クリックしたステップより前のステップが残っています

では、新たに作成したクエリにて、途中のステップで「前のステップの抽出」を同じように行ったらどうなるでしょう?

更に新しく作成したクエリでは、上の画像の黄色の箇所の1つ前「変更された型」のみが抽出されています

今回は以上です

いつもご愛読頂きまことにありがとうございます

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

にほんブログ村

カスタム関数を自身で登録して使い回す~上級編8回目

 資料を作成する度に、毎回毎回、同じ数式を入力していませんか?Power Queryではカスタム関数という仕組みにより、事前登録したカスタム関数を呼び出して使い回していくことができます

今回とあわせて2回に分けて、カスタム関数についての解説を行います

 私が昔、企画の仕事をしている時は、会議の前日は必ず数値資料を作成していました

 「前期比」「利益率」「単価」などを資料に盛り込むわけですが、毎回決まった数式を表に入力していました

毎回、同じ数式を入力するので体で覚えてしまったことをよく覚えています

 この記事を見て下さっている読者の方の中にも似たような経験のある方がいらっしゃるのでないでしょうか?

 カスタム関数をマスターして、「同じ数式の再入力」は自身で事前作成した「カスタム関数」の呼出し処理だけで代用できるようにしましょう!

 本格的な解説に入る前に、「今回のポイント」と「今回使用するデータと、作成するカスタム関数」について解説を行います

1.今回のポイント

中学数学の方程式

中学時代にこんな問題を数学の時間に出された経験はありませんか?

Y=aX+bの式に(X=2,Y=5)を代入するといった問題です

今回のカスタム関数を作成する時にも、同じような考え方をします

ただ、今回は代入するのが「列の名前」になります

空のクエリの作成

今回はA.の方程式を、空のクエリを作成してから指定します

「空のクエリ」はこれまでのPower Queryの解説では出てこなかった方法です

 更に空のクエリを作成した後、Power Queryエディター画面から詳細エディター画面を開き、下の画像の「let」と「in」の箇所に方程式を指定します

2.今回の使用データと作成内容

 今回のポイントを2点解説したので、次に今回使用するデータと作成するカスタム関数について解説します

今回使用するデータは、次の画像にあるデータになります

 今回作成するカスタム関数は、黄色く塗られた列の値を使用して、下の画像の利益を計算する関数になります

ちなみに、上の画像の「利益」の列には以下の数式が入力されています

 使用するデータと作成するカスタム関数について解説したところで、本格的な解説に入ります

.空のクエリ作成

データタブの「データの取得」から「その他のデータソースから」を開きます

開いた一覧の一番下に「空のクエリ」があります

 上の画像の「空のクエリ」をクリックすると、Power Queryエディターが開きます

次にPower Queryエディターのホームタブから「詳細エディター」を開きます

すると、次のような画面が開きます

上の画像の「Let」の下と「in」の下に、ポイントAで解説した方程式を入力していきます

<まとめ>

 今回は、カスタム関数を作成するにあたってのポイントを2点解説した後、ポイントAで解説した、方程式を入力する画面を開くところまでを解説しました

 詳細エディターの画面は少しややこしいところもありますが、方程式の作成の仕方をイメージしてもらえればOKです

では次回は、カスタム関数を完成させます!

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

にほんブログ村

カスタム関数を自身で登録して使い回す2~上級編9回目

 今回はPower Queryでカスタム関数を作成した後、実際に作成した関数を呼び出す方法を解説します

まずは、前回の内容の「振り返り」から行いたいと思います

前回は、カスタム関数を作成する際の「ポイント」と「作成画面」について解説しました

 解説の対象となる、これから完成しようとしてる「カスタム関数」は次の画像の「販売単価」「製造原価」「販売個数」から「利益」を算出する関数です

 上の画像の数式バーにあるように、利益を算出するのに数式を入力していたところを、カスタム関数を呼び出すだけで「利益」を自動算出できるようにします

カスタム関数のポイントとしては、2点を解説しました

1点目は、中学時代に習った「方程式を思い出す」です

カスタム関数はこの方程式と同じ様な考えで作成します

そして、代入するのは「列の名前」になるのが特徴です

2点目は、カスタム関数の作成画面についてです

前回は、上の画面を開いたところまでを行いました

 では、この「詳細エディター」画面にてカスタム関数を設定するところから解説をはじめます

目次

1.関数の設定

2.カスタム関数の呼出し

<まとめ>

1.関数の設定

今回は、次の数式を詳細エディター上に関数として設定します

利益=(販売単価-製造原価)x 販売個数

ここで、詳細エディターへの設定方法を分かり易くするために、前回のポイントで解説した方程式を使って解説します

前回のポイントで、方程式の事例として解説したのは次の方程式です

Y=aX + b

上の方程式を詳細エディターに設定したとすると、次の画像のようなイメージになります

詳細エディター設定例

letの箇所は2段の設定になります

1段目:Y = (a,X,b) =>

2段目:ax + b

1段目で「変動する数」として使用する記号を、=を挟んで右辺と左辺に分けて設定した後に、「=>」の2文字で2段目に繋ぎます

そして、2段目では方程式の右辺を設定します

inの箇所はYを設定するだけです

方程式を例に取って、詳細エディターの設定イメージをお伝えしたところで、本題の関数を設定します

利益=(販売単価-製造原価)x 販売個数

上の数式の「変動する数」はそれぞれ、以下のように設定するものとします

・利益 ➡profit

・販売単価 ➡price

・製造原価 ➡cost

・販売個数 ➡quantity

では、上の「変動する数」を詳細エディターにあてはめると下の図のようになります

画面下に以下の文字が出ていたら、右下の「完了」を押します

すると、下のような画像に切り替わります

画面には「パラメーターの入力」と出ていますが、こちらは無視していいです

ここからは通常のクエリを作成した時と同じように、エクセルシートに読込処理を行うわけですが、画面右にてクエリー名を「利益」としておきます

読込処理を行った後は、通常のクエリーと同じ様に画面右に表示されています

マークは通常のクエリとは異なっています

ちなみに、後でこの「利益」の名前を使用して「関数呼び出し」を行います

これで、カスタム関数は完成です

続きを読む カスタム関数を自身で登録して使い回す2~上級編9回目