エクセルマクロ オンライン講座コメント紹介

コメント紹介
   └ エクセルマクロ・VBA基礎編フォローアップ ベーシック
       └ 表を解析して1行のリストを作る、1行のリストを解析して表にする(その2)

表を解析して1行のリストを作る、1行のリストを解析して表にする(その2)

[8415] 2017-06-23 18:30:20 受講生さんからの投稿です。

お世話になります。
現在、エクセルマクロ・VBA基礎編フォローアップ を学習していますが、6月末でキャンペーン終了ということなので、不安すぎて、まだ基礎編フォローアップに苦戦しながらも、先走り発展編1を購入しましたが、いつになれば取り掛かれるのかわかりません。
でも、少しずつでは、ありますが毎日学習を進めていっています。
現在、基礎編フォローアップ動画18の問題2で戸惑っています。
問題1は理解できたのですが、IF文の中のtiku=””の意味が、まったく理解できずに、マクロを書くことができません。
何度も間違っても、うまくいきません。

 


[8430] 2017-06-26 10:01:31 小川慶一さんからの投稿です。

受講生 さん:

> 現在、基礎編フォローアップ動画18の問題2で戸惑っています。
> 問題1は理解できたのですが、IF文の中のtiku=””の意味が、まったく理解できずに、マクロを書くことができません。
> 何度も間違っても、うまくいきません。
>
4:28ごろ、上手くいかない例を示していますね。
ここまでは、どういう問題が起きているのか、理解できていますか?

以下のようになってしまっていますね。

セルG2: G2に書かれるべき値
セルG3: G2, G3に書かれるべき値 (G2に記入した分が余計)
セルG4: G2, G3, G4に書かれるべき値 (G3に記入した分が余計)
セルG5: G2, G3, G4, G5に書かれるべき値 (G4に記入した分が余計)
セルG6: G2, G3, G4, G5, G6に書かれるべき値 (G5に記入した分が余計)
...

この「書かれるべき値」を入れているのが変数tikuです。

であれば、どうすべきか?
各行での情報を記入する処理を終えたら、変数tikuの値を""にすればよいわけです。
そのタイミングで、

tiku=""

していますね。
こういう風に変数の値を自分で宣言直後の状態に戻することを、「初期化」と言います。

では、「各行での情報を記入する処理を終えたタイミング」とはいつか?というと、それは、以下の[1], [2]の処理をした直後、となります。
[1] 左の表で、前後の値が異なっていたことを検知した
[2] 最後のデータ入力を終えた

まずは、この説明でどうでしょう。

変数の初期化は、以下の問題の回答でもやっています。

以下は、スラスラ解けますか?
https://online.pc5bai.com/movie/index/27/150


あと、

> 問題1は理解できたのですが、

というのが、多少不安です。
「理解できた」だけの蓄積だといずれひっかかります。「問題を見た瞬間、勝手に手が動いて、ほとんど頭を働かさなくても勝手に解ける」というくらいまで練習してください。

先の問題が「理解できない」状況は、たいてい、前の問題での学びを「理解できた」程度の学習でとどめていることによって起こります。
数学でも、期末試験で間違えた問題があったとして、黒板で先生が解説したのを見て「理解した」と思っただけの人は、模試や入試で同じ問題が出た時に必ず間違えます。そのときに解けるようになっている人は、手に馴染むまで復習した人です。

見当違いかもしれませんが、あとあと他の方がこのやりとりを見たときに参考になるようにという意味もこめて、あえて以上書いてみました。

他の受講生の方のコメントもいろいろ参考になると思いますよ。
このページ内なら、たとえば以下:

>3858 : 佐藤 あゆむさんのコメント (2015-02-17 07:40:17)
>9回目から復習をしてきて18回目まで戻ってきました。
>それでも書くのに悩んだ12回と18回は、また復習しますヽ(*´v`*)ノ

>3827 : 小川慶一の回答 (2015-02-13 06:38:57)
>匿名 さん:
>
>For Next構文の入りにそれが初回処理かどうか判断して条件分岐するというのは常道です。
>これもパターンなので、第17回で紹介したやり方と対にして覚えます。
>
>>もう一度、最後の方の難しかったところを観てから、次の「発展編1」に進もうと思います。
>
>素晴らしいです。絶対正解です。
>
>知識に触れることをむやみに追うより、体得するプロセスを重視したほうが近道です。

>3784 : 佐藤 あゆむさんのコメント (2015-02-09 08:00:07)
>今回は2日間粘って[2]を完成させました。

>2635 : 浜口 智之さんのコメント (2014-10-04 19:13:14)
>今までの回で、書いていく中で、色々試して失敗しましたが、その失敗の方法が今回使えたりと、たくさん失敗する意義を感じる最終回でした。
>今の頭の状態で、もう一度、第一回目から、新たな発見と知識の定着のため、マクロを書いてみようと思います。

>566 : 池本利恵さんのコメント (2013-04-30 00:00:00)
>こんにちは~☆
>
>完走できました~♪
>嬉しいです~(*^^*)
>
>問題1は簡単でしたが、問題2は昨日からたくさん書いて書いて失敗しまくりました(^^;
>動画をみてからは、先生とおなじように1個ずつ動かして、自力でできるまで何回も書きまくりましたo(^^)o
>先生と同じように書いているうちにわかってきました。
>というか、書かないとわかんないし、書いたほうがはやいですね。
>
>自力でいろいろやってみて、
>問題1の2行部分のマクロ(の変数と仕掛け)を活用したほうがいいということにはなったけれど、
>
>問題1の仕掛けで上と行が違ったらどうする、という部分と、上の行と違わなくてもデータをひろって並列したいという部分をどうやって両立させるのかがわからなかったです。わからないなりに書いていると、そこは考えなくても両立してて、上の行と違わないときにデータをひろってきているらしい。でも、いらないデータもひろってくるらしい、1行とぶらしい、というところまでいきました。
>
>なので動画をみて、同じマクロをかいたら、考え方がすんなり頭に入りました(^^) 
>
>・ひろってきたいデータの重複をさけるために、
> データをいれたあとにchiku = ""
>・1行ずれるから -1
>・でも開始したい一番上の行が2ならそれが-1になってしまって、開始したい行の上まで影響するから if文で2>
>・最後たりないからfor next構文のあとにもう一回加える
>
>この4つ、かなりおもしろかったです。
>そうふうにいろいろ試すんだな~と、パターンというより考え方を学びました。

>563 : 星野智幸さんのコメント (2013-03-20 00:00:00)
>2月に受講した星野です。
>フォローアップセミナー完走できました。ホッ。
>見ないでやれるようになったら、素敵なので、二周目はじめました。
>一周目は、自分で1時間くらい考えてから解答を見て、実際やってみるというパターンでやりました。ただ、独力でできた問題は少なかったことは悔しかったです。

>559 : 山根信行さんのコメント (2013-02-08 00:00:00)
>最終回でこんな難題とは。
>2問目は解けませんでした。
>解説動画見るとおしいとこまでいってたのにそのあとさらにぐちゃぐちゃにしてしまいました。
>変数=""を入れてれば解けてたのに悔しいです。
>
>悔しいのでこのパターンを10回書いて寝ます。

>557 : 佐藤 尚子さんのコメント (2012-12-30 00:00:00)
>やっと2週目ができました!
>この№.18も何をやっているかわかって(^_^;
>ホッとしました。
>「理解してから書こうとするより、何度も書いて失敗しながら進んでいく方が早い」との話があり、その通りだと思いつつも、解らないとそこで書くのをやめてしまいそうになるので、もしまた解らないと思ったら、前に戻ってやり直しつつ進めていきたいと思いました。

>550 : 加藤美智子さんのコメント (2012-11-07 00:00:00)
>問題[2]の「担当区域」を正解になるよう色々にやって見る!(動画を見た後でしたが…(~_~;))
>やって見ると色々発見がありました。
>何度もやってみたいと思いました。

>1218 : 受講生さんのコメント (2012-09-09 17:10:00)
>基礎編の総まとめのような感じでした。
>ものづくりと同じ考え方なんだと納得した次第です。小川先生の書きながら考える姿勢を動画で見ることができたのが最高に参考になりました。

 


[8458] 2017-06-28 10:01:40 受講生さんからの投稿です。

お世話になります。
【基礎編フォローアップ動画18の問題2で戸惑っています。
> 問題1は理解できたのですが、IF文の中のtiku=””の意味が、まったく理解できずに、マクロを書くことができません。
> 何度も間違っても、うまくいきません。】と質問をしました。
先生の回答で下記のことが、凄くわかりやすいのですが、
先の問題が「理解できない」状況は、たいてい、前の問題での学びを「理解できた」程度の学習でとどめていることによって起こります。
数学でも、期末試験で間違えた問題があったとして、黒板で先生が解説したのを見て「理解した」と思っただけの人は、模試や入試で同じ問題が出た時に必ず間違えます。そのときに解けるようになっている人は、手に馴染むまで復習した人です。

現在、何度も繰り返し復習をしていますが、初期化のsumifの編でやったことも繰り返しやっています。
この学習方法は的を得ているのでしょか?

 


[8459] 2017-06-28 10:26:03 小川慶一さんからの投稿です。

受講生 さん:

> お世話になります。
> 先生の回答で下記のことが、凄くわかりやすいのですが、

ありがとうございます。

> 先の問題が「理解できない」状況は、たいてい、前の問題での学びを「理解できた」程度の学習でとどめていることによって起こります。
> 数学でも、期末試験で間違えた問題があったとして、黒板で先生が解説したのを見て「理解した」と思っただけの人は、模試や入試で同じ問題が出た時に必ず間違えます。そのときに解けるようになっている人は、手に馴染むまで復習した人です。
>
> 現在、何度も繰り返し復習をしていますが、初期化のsumifの編でやったことも繰り返しやっています。
> この学習方法は的を得ているのでしょか?

僕が上で書いたことを箇条書きにしますね:
・「理解できた」程度の学習でとどめていては不十分です。
・手に馴染むまで復習することが大切です

受講生さんがやっていると言われていることを箇条書きにしますね:
・この問題を何度も繰り返し復習をしている
・初期化のsumifの編でやったことも繰り返し復習している

上記2つを比較すると、僕と受講生さんとは、違うことを言っているということに気づけますね。
上記を比較すると分かることは、以下のとおりです。

僕は「手に馴染むかどうか」を判断基準にしている。一方、受講生さんは、「繰り返しているかどうか」は基準になるか?と質問している。

よって、「この学習方法は的を得ているのでしょうか?」という問いへの答えは「いいえ」です。

くり返さなくても、手に馴染んだならばOKです。
一方、手に馴染まないならば、何度繰り返しても意味はありません。手に馴染んだかどうかだけを判断基準にしてください。ある問題を繰り返しても手に馴染まないならば、何かを変える必要があるでしょう。例えば、繰り返し方を変える。あるいは、もっと基本的な問題からやりなおす(前の問題での学びを「理解できた」程度の学習でとどめていないか?の確認をする)、等々。

 


[8479] 2017-06-30 12:06:21 伊藤博文さんからの投稿です。

お世話になります。
先生が回答くださった内容ですが、以前に舞い戻って、復習をしています。【ある問題を繰り返しても手に馴染まないならば、何かを変える必要があるでしょう】ということなのですが、立ち戻って、前の問題をやってみると、
変数の宣言のところが、出来ない状態や、全く思いつかない状況のところが、あります。何に、フォーカスすればいいのか、前途多難です。

【くり返さなくても、手に馴染んだならばOKです。
一方、手に馴染まないならば、何度繰り返しても意味はありません。手に馴染んだかどうかだけを判断基準にしてください。ある問題を繰り返しても手に馴染まないならば、何かを変える必要があるでしょう。例えば、繰り返し方を変える。あるいは、もっと基本的な問題からやりなおす(前の問題での学びを「理解できた」程度の学習でとどめていないか?の確認をする)、等々。】

結局、理解できた程度だということは、わかるのですが・・・・

 


[8480] 2017-06-30 14:40:36 小川慶一さんからの投稿です。

伊藤博文さん:

> 変数の宣言のところが、出来ない状態や、全く思いつかない状況のところが、あります。何に、フォーカスすればいいのか、前途多難です。
> 結局、理解できた程度だということは、わかるのですが・・・・

8430でコメントしたとおりです。

「何に、フォーカスすればいいのか」ということですので、改めて、書きますね。
フォーカスすべきことは、「手に馴染んだか」どうかだけです。
そこだけを意識して、「問題を見た瞬間、勝手に手が動いて、ほとんど頭を働かさなくても勝手に解ける」というくらいまで練習してください。

容易に暗唱できる「かけ算九九」くらいまで。

> 変数の宣言のところが、出来ない状態や、


「問題を見た瞬間、勝手に手が動いて、ほとんど頭を働かさなくても勝手に解ける」という状態にないですね。
「容易に暗唱できるかけ算九九」にはまだ遠いですね。
ですから、手を動かして、勝手に解けるようになるまで練習してください。

> 全く思いつかない状況のところが、あります。


もっと前の問題を「問題を見た瞬間、勝手に手が動いて、ほとんど頭を働かさなくても勝手に解ける」状態にしていることが大前提です。
そのうえで、解説なんども見て、何度も手を動かして実際に書いてください。

誰かに教えるつもりで自分に説明してみるというのも良いですよ。
人に説明しようしてみると、何が分からないのか、何が曖昧になったままなのか、自分でよく分かります。

 


[8481] 2017-06-30 15:21:04 受講生さんからの投稿です。

お世話になっております。
この度の返信をいただいた内容を、真摯に受け止めて、
努力していくことといたします。

まだまだ、掛け算の九九の域には到底達していないので、
努力が全く足りていないことを痛感いたしました。

フォーカスする点を見つけることが、できました。
どうも的確なコメント、アドバイス有難う御座いました。

 


[8490] 2017-07-02 23:11:01 小川慶一さんからの投稿です。

受講生 さん:

当初、僕がこのページでしたコメント8430に戻ります。

「他の受講生の方のコメントもいろいろ参考になると思いますよ」ということで、過去の受講生の挑戦の記録を示しました。

マクロ上達するには、あとは、実務でガンガン書くことですね。
1月もしっかりやればかなり変わります。応援しています☆

 


まずはここから!スマホでも学べる無料動画講座

今なら先着30名限定で無料!定価4,800円の、初心者のためのエクセルマクロ動画講座。
  1. Excel 97~Excel 2016まですべて対応。動画本数20本、総再生時間2時間44分53秒
  2. PC, Mac, iPhone, iPad, Androidのお好みの環境で、いつでも好きなときに学べます。
2004年から10年間述べ3,000名以上に実施した研修の経験と実績を集約した講座です。
いますぐ無料で試してください。

トップへ