analytic-vba のすべての投稿

アニメーションマクロ3

 世の中、すっかりコロナ一色ですね

この状況は私がいうまでもなく、とにかく耐えるしかないですね

辛抱の時です

 ただ、なにか新しい技術にチャレンジする機会にしたいと考えています

 チャレンジしたいことの1つは”アニメーションマクロ”です

 今回は、準備不足なのでサンプルファイルを共有するだけですが、何か一つでも、皆さんのお力になれることがあれば幸いです

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


にほんブログ村

アニメーションマクロ2

 前回は、アニメーションマクロの事例として、オブジェクト(四角形などの図形)が登場するマクロを紹介しました

 今回は、オブジェクトが移動するマクロをさわりだけですが紹介します

マクロを起動させると、テキストボックスが右側から移動してきます

この仕組みのポイントだけ解説しますね!

ActiveSheet.Shapes(“Txt1”).Left

コードにするとこういう形になります

ちなみにTxt1というのは、テキストボックスにつけた名称です

名称は昨日紹介した、検索と選択で指定できます

オブジェクトに名称をつけたら、下のコードの()の中に入れ、=で結んだ右側に位置を書きます

ActiveSheet.Shapes(“Txt1”).Left=100

この位置を指定するコードを繰り返し処理の中に入れると前述のテキストボックスが移動するマクロになります

次回は、アニメーションマクロを完成したいと思います!

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


にほんブログ村

アニメーションマクロ1

 最近、テレビでも動画紹介のようなコーナーが多くなってきました。スマホが浸透して、動画というものが本当に身近になりましたね。

 実は、エクセル上でも動画のようなものを作成できます

最初に、下のGIFをご覧ください

画像が画面に出現して、大きくなっていきます

今回は、この画像を出現するところだけ解説します

この画像を出現させることは手動でもできます

上のGIFの操作は以下の箇所から行えます

<エクセル画面上のホームタブ>検索と選択>オブジェクトの選択と検索>

ここでオブジェクトの表示、非表示はコントロールできます

この表示、非表示の処理をVBAコードで書くと以下のようになります

ActiveSheet.Shapes(“図1”).Visible = True or False 

検索と選択でオブジェクトに”図1”という名前を付与した上で、コードの中にオブジェクト名を組み込んでいます。ここが今回の回の一番のポイントです

短いですが、今回はここまでです

次回はもう少し、図1を動かしてみましょう!

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


にほんブログ村

2つの指標も楽々比較~双方グラフ~

 読者の皆さんの中でも、”売り上げと利益”などの複数の指標を組み合わせたグラフを作成している方も多いかと思います

 この複数の指標をグラフ化する場合、よく見られるのは上のような棒グラフと折れ線グラフを組み合わせたグラフだと思います。

 このグラフだと作成は確かに簡単ですが、見る側は指標にあわせて第一軸と第二軸を追いかけて数値を確認せねばならず、あまり見やすいとは言えません

 比べて、下の双方向グラフだと”グラフの形”が統一されているので、とても見やすくなります 

 この双方向の形だと、とてもシンプルなので、上の方へのプレゼンの際にも説明が行い易いと思います!

ぜひ、以下のテンプレートをご活用ください!

作成の仕方はまだ解説ページを作成していませんが、今度、作成した際に通知を致します!

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


にほんブログ村

複数のグラフを一括表示

読者の皆さんの中には、資料の中にグラフが多すぎて辟易した経験がある方も多くいらっしゃると思います

今回、提供するテンプレートでは、HyperLInkとマクロ、並びに、条件付き書式を使い、1つのグラフで複数のグラフを提供できるようにします

このテンプレートが多くの人の業務の効率化に役立つことを願っております

ちなみに詳細な仕組みを知りたい方は、ぜひこの記事をご参照ください!

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

エクセルにもテーブルマナーを!~関数不要の集計術~

 ビジネスにデータはつきものです。現在のような巷にデータ溢れている時代であれば、エクセルでデータを扱えて当然だと思われることも多いと思います。

 でも、エクセルが苦手な人には、データ集計を行えといっても苦痛だと思います。

 明日の会議までに資料を作成しろ、と言われても関数一つ知らねーよ!!

という方の為に、奥の手がエクセルにはあります。それがテーブル機能です。

エクセル内の表をテーブルにしておけば、色々と面倒な作業が簡単にできるのです。

 今回は、フィルター機能を使って抽出条件を変えながら、合計と平均を集計する方法を解説します。

 ちなみに、今回使用するデータは”年度別”、”製品別”、”地域別”、”売上金額”のデータですが、地域別の合計金額と平均を計算しましょう!

1.まずは表をテーブルに変換しましょう

 表のどこかにカーソルを置いて”Ctrl+T”を押しましょう

 すると次のようなポップアップが出るので”先頭行をテーブルの見出しとして使用する”にチェックを入れてOKボタンを押しましょう!これで表をテーブルとして使用できます

2.集計行を作成しましょう!

 画面上のデ―ブルデザインタブで”集計行”にチェックを入れましょう!

この集計行にチェックを入れる作業だけで、既に売上金額の合計(382,666,000)が計算されています!

3.フィルターで抽出範囲を変える、集計行を平均に変える

 フィルターで地域の抽出範囲を変えただけで合計金額が変わっているのが分かりますでしょうか?このテーブル機能の集計行は完全にフィルターの集計結果と連動していますので、様々な計算結果を得られます

 では最後に、”平均”を計算して見ましょう!

実は、集計行の▼マークをクリックして”平均”に変えるだけで計算できます

<まとめ>

 エクセルには、日本ではまだあまり知られていない便利機能が沢山あります!エクセルビギナーも、どんどん便利機能を活用して、せっかくのエクセルを有効活用しましょう!

 テーブル機能をマスターしたら、次はピボットテーブルです!テーブル機能からエクセル集計をはじめることで、集計技術の幅がよりいっそう広がっていきます。ぜひテーブル&ピボットテーブルの特集記事も参照してください

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


にほんブログ村

文字列から空白を取り除く_Power Query

文字列に空白が入っていて処理に困ったことってありませんか?

そういったデータに限って、大量にデータ数があったりしますので、手動で処理するのは困難です

Power Queryであれば直観的クリック操作により、一括で処理できるので、とても効率的です

今回、解説に使用するデータは次の画像のデータです

サンプルデータ

上の画像の商品名の列にある文字は最大で3文字しかないように見えます

実は空白文字が入ってるので、LEN関数で長さを測ると10文字あります

データを確認したので、これから本格的な解説を始めます!

目次

1.PQエディターを立ち上げる

2.トリミングを行う(空白を排除)

3.エディタの内容をシートに出力する

<まとめ>

1.PQエディターを立ち上げる

➀データ上にカーソルを置いて、データタブから”テーブルまたは範囲から”をクリックします

➁テーブル作成のポップアップが出たらOKをします

続きを読む 文字列から空白を取り除く_Power Query

列フィルター

エクセルの便利機能の一つにフィルター機能があります

フィルターをかけさえすれば、誰でも手軽に検索が行えます

でも、列方向にフィルターを行うにはどうしたらいいでしょう?

実は、リストとIF文、そして、列を非表示にするVBAのhiddenプロパティを組み合わせて使えば手軽に実現できます

つまり、フィルターの対象でない列を非表示にしていくのです

以下、列フィルターを行うポイントをかいつまんで解説していきます

まず、フィルターをする対象の文字をリストで網羅して表示できるようにします

ちなみにエクセルの画面はR1C1型式にしていおいた方が便利です

次に、列フィルターを行う対象範囲の最終列を取得しておきましょう

 例:LastC = .Cells(7, Columns.Count).End(xlToLeft).Column

最後に、最終列まで繰り返しを行うFor ~ Next文の中に、If文とHiddenプロパティの”組み合わせ文”を入れます。

リストの文字と一致しない場合には、該当する列を非表示にするようにします

 例:If .Cells(7, i).Value <> str Then

     Columns(i).Hidden = True

   End If

たったこれだけで、最終列がはるか遠くまで膨らんだ表でも手軽に検索が行えます

最後に注意点ですが

フィルターを解除する際には、非表示になっている列は最終列として取得できません。ですから、”セルが空欄でない場合には表示する”などのLoop文で解除するなどの工夫を行いましょう!

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


にほんブログ村

魅せるピボットテーブル

 多くの読者の皆さんにとって、ピボットテーブルに期待する主な役割とは、データを集計することだと思います

 実は、ピボットテーブルには日本では、まだこれまで知られていない機能が沢山あり、十分、”魅せる表”も作成できるのです

 ピボットテーブルに付随する”スライサー”機能を使うと、魅せる表を作成するだけでなく、データを”見たい切り口”に集計し直しながら、データを魅せることができます

 

 単に、スライサーを作るだけなら、とても簡単です

 ピボットテーブル上にカーソルを置いた後、挿入タブから”スライサー”を押すだけです

 スライサー自体を利用するだけなら、とても簡単なのですが、スライサー自体も魅せたい場合には、様々なテクニックが必要です

 詳細を知りたい方は、ぜひ専門コーナーの記事を参照してください

知れば知るほど”スライサー”の奥の深さに気づくと思います!

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


にほんブログ村

ピボットテーブル裏技

ピボットテーブルは数字の集計には欠かせない存在です

簡単な操作で、様々な切り口で数字を集計できます

でも、ピボットテーブルをそのまま資料にはできないと思っている方も多くいらっしゃると思います

なぜなら、以下の画像のように不要な表示がついてしまい、しかも表示を自由に変更できないからです

特に、合計・・・ってつくのが見栄えが悪いので、ピボットテーブルでせっかく作った表を手動で移し替えたりしたりしていると思います

ところが、ピボットテーブルの機能を使いこなせばここまで体裁が変わります

今回は、一つだけ、ピボットテーブルをそのまま資料として活用するための裏技を紹介します

例えば、上の事例で言えば、”合計/売上金額”という文字の”合計”部分を変えようとすると、こんなメッセージが出てエラーになってしまいます

こんな時は、”空白”を売上金額の文字の後に入れましょう!

実はそれだけで、自由自在にピボットテーブルの表示を変えれるんです

<まとめ>

いかがでしたか?ピボットテーブルはきちんと使い方を知っていれば、そのまま体裁のよい表になるんです

ピボットテーブルを集計するだけでなく、そのまま資料として使えればとても合理的ですよね!!

もっと、裏技の詳細を知りたい方はこちらから参照できます

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


にほんブログ村