タグ別アーカイブ: マクロ

お仕事の依頼

 実務を担う現場の方が使い慣れたエクセル。Excellent仕事術は、このエクセルを効果的に活用して、御社の業務改善やお困りごと解決の最適なスキームをご提案/ご提供します!

御社にこんな悩みはございませんでしょうか?

エクセル作業がブラックボックス化しており、膨大な人手がかかっている

分析資料は沢山あるが、業績改善に向けた課題や傾向が全く把握できない

プレゼン資料にどこかインパクトが無い

 Excellet仕事術では、これらの悩みに対して「現場重視」で現場の声を反映させながら解決策を提案します!

 ご相談自体は無料でうけたまわります。エクセルに関することであれば、どんなことでも幅広く「Excellent仕事術のガッツ鶴岡」へご相談ください!

プロトタイプ(試用版)の開発についても低価格で請負ます!

お問合先

Excellent仕事術の得意分野

VBA/マクロ開発

エクセル作業がブラックボックス化する理由は、大きく分けて3つあります。

エクセルシートのスパゲティ化

データのバケツリレー

エクセルファイルの共有

 Excellent仕事術では従来のIT部門では対応できなかったこの3つの問題を、これまで培ってきたマクロ/VBA開発力で解決します。

エクセルシートのスパゲティ化

 エクセルシートのスパゲティ化は、1シートに「データ」「計算」「作業スペース」を詰め込むことで起こります。

 異なる内容が詰め込まれている為、「どこの範囲がどの内容」で、「どの範囲とどの範囲がどのように絡み合っているのか?」が第3者に分かりにくくなります。

 スパゲティ化したエクセルシートは、作成した担当者しか扱えないだけでなく、データが不規則に蓄積されているため有効活用ができず効率化が行えません。

 スパゲティ化したエクセルシートを改善するポイントは、「データ」「計算」「作業スペース」を1シートに混ぜず、それぞれシート毎に集約することです。

 Excellent仕事術ではスパゲティ化したエクセルシートを、3つのステップで劇的に改善します。

・Firstステップ

   ➡ ヒアリング及びシートの中味の分析

・Secondステップ

   ➡ シートを「データ」「計算」「作業スペース」などの目的別に作成

・Thirdステップ

   ➡ 作業スペース・シートでの作業をVBAにより自動化

 改善したエクセルシートでの作業は効率化されているだけでなく、特定の担当者以外でも引継ぎの負担なく作業が行えるようになります。

データのバケツリレー

 エクセルファイルでデータを外部の会社や他部署とやり取りすることは、良く行われていると思います。

 データ活用の目的が外部の会社や他部署と違う為、「エクセルファイルの交換」はファイルやシート間での膨大な「データの転記処理」を発生させることになります。

 実は、VBA/マクロを活用すれば複数のファイルやシートの「データ取込み・変換処理」 を、一括で行うことができます。

一括処理のイメージ

 一括で「データ取込み・変換処理」が行えれば、膨大な転記処理から解放されるだけでなく、取り込んだデータを活用して「周辺業務」の効率化も行えるようになります。

 Excellent仕事術では、現場の声をお聞きして「データ取込み・変換処理」から「周辺業務の改善」まで徹底的にサポート致します。

エクセルの共有

 エクセル1ファイルで大量のデータを扱う場合によく出てくる問題として「共有」の問題があります。

 エクセルは表計算ソフトであり、本来は大量のデータを扱うには不向きです。1シートに蓄積できる行数に制限があり、蓄積データが大量だと動きが重たくなります。

 しかも、 1ファイルを複数の担当者で同時に共有して使用できない為、担当者に待ち時間が発生してしまい、どうしても業務効率が上がらなくなります。

 Microsoft社の製品では、データベースソフトとして「Access」があります。Accessであれば、行数に関係なく大量のデータを扱うことができ、複数の担当者で共有して使うことも可能です。

 ところが、Accessだと現場では行えない業務も中にはあります。特に「大きなクロス表での作業」などは、エクセルのような表計算ソフトを業務用にカスタマイズした表でないと効率があがりません。

 こういったエクセルでないと行えない業務を、複数担当者でエクセルファイルを共有しながら作業したい場合には抜け道があります。

エクセルとAccessをVBA技術により連携して使うという方法です。

 この方法であればエクセルとAccess、互いのメリットを組み合わせて業務を行うことが可能です。

 このエクセルとAccessn連携する仕組みでは、データはAccessに一元管理し、エクセルには都度、必要なデータだけ呼び出して活用します。

 このエクセルとAccessの連携を行う場合にポイントとなるのは「エクセルの役割」と「Accessの役割」の切り分けです。

 Excellent仕事術では、連携の仕組みを構築するだけでなく、業務を理解させて頂いた上で「連携のポイント」についても提案させて頂きます。

事例①

データ分析/統計処理

「数値/分析資料は沢山あるが、業績改善に向けた課題や傾向が全く把握できない」ことの主な原因は、鳥の目全体像を捉えることができていないことが考えられます。

 例えば「前期と比べて注文単価が何故下がったか?」について、注文単価自体の推移を見ても、単位荒すぎて「何故下がった」かはよく分からないはずです。

 逆に注文台帳を見ても、今度は単位細かすぎて「注文単価が前期と比べて何故下がったか?」はよく分からないはずです。

 では下に記述したように、注文を単価別にグループ分けして件数の推移を確認した場合はどうでしょう?

・低単価の注文件数の推移

・中単価の注文件数の推移

・高単価の注文件数の推移

 低単価の注文内容と高単価の注文内容では、注文に含まれる商品の違いや、注文した会員の行動や属性に違いが必ずあるはずです。

 低単価の注文件数の構成が高くなっているのか、もしくは高単価の注文件数の構成が低くなっているのか、を注視すれば「注文単価が下がった原因」はある程度見えてくるはずです。

 このように業績改善に向けた課題や傾向を捉えるには、必ず鳥の目でグループ別の推移を捉えることが必要です。

 このグループ別の推移を捉えるのに、必ずしも「データアナリスト」や「CRMソフト」が必要とは限りません。エクセルの集計機能と統計機能を駆使すれば、エクセルでも対応は可能です。

 Excellent仕事術では、これまで培ってきたエクセル集計技術と統計処理・技術を活用して、御社の数字分析のお手伝いをします。

会員分析

会員分析のポイントは大きく分けて3つあります。

・新規会員の獲得状況 ➡会員数自体の分母を増やせているか?

・新規会員の2回目のリピート状況 ➡新規会員が定着しているか?

・既存会員のリピート状況 ➡優良会員が確実に育成できているか?

 つまり、まずは「新規・既存」と「優良・非優良」の2つの切り口で会員のグループ分け(セグメント)を行った上で、会員のグループ間の移行状況を把握することが必要です。

 Excellent仕事術では上記の2つのグループの切り口から、更に深堀した切り口でグループ分けを行います。

そして、基本の「新規・既存」「優良・非優良」のグループに加えて、更に深堀りしたグループ間の移行率を把握するためのツールを提供します!

事例②

その他の分析

 Excellent仕事術では、発注・在庫分析や予算作成・中期計画のシミュレーションなども得意分野としております。

ぜひ、この分野についての悩み事もExcellent仕事術にお問い合わせしてみてください!

ダッシュボード化

 数字分析を行った内容については、社内で共有し、次の行動につなげていくことも大事なことです。

 Excellent仕事術では社内の効率的な業績報告、情報共有のために一目で現状を掴むことができるダッシュボードの作も行います 。

エクセルダッシュボード

プレゼン・資料作成

 競合他社とのプレゼン競争に勝つためには、「数字の魅せ方」に突破口があります。海外のエクセル活用事例をうまく取り入れた「数字の魅せ方」こだわりましょう。「数字なんてただの数でしょ?」。そんなことはありません。「目で見て、数字の変化がリアルにわかる」効率的な資料作成術を、Excellent仕事術/ガッツ鶴岡がご提供します

-シンプルで誰の目も釘付けにするグラフ関連資料の作成をいたします。

Excellent仕事術/ガッツ鶴岡の強み

業務分析の経験が豊富

-上場企業から創業期のベンチャー企業まで、様々な事業規模での業務分析の経験が豊富

-内部監査も含めた内部統制対策をとおして、業務フロー図等の作成・業務分析の経験多数あり。

数値管理の経験が豊富

-銀行や証券会社等の金融機関への数値説明・交渉の経験が豊富

-EC通販での予算管理や中期計画作成、各種分析などの経験が豊富

最新のエクセル技術

 Excellent仕事術/ガッツ鶴岡は、世界の最先端のエクセル技術を常にキャッチアップしています!

-海外では日本と違い、エクセルの新機能/便利機能をうまく使いこなして業務の効率化に成功している事例が沢山あります

-小難しいVBAコードや複雑な関数は必要ありません。Excellent仕事術/ガッツ鶴岡がお教えする世界最先端のエクセルの新機能を使って、効率よく簡単にエクセル作業ができるようになります。

-エクセルは元々、表計算ソフトです。データベースソフトではありません。しかしパワークエリという新機能を使えば、エクセルをデータベースソフトとしても使いこなせます

 Excellent仕事術のガッツ鶴岡がパワークエリとの連動を作成します/お教えします。

事例①

<商品管理システム/エクセルとAccessの連携>

 業務メンバー各自が業務に即したエクセルのクロス表を使用しながら、エクセルへの入力データはAccessファイルに蓄積して各自で共有する仕組みを構築

<改善前・課題>

★1つのエクセルシートに様々な業務データと入出力表が混在

・商品の特性上、入荷した商品を手動で分割・並べ替えて管理する必要があった

・商品の並べ替え順を各業務で使い回すため、1シート上に様々なデータが混在

データ蓄積型式が不規則になり、VBAなどの自動化手段の活用が不可能

・1ファイルをメンバー全員で共有して使用するため、業務メンバーに待ち時間が発生

<改善後・効果>

★業務データはAccessに一元管理し、エクセルの入出力画面を業務毎に分散

・データはAccessに一元管理し、ADOという技術を使用して、都度、必要なデータのみエクセルファイルに呼び出す仕組みを構築。このADOの技術により、1つ1つの業務に即した画面作成が可能になった。さらに他の業務メンバーがファイルを使っている間に発生していた待ち時間も削減できた。

・Accessに一元管理したデータを、RPAに連携して会計システムへの入力を自動化した。これにより、残業時間が1月あたり200時間減らすことに成功

事例②

EC通販における会員のセグメンテーション>

 会員の1年間の購買履歴とアンケートの集計結果を分析し、会員のセグメンテーションを実施。それまで一律にマーケティング施策を行っていたが、会員のセグメント毎の施策(例:セグメント別の割引率設定など)を実施できるようになった

実績

-商社・畜産部門向け商品管理システムの開発

 ➡エクセルとAccess及びRPAと連携処理

-客先マスタ登録業務用システム開発/エクセル・RPA連携

 ➡エクセルVBAにてRPA入力用データを成型

-EC通販会社での会員分析・マーケティング施策立案

 ➡エクセル分析ツールにて会員の購買履歴を統計処理にて分析

-EC通販会社向け在庫管理システム

 ➡適性発注率をエクセルを使用して分析

ストリートアカデミーで講師もしています

経歴

Excellent仕事術運営者:鶴岡 敦(ガッツ鶴岡)

 新卒で総合商社に入社後、ユニクロに転職。更にEC通販会社に経営企画室長として入社。

 EC通販会社にて膨大なデータ量に苦戦。必要に迫られて自らエクセル学習を重ねるうちに、 海外の活用例などを知るようになり、エクセルの可能性に目覚める

1993年慶應義塾大学商学部卒

2002年USCPA合格

大学在学中にプロボクサーとしてデビュー

現在もボクシングジムで練習を続けている

 

 

大人のためのプログラミングゲーム~エクセルマクロも学べる~

エクセルマクロ(VBA)をもっと広めるにはどうしたらいいかを考えて作成したのが、この親子でも楽しめる「めいろゲームです」。これまでも紹介してきたアニメーションマクロを取り混ぜながら作成してあります【無料ダウンロード】。

 3つの迷路に取り組むなかで、プログラミングの基本である「繰り返し処理」をゲームをしながら体感できるようになっています

 これからプログラミング学習を始めるお子様も楽しめるように意識して作成してあります

このゲームを作成するに当たっては、こちらのサイトに大いに刺激を受けました

https://studio.code.org/hoc/1

フェイスブックの創設者、ザッカーバーグも登場するキッズ用のプログラミング学習ゲームサイトです

ザッカーバーグが前述のゲームサイトでこう言っています

「コンピューターが本当に得意のことのひとつは、コマンドを繰り返すこと」

まさにITの本質だと思います

我々の今の生活に欠かせないコンピューターですが、「繰り返し処理」がなければ我々の今の生活レベルは違ったものになっています

逆に言えば、「繰り返し処理」さえ理解すればITの本質を相当カバーできます

また、この「めいろゲーム」ではエクセルのコードが1部ですが表示されます

・ゲームを行っている際中

・ゲームをクリアーした後



プログラミングの上達のコツの一つは、コードに慣れることです

 このゲームを通じて、簡単なコードでもいいので「慣れ」を感じて頂けると嬉しいです!

表示されるコードについて、概要を以下に解説します

・ ActiveCell.Offset(1, 0).Activate

これは、カーソルの位置を「下に1つ移動する」という意味になります

通常、エクセルのセルの位置は「A8」「C2」という形で表現されます

まず「列位置(A~)」があり、次に「行位置」が表現されています

実は、エクセルではR1C1という形で「行位置」「列位置」の順番にてセル位置を表現する方法があります(R➡Row、c➡Column)

つまり(行位置,列位置)という型式にて、あるセル位置を基準にして行列位置を完全に定量化して表現する方法が可能です

ちなみに列位置を一つ右へ移動する場合には、次のコードを書きます

ActiveCell.Offset(0, 1).Activate

・For文(For~Next)

ForとNextに書かれたコードを繰り返し実行します

繰り返す回数は「For A = B to C Step D」という形で表現されます

・Do Until文

ある条件を満たすまで、Do UntilとLoopの間のコードを実行します

次に操作について概要を解説します

めいろ1~3までシートが分かれていますが、それぞれのシートでの操作はほぼ一緒です

コードを表示させたくない時には、次の画面で非表示も選択できます

・コード記入画面

コードはリストで選択します

・各種ボタン

「スタート」ボタンを押すと記入されたコードに従って、ペンギンが動き出す仕組みです

「やりなおす」ボタンを押すと、コード等がリセットされます

「やりかた」ボタンを押すと、ゲームの解説が表示されます

・めいろ1

記入されたコードを上から順に実行していきます

・めいろ2

めいろ1のコードの内容を、プログラミングの構文で言えばFor~Next文で集約する内容になっています

*実際にFor文を書くことはありません

・めいろ3

めいろ1と2はかなり簡単ですが、3は少しトリッキーな内容も入れています

プログラミングの構文で言えばDo Until~文で繰り返す内容になっています

*実際にDo Until文を書くことはありません

ゲームは次のアイコンからダウンロードできます

アイコン

めいろゲーム 312.61 KB 5 downloads

...

注意事項を書いたシートがあるので、そちらは事前にご確認ください

ぜひ、プログラミング自体を楽しんでみてください!

にほんブログ村 資格ブログ ビジネススキルへ
にほんブログ村 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へ


にほんブログ村

Solverによるシミュレーション5~マクロ編・設定~

 今回からはマクロによりソルバーの設定・解決自体の自動化に取り組んでいきましょう!

 前回までの4回の解説では、ソルバーの基本設定から実践的に活用する方法まで解説させて頂きました

 Solverによるシミュレーション

  Solverによるシミュレーション2

 Solverによるシミュレーション3~実践編・整数設定~

 Solverによるシミュレーション4~実践編・バイナリ設定~ 

 ソルバーをマクロで活用できるようになると、弱気ベース、強気ベースなど様々なパターンで算出した値を瞬時に比較できるので、より実践的なシミュレーションが行えるようになります!

 今回はソルバーのシナリオを2つ、記録マクロで保存してみてVBAコードを比較してみましょう!

そうするとコードの書き方がつかめてきます

その前に準備が1つあります

 事前にVBE(Alt+F11で開く画面)でSolverライブラリを参照可能にしておきましょう!

このライブラリが無いと、記録マクロが動きません!

では本題に入ります

今回は1~3まで以下の表を通じて解説していきます

 注)D4セルも同様の数式(X1xX2)が入力されています

注)D3セルのYはシナリオ1用、D4セルのYはシナリオ2用になります

1.シナリオ1記録(※X1,X2は4以下の制約にてYを最大化する)

➀以下のシナリオでマクロを記録

②VBEを開けて重複しているコードを削除し、コードを以下の画像のように3部構成にします

③表の値を1にセットし直してシナリオ1マクロを起動

もしもうまくいかなかったら、余計なコードまで消してしまったか、もしくは前述の”Solverライブラリ”にチェックが入っていない状態になっています


2.シナリオ2記録(X1,X2は2以上の制約にてYの値を4にする)

➀設定リセット

記録する際には、ソルバーの設定画面上に前回の設定が残っているのでリセット処理を行っておきましょう

②以下のシナリオでマクロを記録

③VBEを開けて重複しているコードを削除し、コードを4部構成にします

注)シナリオ1にも”SolverReset”を追加しておきましょう!

④表の値を1にセットし直してシナリオ2マクロを起動する

どうです?うまくソルバーは無事に稼働したでしょうか?

3.2つの記録マクロを比較してみる

大前提として2つのシナリオの違いをもう一度整理してみましょう!

➀目的セル、変数セル、及び制約条件を指定するセルの行位置が違う

②目標値の設定の仕方が違う;シナリオ1/最大値、シナリオ2/指定値

③制約条件の符号が違う:シナリオ1/<=、シナリオ2>=

どうでしょう?朧気ながらどのへんをVBAの変数で置き換えられそうかについてのイメージがついてきたと思います

 今回は記録マクロにとどまりましたが、次回は本格的にソルバー・マクロを作成していきましょう!

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


にほんブログ村

ソルバーによるシミュレーション6~マクロ編・操作~

 今回は、前の回にて作成した2つのマクロを書き換えて、本格的にソルバーを動かすマクロを作成します

前回作成した2つのマクロは、作成条件が次の3つの項目で違っていました

➀目的セル、変数セル、及び制約方法を指定するセルの行位置

目標値の設定の仕方;シナリオ1/「最大値」、シナリオ2/「指定値」

制約方法の指定:シナリオ1/「<=」、シナリオ2「>=」

記録したマクロのコードを比較して、上記の違いがどう反映されているかを見てみましょう!

シナリオ1
シナリオ2

上がシナリオ1で下がシナリオ2です

おおよそ、黄色の目印を付けたうち、どこが「変数」で置き換えられるか見当がついたと思います

変数で置き換えられる箇所をまとめると、次の通りになります

・SolverOK➡SetCell:「目的値のセル」

      ➡MaxMinVal:1は最大値、2は最小値、3は指定値

      ➡ValueOf:指定値がある場合に指定(無い場合は0)

・ByChange➡「変動する値:値範囲」

・ SolverAdd➡CellRef: 「制約条件の範囲」

      ➡Relation:制約方法の指定

       *下の図の順番で指定:etc 「<=」は1、「=」は2)


      ➡FormulaText:制約条件の指定           

今回は前回作成したシナリオ1マクロを以下の3つ、

1.SetCell(目的セル)、2.ByChange(変数セル)、3CellRef(制約条件セル)

それぞれを変数で置き換えてマクロを動かせるようにしましょう!

1.範囲を指定できるようにしておく

今回はC2セルで1を選んだら上の行を操作する(前回のシナリオ1)、2を選んだら下の行(前回のシナリオ2)を操作するようにします

次の2.ではシナリオ1の前に、IF構文を配置し、C2セルに応じて前述の1~3の範囲を動かせるようにします

If mySheet.Range(“C2”).Value = “1” Then ~ else ~

2.マクロに変数をセットしてマクロを実際に動かす

➀If構文で変数を可変にする

②ソルバーのコードに変数を設定する

各X1、X2を1に直しながら、マクロを試してみてください

<まとめ>

 今回は、前回操作した記録マクロの範囲(以下の3つの範囲)を事前に指定できるようにしました

1.SetCell(目的セル)、2.ByChange(変数セル)、3CellRef(制約条件セル)

 次回はいよいよ、ループ処理により、複数のシミュレーションを一気に走らせることができるようにします!

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


にほんブログ村

ソルバーによるシミュレーション7~マクロ編・ループ処理~

 今回はマクロ編の総仕上げとして、計算結果を示すダイアログボックスを表示させないまま、繰り返し処理の中でソルバーを動かせるようにします  

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

 前回は、前々回に作成した記録マクロを修正し、ソルバーの指定範囲(目的セル、変数セル、制約条件)を変数で指定できるようにしました(TargetRange、myRange)

前回作成マクロ

 繰返し処理とソルバーを組み合わせると、一度のマクロ操作で必要な値を一覧で取得できます。

 一覧で取得した値を比較することにより、 シミュレーションの精度を格段に向上させることができます

それはもう、AIを導入したかのうような感覚になりますよ!

ぜひ今回で繰り返し処理をしっかり習得しておきましょう!

今回、前回作成したマクロを引き続き使って、繰り返し処理をおこなっていくのですが、

実は今回、習得するポイントはあまり多くなく、1つだけです

!ソルバーのダイアログの表示をどう防ぐか?

ソルバーの計算が終わった後にダイアログが必ず表示されますよね?

この表示が出てしまうと繰り返し処理が止まってしまいます。

このダイアログの表示を止める方法については、後ほど解説致します。

 繰り返し処理自体のVBAコードの詳細な解説については、他の専門サイトや専門書に譲りたいと思います

目次

ソルバーの各指定範囲を変数で置換え

ソルバーのダイアログを非表示

実際に動かしてみる

<まとめ>

ソルバーの各指定範囲を変数で置換え

前回は2つの範囲をIF構文で切り替えて指定できるようにしました

今回は表の最終行(変数:Last)を取得した上で、カウントアップ用変数のiと連動してソルバーの対象範囲を変えていけるようにします

上の画像にあるmyRowはiと連動してカウントアップしていきます

以降は有料ページ/課金サービスへ

エクセルで作るタイマー

エクセルでも、簡単な技術を組み合わせただけでここまで出来るといる!!

これを「エクセルで作るタイマー」で証明したいと思います

以前に書いた記事、スピードメーターグラフで円を傾ける技術について解説したことがあります

1_4.gif

上のGIFの通り、「系列のオプション」画面で「グラフの基線位置」を変えると円グラフが傾きます

この仕組みを活用して、1分タイマー作成します

時計

以下、「タイマーのオブジェクト作成」「ループ処理の作成」の2段階で作成方法を解説します

1.まずはタイマーオブジェクトを作成します

まず外円、棒(秒針)を作成します

秒針は円と棒を組み合わせて作成します

画像に alt 属性が指定されていません。ファイル名: 秒針.jpg

その後、作成した円と秒針をグループ化してオブジェクトを作成します

グループ化して置かないと、秒針と外円がうまく連動して動かなくなるので注意が必要です

19

オブジェクトを作成したら、オブジェクトに名前(時計)をつけておいて、後でVBAでコードを書きやすくしておきましょう!

以下がオブジェクト名を付ける画面です

20

上記の画面は「HOME」タブの右側「検索と選択」から開けます!

この「選択の画面」の詳細な使い方については、以下の動画を参照してください。

2.ループ処理のマクロを書く

待ち処理を組み合わせて、秒針を動かすためのループ処理をコードで書きます

①待ち処理⇒常に「今」から1秒待ち処理

以下が、待ち処理のコードです

Application.Wait Now + TimeValue(“00:00:01”)

②ループ処理のカウント(変数→i)をそのまま秒針の角度にします

1.で作成したタイマーオブジェクトの角度を変えていきます

Worksheets(“時計”).Shapes(“時計”).Rotation = i

③最後は時計オブジェクトを0に戻して終了です

Worksheets(“時計”).Shapes(“時計”).Rotation = 0

ぜひ、以下のサンプルファイルもダウンロードして直接参照してみてください

アイコン

タイマー 49.76 KB 53 downloads

...

このタイマー実は正確には1分で終了しません。うまく調整する方法もあると思いますが、今回は割愛しています

グラフを傾けながら作成するスピードメーターグラフの作成の仕方については、こちらで記事を書いています ⇒ スピードメーターグラフ

画像に alt 属性が指定されていません。ファイル名: スピードメーター2.gif

また、エクセルのアドイン機能でもタイマーがあります!

カラフルでとても使いやすいです!

興味のある方はぜひタイマーアドインをダウンロードしてみてください

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

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