If文とForNext構文を組み合わせる

この講座は有料講座です。
講座の購入後ご覧になれます。

ログインアカウントの新規作成

解説

【やや音声不具合あり】
演習問題テーマ:If文とForNext構文を組み合わせる

基礎編講義本編で登場した、 If 文です。
今回紹介した
 If 条件 Then
 Else
 End IF
の形は、丸暗記してください。

Visual Basic上、エクセル上で僕が字を書いたりしているときのショートカットキー操作は、しっかりマスターしてくだざい。「ハナコのステップ」等の基本パターンについても、ここで、しっかり慣れてください。

この教材についての過去の質問・感想

11343 : 小川慶一の回答 (2019-04-12 15:01:36)

田中 宏明さん:

>親オブジェクトの全セルを包むRangeオブジェクトで

親オブジェクトの全セルを「含む」でしょうか?

ともあれ、

> ・RangeはWorkSheetのプロパティであって、セル範囲をプロパティとして持つことができるRangeオブジェクト
> ・CellsはWorkSheetまたはRangeのプロパティであって、親オブジェクトの全セルを包むRangeオブジェクトで、更に引数で1つのセルを指定できるRangeオブジェクト

その言葉の意味をスラスラ理解できたらもはや基礎編レベルではないですねw



> 受講生 さん:
>
> RangeとCells、どちらもRangeオブジェクトです。
>
> 詳しくは以下の通りです。
> ・RangeはWorkSheetのプロパティであって、セル範囲をプロパティとして持つことができるRangeオブジェクト
> ・CellsはWorkSheetまたはRangeのプロパティであって、親オブジェクトの全セルを包むRangeオブジェクトで、更に引数で1つのセルを指定できるRangeオブジェクト
>
> これは頭が混乱して仕事が進まなくなるので、小川先生の導きに従うのみですね。


11340 : 田中 宏明さんのコメント (2019-04-12 00:58:09)

受講生 さん:

RangeとCells、どちらもRangeオブジェクトです。

詳しくは以下の通りです。
・RangeはWorkSheetのプロパティであって、セル範囲をプロパティとして持つことができるRangeオブジェクト
・CellsはWorkSheetまたはRangeのプロパティであって、親オブジェクトの全セルを包むRangeオブジェクトで、更に引数で1つのセルを指定できるRangeオブジェクト

これは頭が混乱して仕事が進まなくなるので、小川先生の導きに従うのみですね。


11336 : 受講生さんのコメント (2019-04-11 21:17:30)

小川先生

お世話になります。
ご返信ありがとうございました。

お話し聞けて良かったです。
正直、書き方を否定された時はその講師にめっちゃ腹が立ちまして(笑)
とっさに先生に質問してしまいました。
でも使い方の違いがわからない私は言い返すこともできず…。
すっごく悔しかったです。

この3ヶ月、その講師から学んだことは本当にわずかなもので
質問しても回答はほとんど的をえていないのにこちらがわからないと
逆切れをしてくるような方だったのでテキストを読み込み練習問題と並行して
ガラパゴスタディで購入した動画を繰り返し見て学んでいました。
職業訓練とは名ばかりでほぼ独学でした。

お役所仕事なのはわかりますが、講師の質を見直すべきだとつくづく感じました。
受講生の中でもともとVBAの経験がある人は独学で勉強し、まったく初めての人はVBAは
自分にはレベルが高すぎた。と途中であきらめてしまっていました。
良い講師であったのならそうはならないと思うのですが。

小川先生とは真逆でVBAエキスパートの資格命!みたいな方でした(笑)
なのでわからない人の気持ちもわからない。
というか、実務で使うことは重視せず、資格の取得のみに力を入れているみたいな感じなのかなと。
教える側の人間になってはいけない人だわ。と思いながら過ごしてきました。

これからも自信を持ってRangeで書いていきます!
職業訓練を修了したら仕事復帰をすることになるので実務を積むチャンスです。

転職をきっかに職業訓練に参加したのですが、必要なのは長い時間かけて学校に通うことではなく、
日々の実務の中で少しずつ勉強したマクロを使って業務の効率化していくことだなとわかりました。
火事場の馬鹿力じゃないですが、切羽詰まらないと身に付き方も違うなと思いました(^_^;)
残り少しですが少しでも実務に直結できるようなコードが書けるように動画を見ます。
また、動画に関して質問があった際はさせて頂きますのでご教授お願いします。


11335 : 小川慶一の回答 (2019-04-11 17:38:44)

受講生 さん:

ははは。

自分の言葉に責任を持って、信念を持って教育してくれる人から学びましょう。
そうでない人の言葉はすべて戯言です。

借り物の言葉に真実はありません。
もし借りてきたその言葉が全否定されることがあっても、今度は、自分のせいではなく、その人が借りた言葉を発した人(この場合は、その某先生)のせいにするだけです。取り合うだけ無駄。
そんな地縛霊以下の存在に惑わされぬよう ヾ(´ー`)ノ


> ① 処理が遅い

だいたい、そういうことを言う人に限って、マシンで余計なサービスが動いていて、そっちで処理に時間を取られているという...。
とか、ショートカットキーぜんぜん使ってなくて、マクロの実行までによけいに時間がかかっている、とか (^^;

そもそも、処理速度のことを言うなら、「VBAを使う」という選択自体ダメです。

「アルゴリズムがイケてなくて処理が冗長」とかならともかく、RangeがCellsかの違いなんて、あったとしても、どんぐりの背比べ。

そんなところでチューニングに凝っても、そんなの過剰最適ですし、僕はそんな微々たる差には関心を持てないです。

RangeかCellsかで悩んでいる間に、事務仕事全般で改善できることはもっともっといっぱいあるはずです。
その先生は、VBAのことしか頭になくて、「業務改善と何か」とか、そういうことにはさっぱり意識が向かないのでしょう。

あとは、知識をひけらかしたいだけ、とか。


> ② そんなコードを書いていると笑われる

うーん、どうですかね。


Cellsを使うことのメリットとしては、横方向へのくり返しも簡単に書けるというのはあります。
Rangeなら、そのためには、Offsetを使いますね。理由の説明は略しますが、横方向へのくり返しならRangeよりCellsのほうが良さそうですね。

でも、DPRに基づいて仕事をしているとしたら、そもそも横方向へのくり返し自体滅多にすることはないです。
なので、上記の理由は、「DPRに基づいて仕事をしていたならそもそも滅多に生じないことのための準備」ということになります。

一般的に、ダメな人作ったダメな資料ほど、横方向へのくり返しを必要とします。
「Cellsは横方向へのくり返しが便利!」という人もいますね。そういう人は、たぶん、普段見ているもの、取り扱っているものがダメなのでしょう。

一方、RangeはRangeで、複製セル範囲を簡単に指定でき、かつ、そのセル範囲をメモリに格納できるので、そういうときにはCells(を組みあせて範囲選択する)より記述が容易で、かつ、(おそらく)記述にかかる負荷に比して高速です。(Cellsでも複数セルを含む範囲を指定するはできます。けど、書き方が面倒くさい)


僕が基礎編でRangeを使っている理由はいろいろなのですが、そのひとつとして、「自動記録で得られるコードはほぼRangeで記述されているから」ということが挙げられます。
(決して、「『大村あつし』や『渡辺ひかる』といった大御所が2000年代に書いた教科書ではCellsではなくRangeが使われていたから」とかではありません (^^; )

「自動記録で得られるコードはほぼRangeで記述されている」にもかかわらずCellsも教えるとしたら、受講生は、CellsとRangeの両方を習得しなくてはいけません。
一方、Rangeだけで教えたら、Cellsについて学ぶストレスを初心者に与えないで済みます。

そして、Cellsでできることは、Rangeでもできます。

初心者はただでさえ他にも覚えることが多いのですから、RangeとCellsの両方を教えると大きな負荷になります。
言い換えると、Cellsを覚える代わりに、初心者は、別の何かを覚える余裕がなくなります。

では、「他の何か」をを覚える代わりにCellsを覚える必要があるのか?Rangeで目的果たせるならそれでいいじゃない、と僕は思います。

そもそも、初心者にとっては、冗長かとか高速かとかいうこと以前に、「まずは、思い通りに動くコードを書けるようになる」ということが重要なのですから。
そういう意味でも、パフォーマンスのことは二の次です。


>上級者向けの講座ではCellsを使っているのでしょうか?

いえ。上級者向けでもRangeです。
複雑になればなったで、Rangeのほうがかえって僕は便利と感じます。


あと、VBAでコーディングスタイルのことで人に直接喧嘩を売ってくる人は、たいてい、VBA以外は書けないか、ほとんど書けない人ですね。
世界に対する見聞が狭いです。狭い世界しか見えてないから、そこでの細かい違いばかりが気になるのでしょう。


..ということで、いろいろな角度からいろいろ書いてみました。


あと、以下のブログ記事も参考になるかな、と。

○[質問] 同じ機能を実現するマクロの書き方が複数ある場合、どの書き方が良いか分からなくて迷います。
https://www.exvba.com/4378/

↑記事の内容を思い切り要約して一行にまとめると「万人を満足させる書き方なんてない」ということです。


以上のとおりです。
お役にたてれば、と。





> お世話になります。ご無沙汰しております。
> For Nextステートメントについて質問があるのですが、For NextステートメントはRange("A" & i )のように書いてはいけないと今日言われました。
> Cells( 1 , i ) のように書きなさいと。
> 理由としてはRangeでかくと
> ① 処理が遅い
> ② そんなコードを書いていると笑われる
> との事です。
>
> 私は小川先生の講座で1年以上VBAについて勉強してきましたのでこの書き方に違和感はありませんでした。
> ちなみにCellsの書き方も知っています。
> そこで、小川先生がこの書き方でやってきているのは初心者に理解しやすいようにですか?上級者向けの講座ではCellsを使っているのでしょうか?
> Rangeの書き方でも行の処理ならできるので良いかなと思っていたのですが今日、思いっきりその書き方はダメだよと言われました。
> と、言うのも現在、東京都が行っている職業訓練というものでExcel VBA実践コースというのを受講しています。
> 2月から3ヶ月間のコースでまもなく終わりを迎えます。
> その講師の先生から言われました。
> その先生の教え方はものすごくわかりにくく、受講者のほとんどが授業を聞かずに自分たちでテキストを読み込んだり、ネットで調べながら勉強していたほどお世辞にも優秀な講師とは言えないです。
> どこがダメか具体的に教えて欲しいといっても処理速度が遅いのと田中先生(Office田中)が言っていたからとしか説明してもらえませんでした。
> 私の中では信頼の置けない講師の方なので腑に落ちなくて・・・。
> 小川先生に直接質問させて頂きました。
> 今後もっと複雑なコードを書くようになったらRangeでの書き方はしなくなっていくのでしょうか?
> ご教授、お願いいたします。


11334 : 受講生さんのコメント (2019-04-11 14:45:18)

お世話になります。ご無沙汰しております。
For Nextステートメントについて質問があるのですが、For NextステートメントはRange("A" & i )のように書いてはいけないと今日言われました。
Cells( 1 , i ) のように書きなさいと。
理由としてはRangeでかくと
① 処理が遅い
② そんなコードを書いていると笑われる
との事です。

私は小川先生の講座で1年以上VBAについて勉強してきましたのでこの書き方に違和感はありませんでした。
ちなみにCellsの書き方も知っています。
そこで、小川先生がこの書き方でやってきているのは初心者に理解しやすいようにですか?上級者向けの講座ではCellsを使っているのでしょうか?
Rangeの書き方でも行の処理ならできるので良いかなと思っていたのですが今日、思いっきりその書き方はダメだよと言われました。
と、言うのも現在、東京都が行っている職業訓練というものでExcel VBA実践コースというのを受講しています。
2月から3ヶ月間のコースでまもなく終わりを迎えます。
その講師の先生から言われました。
その先生の教え方はものすごくわかりにくく、受講者のほとんどが授業を聞かずに自分たちでテキストを読み込んだり、ネットで調べながら勉強していたほどお世辞にも優秀な講師とは言えないです。
どこがダメか具体的に教えて欲しいといっても処理速度が遅いのと田中先生(Office田中)が言っていたからとしか説明してもらえませんでした。
私の中では信頼の置けない講師の方なので腑に落ちなくて・・・。
小川先生に直接質問させて頂きました。
今後もっと複雑なコードを書くようになったらRangeでの書き方はしなくなっていくのでしょうか?
ご教授、お願いいたします。


11153 : 小川慶一の回答 (2019-02-13 21:44:45)

jinoseさん:

よかったです。
ひきつづき、くり返し復習をされることをおすすめします☆


> よい復習になりました!


11144 : jinoseさんのコメント (2019-02-13 18:49:03)

よい復習になりました!


10211 : 小川慶一の回答 (2018-07-04 11:44:41)

大ちゃんさん:

> VBAに限らず人生のなかで達成したいと思っている目標も達成できるのではと

本当に、そうですよ。
VBAの学習を通じてさらにどんな能力をにも磨きをかけようとするか?は、御本人次第です。

○エクセルマクロ習得に関係する4つの能力
https://www.exvba.com/4skills.php

楽しんで学習継続してください☆


> 自分はVBAに限らず、物事をいっぺんにやってしまう癖があるので、小さいことから広げていくということだけでも目からうろこでした。
> こういう思考の癖を自分にしっかり染み込ませれば、VBAに限らず人生のなかで達成したいと思っている目標も達成できるのではと、意図せず人生について考えるきっかけになりました(笑


10207 : 大ちゃんさんのコメント (2018-07-03 12:50:58)

自分はVBAに限らず、物事をいっぺんにやってしまう癖があるので、小さいことから広げていくということだけでも目からうろこでした。こういう思考の癖を自分にしっかり染み込ませれば、VBAに限らず人生のなかで達成したいと思っている目標も達成できるのではと、意図せず人生について考えるきっかけになりました(笑


9174 : ガラパゴスタディー吉川の回答 (2017-12-04 15:08:35)

マクロから離れていたので、最初はちょっと思い出すのに時間がかかりましたが、手を動かすとすっと記述できました。
また演習問題の後に動画も視聴しました。
ハナコのステップは、なんとなくはそのステップでやっていましたが、
しっかりとそのステップを踏むことを意識することで、
頭の中で考えてから記述するより整理できると思いました。


9173 : 小川慶一の回答 (2017-12-04 14:38:00)

吉川 裕子さん:

v(^^*

ハナコ、大切です。
ハナコ自体は初心者向けのアドバイスですけど、実は、大掛かりな(つまり、その人にとってそれなりに書くのに負荷のかかる)マクロを書くときは結局こういうことをやっているんですよね。。

> マクロから離れていたので、最初はちょっと思い出すのに時間がかかりましたが、手を動かすとすっと記述できました。
> また演習問題の後に動画も視聴しました。
> ハナコのステップは、なんとなくはそのステップでやっていましたが、
> しっかりとそのステップを踏むことを意識することで、
> 頭の中で考えてから記述するより整理できると思いました。


9168 : ガラパゴスタディー吉川の回答 (2017-12-04 13:43:41)

マクロから離れていたので、最初はちょっと思い出すのに時間がかかりましたが、手を動かすとすっと記述できました。
また演習問題の後に動画も視聴しました。
ハナコのステップは、なんとなくはそのステップでやっていましたが、
しっかりとそのステップを踏むことを意識することで、
頭の中で考えてから記述するより整理できると思いました。


8830 : 小川慶一の回答 (2017-09-06 00:06:10)

受講生 さん:

語学学習は暗唱大切です。
理数系科目の勉強でも大切です。
> for next 構文
> if 文の練習をした。
>
> めちゃくちゃ時間がかかったけど、声に出して練習することで
> for next 構文の形が言えるようになってきた。
>
> まずは、求めたい(答えを返したい)セルに入るマクロを書くところから
> スタートだ。


8825 : 受講生さんのコメント (2017-09-03 15:34:51)

for next 構文
if 文の練習をした。

めちゃくちゃ時間がかかったけど、声に出して練習することで
for next 構文の形が言えるようになってきた。

まずは、求めたい(答えを返したい)セルに入るマクロを書くところから
スタートだ。


8733 : 浦山大さんのコメント (2017-08-16 16:42:44)

小川先生

お世話になっております。
今日は時間が殆ど取れずな状態です。
たくさんコメントを書いてしまいましたが、
ご返信ありがとうございました。
一つ一つ、書いて頂いていることがとっても身になります。
自分で手を動かして、考えた結果に対してのフィードバックだからでしょう。

タブの位置まで見て頂けていることに、
とっても感激いたしました。

昨日、どうもハナコのステップの入れ方が曖昧なのかな?
と感じて、動画を数秒刻みで止めながら、
先生の方法を全く同じようにトレースしながら作成する方法を取ってみました。
自分で考えて書くのは勉強になりますが、
先生の作業をトレースする作業も並行していかないと、
もっとも大切な「基本(考え方)」が身に付かず、
我流に陥ってしまいそうです。

せっかく「動画」というツールで勉強させて頂いているので、
「先生の動きがトレースできる」という守破離の守の部分を肝に銘じて取り組みます。

あきらめずに続けます。
また都度扉をたたきます。


8729 : 小川慶一の回答 (2017-08-15 19:34:39)

浦山大さん:

>※元に戻す時に、「標準設定に戻す」って簡単に書けないか?
>と感じました。

jouken_hantei1_sakujo は、「書式を元に戻して」いるのではなく、厳密には、「標準設定と同じ書式に設定して」います。

標準設定に戻す方法を知るには、導入編で学んだ「自動記録」を活用できます。
自動記録しつつ、リボンの[ホーム]→[編集]グループ内、[書式のクリア]を選択。
すると、 Selection.ClearFormats というコードを得られます。

そして、 Selection の部分を Range("A" & k) 等に書き直します。

jouken_hantei1 では、やはり、インデントがおがしいです。 dim k, for k = 2 to 11 のところが、一段多すぎです。
作業のプロセスを今一度点検してください。

あと、if文で分岐したあとにやっていることが重複しているので、僕なら、以下のどちらかで↓書きます。

Sub jouken_hantei1_ogawa0()
    Dim k
    For k = 2 To 11
        Range("A" & k).Font.Name = "meiryo ui"
        Range("A" & k).Font.Size = "15"
        If Range("c" & k).Value > 100 Then
            Range("A" & k).Value = "○"
            Range("A" & k).Font.Color = vbBlue
        Else
            Range("A" & k).Value = "×"
            Range("A" & k).Font.Color = vbRed
        End If
    Next
End Sub
Sub jouken_hantei1_ogawa1()
    Dim k
    For k = 2 To 11
        With Range("A" & k)
            .Font.Name = "meiryo ui"
            .Font.Size = "15"
        End With
        If Range("c" & k).Value > 100 Then
            With Range("A" & k)
                .Value = "○"
                .Font.Color = vbBlue
            End With
        Else
            With Range("A" & k)
                .Value = "×"
                .Font.Color = vbRed
            End With
        End If
    Next
End Sub


あるいは、実は、with ... end with の中に if 文を入れられるので、以下。
もはや基礎編の演習をはじめたばかりの方向けの情報ではないですが...。

Sub jouken_hantei1_ogawa2()
    Dim k
    For k = 2 To 11
        With Range("A" & k)
            .Font.Name = "meiryo ui"
            .Font.Size = "15"
            If Range("c" & k).Value > 100 Then
                .Value = "○"
                .Font.Color = vbBlue
            Else
                .Value = "×"
                .Font.Color = vbRed
            End If
        End With
    Next
End Sub


8724 : 小川慶一の回答 (2017-08-15 19:00:34)

浦山大さん:

> 総じて、取り組む前に作戦を考えることと、試行錯誤することが楽しいです。

好きにやってください。
まったく心配はしていません。

相談事があるときは、そうと分かるように聞いていただければと思います。
喜んでご回答いたします。

ひきつづき、お楽しみを☆


8720 : 浦山大さんのコメント (2017-08-15 12:22:18)

この問であれば淀みなく記載できるようになりました。
[1]書式も付けてみたかったので、自分なりに調べて動くマクロを作りました。

Sub jouken_hantei1()
        Dim k
        For k = 2 To 11
        If Range("c" & k).Value > 100 Then          'c2が100より大きかったら(条件)
             With Range("A" & k)
                .Value = "○"                                   'A2を「○」にする(処理)
                .Font.Name = "meiryo ui"
                .Font.Color = vbBlue
                .Font.Size = "15"
             End With
        Else
             With Range("A" & k)
                .Value = "×"                                   'A2を「×」にする(処理)
                .Font.Name = "meiryo ui"
                .Font.Color = vbRed
                .Font.Size = "15"
             End With
        End If
    Next
End Sub


with~はネットで調べました。
似た要領で、元に戻す方法もマクロを作ってみました。

Sub jouken_hantei1_sakujo()
    Dim k
    For k = 2 To 11
        With Range("A" & k)
            .Value = ""
            .Font.Name = "MS明朝"
            .Font.Color = vbBlack
            .Font.Size = "10"
        End With
    Next
End Sub


※元に戻す時に、「標準設定に戻す」って簡単に書けないか?
と感じました。

調べているとありそうですが、きっともっと先のことだろうと考えます。
今は基礎を固める時期かと思いますので、まず課題として与えられていることを吸収しに次に行きたいと思います。


8715 : 浦山大さんのコメント (2017-08-14 21:08:03)

この部分については、
模範解答をちらっと1回見ただけでなんとか出来ました。

気づいたこと:
※問題毎に一つ一つ「はじめから」書いた方が練習になる
→途中、「ん?コピペして数字変えたら問題1→2は一瞬でできるな」って思いましたが、熟す数の方が大切かと思ったので全部呪文を唱えながら一から実施という流れに変えました。

このファイルを1回実施するだけで7つくらいマクロを書けました。

※「何もしない」はElse書かなくてもOK([2])
最初にチャレンジした際は「何もしないけどElse書くのか?」と思って記載したままマクロ書きました。
だけど、あとで「…なくても動くんじゃないか?」と思って試したらElseなくても動きました。
そして、動画を拝見したら省いてよしとのことでした。

多少前後感がありますが、
★問題見て困る→試行錯誤する→通勤時(帰宅時)に動画見る
→先生の解説聞いてあとから全部理解する
→明日、また同じ問題に取り組む

というスパイラルで進めていけそうです。
できれば、事前に次の動画まで見、
「軽く予習をする」を★部分に入れてスパイラル回せるようにしていきます。

※先日頂いたコメントの自分なりの添削、
やりますのでお待ち下さい。

総じて、取り組む前に作戦を考えることと、試行錯誤することが楽しいです。


7445 : 受講生さんのコメント (2016-12-21 17:31:50)

身についていました!


3684 : 小川慶一の回答 (2015-01-24 20:15:42)

ゲスト さん:

タイピングスピードが早いと、マクロを書くときに絶対に有利です。
継続して練習してください。抽象思考の力よりもよほど大切です。

>小川先生、こんばんは。
>キーボードの音がよく入っていたおかげで、小川先生のタイピングスピードがどれだけ速いかが実感できましたヾ(*≧∀≦*)ノ
>
>私もタイピングスピードが上がるように練習していきますo(`・д・´)o


3674 : 佐藤 あゆむさんのコメント (2015-01-23 20:08:16)

小川先生、こんばんは。
キーボードの音がよく入っていたおかげで、小川先生のタイピングスピードがどれだけ速いかが実感できましたヾ(*≧∀≦*)ノ

私もタイピングスピードが上がるように練習していきますo(`・д・´)


3366 : 小川慶一の回答 (2014-12-01 07:33:26)

唐沢俊孝 さん:

>dim gyo の後にAs Long と書かれています。

あー、すいません。
発展編1で習う知識です。今は、 as long については無視してください。


>小川先生
>
>もう一つ質問です。
>動画のmondai1の回答 03のマクロ(以下)ですが、
>dim gyo の後にAs Long と書かれています。
>これは何か教えてください。
>
>Sub kaitou03()
> Dim gyo As Long
> For gyo = 2 To 11
> If Range("C" & gyo).Value > 100 Then
> Range("A" & gyo).Value = "○"
> Else
> Range("A" & gyo).Value = "×"
> End If
> Next
>End Sub


3365 : 小川慶一の回答 (2014-12-01 07:32:18)

唐沢俊孝 さん:

>やはり書式の(aaa)は曜日の文字として認識されないのでしょうか。

エクセルファイル見ないと、ちょっとわからないです。

If InStr(Range("A3").Value, "日") > 0 Then

ご自身できちんと調べならば、ステップイン実行でこの行に来たときに、マウスを.Value の上に重ねてみてください。
それで何か分るかも。



>小川先生
>
>別の質問です。
>IF文で日付をの曜日が日曜日ならセルの色を赤にする といったマクロを以下書いたつもりでしたが、
>小人ちゃんが動きませんでした。
>エクセルにはあらかじめA3に201/11/30(日)と表記しています。
>この表記は セルの書式→ユーザー定義 で yyyy/mm/dd(aaa) と設定し、A3には11/30 と打ち込みました。
>やはり書式の(aaa)は曜日の文字として認識されないのでしょうか。
>
>Sub dinichiro()
>
>  If InStr(Range("A3").Value, "日") > 0 Then
> Range("A3:F3").Interior.Color = vbRed
>
> End If
>End Sub
>
>仕事がらスケジュールを作成することが多く、土日祝はセル色を変えています。
>現在は力技(ネット上で紹介されている条件付き書式で実施。祝日は、名前の定義で祝日のみを打ち込んだ日付を範囲選択し、これを条件付き書式で利用)ですが、
>関数が複雑に入っているとファイルが重く、開くのに時間がかかったり、開かず強制終了が起こったりで困っています。
>ちなみに現在のエクセルにはB列(B3~B100あたり)にMID("月火水木金土日",WEEKDAY(A3,2),1)の数式を入れて曜日を表記し、これを先ほどの条件付き書式で色つけしています。マクロも似たようなやり方になるのでしょうか(こちらもデータの型でしょうか)。


3357 : 唐沢俊孝さんのコメント (2014-11-30 13:59:14)

小川先生

もう一つ質問です。
動画のmondai1の回答 03のマクロ(以下)ですが、
dim gyo の後にAs Long と書かれています。
これは何か教えてください。

Sub kaitou03()
Dim gyo As Long
For gyo = 2 To 11
If Range("C" & gyo).Value > 100 Then
Range("A" & gyo).Value = "○"
Else
Range("A" & gyo).Value = "×"
End If
Next
End Su


3356 : 唐沢俊孝さんのコメント (2014-11-30 03:16:55)

小川先生

別の質問です。
IF文で日付をの曜日が日曜日ならセルの色を赤にする といったマクロを以下書いたつもりでしたが、
小人ちゃんが動きませんでした。
エクセルにはあらかじめA3に201/11/30(日)と表記しています。
この表記は セルの書式→ユーザー定義 で yyyy/mm/dd(aaa) と設定し、A3には11/30 と打ち込みました。
やはり書式の(aaa)は曜日の文字として認識されないのでしょうか。

Sub dinichiro()

  If InStr(Range("A3").Value, "日") > 0 Then
Range("A3:F3").Interior.Color = vbRed

End If
End Sub

仕事がらスケジュールを作成することが多く、土日祝はセル色を変えています。
現在は力技(ネット上で紹介されている条件付き書式で実施。祝日は、名前の定義で祝日のみを打ち込んだ日付を範囲選択し、これを条件付き書式で利用)ですが、
関数が複雑に入っているとファイルが重く、開くのに時間がかかったり、開かず強制終了が起こったりで困っています。
ちなみに現在のエクセルにはB列(B3~B100あたり)にMID("月火水木金土日",WEEKDAY(A3,2),1)の数式を入れて曜日を表記し、これを先ほどの条件付き書式で色つけしています。マクロも似たようなやり方になるのでしょうか(こちらもデータの型でしょうか)。


3344 : 小川慶一の回答 (2014-11-27 06:26:49)

唐沢俊孝 さん:

お役に立てたようでよかったです。
発展編は、基礎編で学んだ「ハナコのステップ」、[home], [shift] + [ ↓ ][ ↓ ][ ↓ ]とかテストのやり方をしっかりマスターできたなら簡単ですよ。
お楽しみを☆


>小川先生
>
>アドバイス誠にありがとうございます。
>やはりあるんですね!期待どおりです。
>発展編の「データの型」、IsNumeric関数 興味津々です。
>基礎編を完全にマスターできたら発展編受講しようと考えています。
>
>
>
>
>小川慶一 さん:
>
>>唐沢俊孝 さん:
>
>おはようございます。
>
>「ハナコのステップ」、最強です。
>
>「刷り込まれた」ということなので、もう大丈夫でしょう。
>
>>何度書いてもやみつきになりそうです!
>
>わかります (^^*
>
>> Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。
>
>文字列をどう評価するか?ということについては、プログラミング言語によって仕様が違ったりします。
>Excel VBA はいまさら仕様は変わらないのではないかとも思いますが、Excel VBA だけに通じる話をしてもつまらないので…。エクセルのセルの書式設定をどう考えるかということもありますし。
>
>ここは一つ、別のアドバイスを。
>
>発展編に進むと「データの型」という概念が登場します。
>それは数字なのか、文字なのか、日付なのか、はたまた別のものなのか?といったことです。
>
>ここで更に言うと、そのデータの「データ型」を調べる関数があります。
>IsNumeric関数はその一種です。これを使うと、そのセルに入ってる値が数字なのかどうかということを調べることができます。
>僕なら、これを活用します。
>
>他にもこの関数の仲間がいろいろいるので、ヘルプ等を使って調べてみてください。
>
>
>>小川先生
>>
>>先生が動画でおっしゃっていたハナコのステップが呪文のように頭に出てきて(この動画の刷り込みは本当に感謝です!)、
>>私も口「箱(for next文,if文)をつくる。home shift ↓↓↓、tabでずらして切り取って、貼り付ける。あとは加工して終わり!」と言いながら
>>全くその通りにマクロが書けました。このおかげで、迷いなく、手が止まって考えることなくスラスラと!さらに小人ちゃんが動いてくれるので、
>>何度書いてもやみつきになりそうです!
>>
>>Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。
>>
>>質問1:
>>C8とC10をテンキーのマイナスで打ち込み「-」と表記しますと、以下のマクロではA8とA10に「○」と記入されます。 
>> このマクロは数値に対しての条件であるから、数値を除く文字が入ると誤作動を起こすと考えてよろしいでしょうか。
>>
>>以下は動画でも開設された回答です。
>>Sub mondai1()
>> Dim ten
>> For ten = 2 To 11
>> If Range("C" & ten).Value > 100 Then
>> Range("A" & ten).Value = "○"
>> Else
>> Range("A" & ten).Value = "×"
>> End If
>> Next
>>End Sub
>>
>>Enshu00100_Basic.xlsのC列の書式設定は「通貨」で、C8とC10は「‐」表示されており、セルの書式設定で確認するとだと0と打ち込まれていました。
>>マクロは100以下の数値と認識し、正確に×と記入されました。
>>
>>私は自分の練習用エクセルファイルにこの設問と似た感じのレイアウトをつくり、設問の表記を真似たつもりでしたが、C8とC10はテンキーのマイナスを打ち込み「-」と表記しました。
>>このときのセルの書式設定は標準でした、この条件で上記のマクロで実行しましたところマクロは100より大きいと認識し、A8とA10に○と記入されました。
>>C8とC10を空欄にしますとA8とA10ともに×と記入されました。セルの書式を「通貨」に変えて同様に確認しましたところ同様のことが起こりました。
>>ちなみに数値でない文字を入れると、すべてこのようになることを確認しました。
>>
>>質問2:
>>エクセル知識がない私のような人間は元データに「0」をテンキー「-」と記入してしまうケースはあると思います。
>>(書式設定で¥を表記しているのに、打ち込み担当が一時変わって¥を書く人がいるかもしれない。)
>>そのミスをも防ぐマクロをif文に(C1~C11のセルの値が数値なら上記のif文を実行する、そうでなければ(文字列なら)C1~C11のセルの値に”入力ミス"と記入する)
>>といったマクロをかければと思いましたが、書けませんでした。こういったものは発展でのお話になりますでしょうか。これまでの基礎編が理解できていれば
>>対応できそうなマクロであればご教授お願いいたします。
>>(Len関数を組合せてうまくできないか考えましたが、数値もカウントしてしまいますので私では対応できませんでした)
>>
>>
>>
>>
>
>


3338 : 唐沢俊孝さんのコメント (2014-11-25 22:50:19)

小川先生

アドバイス誠にありがとうございます。
やはりあるんですね!期待どおりです。
発展編の「データの型」、IsNumeric関数 興味津々です。
基礎編を完全にマスターできたら発展編受講しようと考えています。




小川慶一 さん:

>唐沢俊孝 さん:

おはようございます。

「ハナコのステップ」、最強です。

「刷り込まれた」ということなので、もう大丈夫でしょう。

>何度書いてもやみつきになりそうです!

わかります (^^*

> Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。

文字列をどう評価するか?ということについては、プログラミング言語によって仕様が違ったりします。
Excel VBA はいまさら仕様は変わらないのではないかとも思いますが、Excel VBA だけに通じる話をしてもつまらないので…。エクセルのセルの書式設定をどう考えるかということもありますし。

ここは一つ、別のアドバイスを。

発展編に進むと「データの型」という概念が登場します。
それは数字なのか、文字なのか、日付なのか、はたまた別のものなのか?といったことです。

ここで更に言うと、そのデータの「データ型」を調べる関数があります。
IsNumeric関数はその一種です。これを使うと、そのセルに入ってる値が数字なのかどうかということを調べることができます。
僕なら、これを活用します。

他にもこの関数の仲間がいろいろいるので、ヘルプ等を使って調べてみてください。


>小川先生
>
>先生が動画でおっしゃっていたハナコのステップが呪文のように頭に出てきて(この動画の刷り込みは本当に感謝です!)、
>私も口「箱(for next文,if文)をつくる。home shift ↓↓↓、tabでずらして切り取って、貼り付ける。あとは加工して終わり!」と言いながら
>全くその通りにマクロが書けました。このおかげで、迷いなく、手が止まって考えることなくスラスラと!さらに小人ちゃんが動いてくれるので、
>何度書いてもやみつきになりそうです!
>
>Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。
>
>質問1:
>C8とC10をテンキーのマイナスで打ち込み「-」と表記しますと、以下のマクロではA8とA10に「○」と記入されます。 
> このマクロは数値に対しての条件であるから、数値を除く文字が入ると誤作動を起こすと考えてよろしいでしょうか。
>
>以下は動画でも開設された回答です。
>Sub mondai1()
> Dim ten
> For ten = 2 To 11
> If Range("C" & ten).Value > 100 Then
> Range("A" & ten).Value = "○"
> Else
> Range("A" & ten).Value = "×"
> End If
> Next
>End Sub
>
>Enshu00100_Basic.xlsのC列の書式設定は「通貨」で、C8とC10は「‐」表示されており、セルの書式設定で確認するとだと0と打ち込まれていました。
>マクロは100以下の数値と認識し、正確に×と記入されました。
>
>私は自分の練習用エクセルファイルにこの設問と似た感じのレイアウトをつくり、設問の表記を真似たつもりでしたが、C8とC10はテンキーのマイナスを打ち込み「-」と表記しました。
>このときのセルの書式設定は標準でした、この条件で上記のマクロで実行しましたところマクロは100より大きいと認識し、A8とA10に○と記入されました。
>C8とC10を空欄にしますとA8とA10ともに×と記入されました。セルの書式を「通貨」に変えて同様に確認しましたところ同様のことが起こりました。
>ちなみに数値でない文字を入れると、すべてこのようになることを確認しました。
>
>質問2:
>エクセル知識がない私のような人間は元データに「0」をテンキー「-」と記入してしまうケースはあると思います。
>(書式設定で¥を表記しているのに、打ち込み担当が一時変わって¥を書く人がいるかもしれない。)
>そのミスをも防ぐマクロをif文に(C1~C11のセルの値が数値なら上記のif文を実行する、そうでなければ(文字列なら)C1~C11のセルの値に”入力ミス"と記入する)
>といったマクロをかければと思いましたが、書けませんでした。こういったものは発展でのお話になりますでしょうか。これまでの基礎編が理解できていれば
>対応できそうなマクロであればご教授お願いいたします。
>(Len関数を組合せてうまくできないか考えましたが、数値もカウントしてしまいますので私では対応できませんでした)
>
>
>
>


3336 : 小川慶一の回答 (2014-11-25 08:42:15)

唐沢俊孝 さん:

おはようございます。

「ハナコのステップ」、最強です。

「刷り込まれた」ということなので、もう大丈夫でしょう。

>何度書いてもやみつきになりそうです!

わかります (^^*

> Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。

文字列をどう評価するか?ということについては、プログラミング言語によって仕様が違ったりします。
Excel VBA はいまさら仕様は変わらないのではないかとも思いますが、Excel VBA だけに通じる話をしてもつまらないので…。エクセルのセルの書式設定をどう考えるかということもありますし。

ここは一つ、別のアドバイスを。

発展編に進むと「データの型」という概念が登場します。
それは数字なのか、文字なのか、日付なのか、はたまた別のものなのか?といったことです。

ここで更に言うと、そのデータの「データ型」を調べる関数があります。
IsNumeric関数はその一種です。これを使うと、そのセルに入ってる値が数字なのかどうかということを調べることができます。
僕なら、これを活用します。

他にもこの関数の仲間がいろいろいるので、ヘルプ等を使って調べてみてください。


>小川先生
>
>先生が動画でおっしゃっていたハナコのステップが呪文のように頭に出てきて(この動画の刷り込みは本当に感謝です!)、
>私も口「箱(for next文,if文)をつくる。home shift ↓↓↓、tabでずらして切り取って、貼り付ける。あとは加工して終わり!」と言いながら
>全くその通りにマクロが書けました。このおかげで、迷いなく、手が止まって考えることなくスラスラと!さらに小人ちゃんが動いてくれるので、
>何度書いてもやみつきになりそうです!
>
>Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。
>
>質問1:
>C8とC10をテンキーのマイナスで打ち込み「-」と表記しますと、以下のマクロではA8とA10に「○」と記入されます。 
> このマクロは数値に対しての条件であるから、数値を除く文字が入ると誤作動を起こすと考えてよろしいでしょうか。
>
>以下は動画でも開設された回答です。
>Sub mondai1()
> Dim ten
> For ten = 2 To 11
> If Range("C" & ten).Value > 100 Then
> Range("A" & ten).Value = "○"
> Else
> Range("A" & ten).Value = "×"
> End If
> Next
>End Sub
>
>Enshu00100_Basic.xlsのC列の書式設定は「通貨」で、C8とC10は「‐」表示されており、セルの書式設定で確認するとだと0と打ち込まれていました。
>マクロは100以下の数値と認識し、正確に×と記入されました。
>
>私は自分の練習用エクセルファイルにこの設問と似た感じのレイアウトをつくり、設問の表記を真似たつもりでしたが、C8とC10はテンキーのマイナスを打ち込み「-」と表記しました。
>このときのセルの書式設定は標準でした、この条件で上記のマクロで実行しましたところマクロは100より大きいと認識し、A8とA10に○と記入されました。
>C8とC10を空欄にしますとA8とA10ともに×と記入されました。セルの書式を「通貨」に変えて同様に確認しましたところ同様のことが起こりました。
>ちなみに数値でない文字を入れると、すべてこのようになることを確認しました。
>
>質問2:
>エクセル知識がない私のような人間は元データに「0」をテンキー「-」と記入してしまうケースはあると思います。
>(書式設定で¥を表記しているのに、打ち込み担当が一時変わって¥を書く人がいるかもしれない。)
>そのミスをも防ぐマクロをif文に(C1~C11のセルの値が数値なら上記のif文を実行する、そうでなければ(文字列なら)C1~C11のセルの値に”入力ミス"と記入する)
>といったマクロをかければと思いましたが、書けませんでした。こういったものは発展でのお話になりますでしょうか。これまでの基礎編が理解できていれば
>対応できそうなマクロであればご教授お願いいたします。
>(Len関数を組合せてうまくできないか考えましたが、数値もカウントしてしまいますので私では対応できませんでした)
>
>
>
>


3335 : 唐沢俊孝さんのコメント (2014-11-25 01:28:10)

小川先生

先生が動画でおっしゃっていたハナコのステップが呪文のように頭に出てきて(この動画の刷り込みは本当に感謝です!)、
私も口「箱(for next文,if文)をつくる。home shift ↓↓↓、tabでずらして切り取って、貼り付ける。あとは加工して終わり!」と言いながら
全くその通りにマクロが書けました。このおかげで、迷いなく、手が止まって考えることなくスラスラと!さらに小人ちゃんが動いてくれるので、
何度書いてもやみつきになりそうです!

Enshu00100_Basic.xls のmondai1でわからないことありましたので、ご指導お願いいたします。

質問1:
C8とC10をテンキーのマイナスで打ち込み「-」と表記しますと、以下のマクロではA8とA10に「○」と記入されます。 
このマクロは数値に対しての条件であるから、数値を除く文字が入ると誤作動を起こすと考えてよろしいでしょうか。

以下は動画でも開設された回答です。
Sub mondai1()
Dim ten
For ten = 2 To 11
If Range("C" & ten).Value > 100 Then
Range("A" & ten).Value = "○"
Else
Range("A" & ten).Value = "×"
End If
Next
End Sub

Enshu00100_Basic.xlsのC列の書式設定は「通貨」で、C8とC10は「‐」表示されており、セルの書式設定で確認するとだと0と打ち込まれていました。
マクロは100以下の数値と認識し、正確に×と記入されました。

私は自分の練習用エクセルファイルにこの設問と似た感じのレイアウトをつくり、設問の表記を真似たつもりでしたが、C8とC10はテンキーのマイナスを打ち込み「-」と表記しました。
このときのセルの書式設定は標準でした、この条件で上記のマクロで実行しましたところマクロは100より大きいと認識し、A8とA10に○と記入されました。
C8とC10を空欄にしますとA8とA10ともに×と記入されました。セルの書式を「通貨」に変えて同様に確認しましたところ同様のことが起こりました。
ちなみに数値でない文字を入れると、すべてこのようになることを確認しました。

質問2:
エクセル知識がない私のような人間は元データに「0」をテンキー「-」と記入してしまうケースはあると思います。
(書式設定で¥を表記しているのに、打ち込み担当が一時変わって¥を書く人がいるかもしれない。)
そのミスをも防ぐマクロをif文に(C1~C11のセルの値が数値なら上記のif文を実行する、そうでなければ(文字列なら)C1~C11のセルの値に”入力ミス"と記入する)
といったマクロをかければと思いましたが、書けませんでした。こういったものは発展でのお話になりますでしょうか。これまでの基礎編が理解できていれば
対応できそうなマクロであればご教授お願いいたします。
(Len関数を組合せてうまくできないか考えましたが、数値もカウントしてしまいますので私では対応できませんでした)




2662 : 小川慶一の回答 (2014-10-06 09:09:13)

野村昭雄 さん:

for next構文, if 文をきちんと使いこなせてはじめて大きなな生産性の向上につながります。
「ハナコ」にしたがえば簡単です。「ハナコ」大切です (^^

>for next構文とif文が書けるようになると、マクロで作成するものの範囲が広がった感じです。
>作成方法がハナコでやると簡単に作成出来て良いですね。
>


2655 : 野村昭雄さんのコメント (2014-10-05 19:30:37)

for next構文とif文が書けるようになると、マクロで作成するものの範囲が広がった感じです。
作成方法がハナコでやると簡単に作成出来て良いですね。


2590 : 小川慶一の回答 (2014-09-30 10:36:04)

浜口 智之 さん:

順調そうでなにより。ひきつづきお楽しみを!

>「ハナコ」ステップの確認、またIF文についての理解ができました。
>今回の課題は、IF文の理解がまだ完全ではなく、先に動画をみて、その後に
>その手順を自分で再現してみるというステップで学習してみました。
>次回からは、まず、課題に挑んでみたいと思います。
>発展編講座をうけられるスタート地点に到達できるように
>引き続き学習進めていきたいと思います。
>よろしくお願いします。


2584 : 浜口 智之さんのコメント (2014-09-29 23:19:17)

「ハナコ」ステップの確認、またIF文についての理解ができました。
今回の課題は、IF文の理解がまだ完全ではなく、先に動画をみて、その後に
その手順を自分で再現してみるというステップで学習してみました。
次回からは、まず、課題に挑んでみたいと思います。
発展編講座をうけられるスタート地点に到達できるように
引き続き学習進めていきたいと思います。
よろしくお願いします。


1792 : 小川慶一の回答 (2014-07-21 07:03:25)

匿名 さん:

よろしく!楽しく完走しましょう☆

>1週間後のメールありがとうございました。遅まきながら今日から復習に取り組みます。
>ハナコのステップを忘れていましたが、すぐ思い出せました。
>今日からまたよろしくお願いいたします。


1787 : 小川慶一の回答 (2014-07-21 06:39:52)

明石 照伸 さん:

ハナコ最強Death☆

>お世話になります。遅まきながらやっと1回目の動画を通して見ることができました。
>この作成順(はなこ)はもっとも単純なところから積み上げていくので、わかりやすいだけでなく、出戻りが無く、確実ではやい手順だと感じました。身体に染み込ませるように練習したいと思います。
>引き続きよろしくお願いいたします。


1786 : 受講生さんのコメント (2014-07-21 05:11:08)

1週間後のメールありがとうございました。遅まきながら今日から復習に取り組みます。
ハナコのステップを忘れていましたが、すぐ思い出せました。
今日からまたよろしくお願いいたします。


1780 : 明石 照伸さんのコメント (2014-07-20 13:41:34)

お世話になります。遅まきながらやっと1回目の動画を通して見ることができました。
この作成順(はなこ)はもっとも単純なところから積み上げていくので、わかりやすいだけでなく、出戻りが無く、確実ではやい手順だと感じました。身体に染み込ませるように練習したいと思います。
引き続きよろしくお願いいたします。


1082 : 小川慶一の回答 (2014-03-18 10:26:26)

薄木洋祐 さん:

順調ですね!「まなぶ」は「まねぶ」です。そのまんまできるようになったらもうマスターしたも同然です (^^*
ひきつづき、お楽しみください!

>小川さんの速さについていけるようにショートカットキーも使ってマウスを使わないようにしていきます。


1081 : 薄木洋祐さんのコメント (2014-03-18 01:00:21)

小川さんの速さについていけるようにショートカットキーも使ってマウスを使わないようにしていきます。


945 : 小川慶一の回答 (2014-01-10 04:25:08)

匿名さん:

>復習するたびに少しずつ力がついてきていることを感じます。

いいですね。ひとつひとつのステップを確実にモノにしてください!


943 : 受講生さんのコメント (2014-01-09 08:33:41)

復習するたびに少しずつ力がついてきていることを感じます。


168 : ガラパゴスタディー事務局の回答 (2013-10-30 00:00:00)

マモさん:

> 自分自身で作成したあとに、復習でチェックしました。
> elseの省略や、100を超えていなかったら、の表現が想定と少し違い、視野が広がりました。

自分でトライしてから見本を見ると、得られる学びも深まりますよね。

> それにしても素敵な復習ツールですね。ありがとうございます。

はい。「できない理由」を徹底排除したいっていうのが僕の目指していることです(


167 : マモさんのコメント (2013-10-29 00:00:00)

自分自身で作成したあとに、復習でチェックしました。
elseの省略や、100を超えていなかったら、の表現が想定と少し違い、視野が広がりました。
続けて、最後までチャレンジしようと思います。
それにしても素敵な復習ツールですね。ありがとうございます


166 : ガラパゴスタディー事務局の回答 (2013-08-26 00:01:00)

北嶋さん:

こちらも、順調そうですね☆

> ショートカットをいきなり全部覚えることはきついですが、使えるものから使っていこうと思います。

正解だと思います。無理なく、自分の力にしていってください。

フォロー動画使い倒してください。ひきつづき、お楽しみを☆


165 : ガラパゴスタディー事務局の回答 (2013-08-26 00:00:00)

小俣さん:

おお、さっそく楽勝レベルがハンパないっ!! (^^;
ひきつづきお楽しみを☆


164 : 北嶋浩行さんのコメント (2013-08-25 00:01:00)

昨日の講習で何回も繰り返していたので、問題なくできました。
動画の右上にでるショートカットがかなり参考になります。
ショートカットをいきなり全部覚えることはきついですが、使えるものから使っていこうと思います。


163 : 小俣卓生さんのコメント (2013-08-25 00:00:00)

おかげさまで、はなこのステップを踏みまくっているので、鼻をほじりながらでもコードが書けるようになりました。


161 : ガラパゴスタディー事務局の回答 (2013-07-25 00:00:00)

渋谷さん:

いいですね。できるところからどんどんやってください。
量質転化という言葉もあります。量をこなしていると、突然できることのレベルもあがります。


160 : 渋谷 文義さんのコメント (2013-07-23 00:00:00)

7/21のセミナー演習で自分の理解度が足りなかったことに
気がつきましたので、再度1から問題を解きました。

今回の問題は詰まらずに解くことができました。


159 : ガラパゴスタディー事務局の回答 (2013-07-03 00:00:00)

市川さん:

ひきつづき、よろしくお願いします。
分からないこと等も含め、なんでもぶつけてください。


158 : 市川一紀さんのコメント (2013-07-01 00:00:00)

問題数も多すぎず、かつ忘れないうちに復習ができるので効果的


157 : ガラパゴスタディー事務局の回答 (2013-06-11 00:01:00)

順調そうですね。なにより!!
感動を伴うと、記憶への定着もまた強くなります ヾ(´ー`)ノ

> 非常に分かりやすかったです。
> 何度も繰り返し作成して、問題だけを読んで
> 作成することが、出来ました。
>
> 成功したときは、感動しました。
>
> やった!!


156 : 受講生さんのコメント (2013-06-11 00:00:00)

非常に分かりやすかったです。
何度も繰り返し作成して、問題だけを読んで
作成することが、出来ました。

成功したときは、感動しました。

やった!!


120 : ガラパゴスタディー事務局の回答 (2013-06-03 00:00:00)

渋谷さん:

お!初登場!


> 何回もトライしているうちに考え方を理解することができました。

ですねー。最初は、くり返すことが肝心です。

ひきつづき、お楽しみを!


119 : 渋谷 文義さんのコメント (2013-06-01 00:00:00)

実際に自分で問題をやっていると手が止まってしまって時間がかかってしまいましたが、何回もトライしているうちに考え方を理解することができました。
今後も継続して最終的には、仕事で月次にやっている集計作業をサクッと終わらせることが目標です。

小川先生、今後ともよろしくお願い致します。


118 : ガラパゴスタディー事務局の回答 (2013-04-30 00:01:00)

高橋さん:

お!今後の伸びが楽しみになるようなコメント!

そうですね。やってみていろいろ感じたことがあると思います。その感覚を磨いていってください。
あと2週間もすると、びっくりするくらい力がついていることに気がつきますよ! ヾ(´ー`)ノ


117 : ガラパゴスタディー事務局の回答 (2013-04-30 00:00:00)

土田さん:

> 問題を解いてみましたが、自分はIf文から考えて書き始めてしまいました。

まー、それもありっちゃ、ありです。
要は、頭の中で(中身も含めて)一息で書けるなら。

簡単なケースでは僕もIf文から書くことがあります。より複雑なケースだと、ハナコを徹底しますが。


> シンプルで綺麗なものを作るという点ではもう少しでした。
> "Else"も消せる(なくても良い)ことを確認すれば良かったです。

いやー。これはなかなか気づかないです。

むしろ、

> なんとか作ったマクロが一発で実際に動いて嬉しかったので

この感情的高まりのほうが大切。
実際、初挑戦でここまでできたならたいしたものです☆

ひきつづき、お楽しみを☆


116 : 高橋 圭子さんのコメント (2013-04-29 00:00:00)

一通り自分でやってみてから(動きました。ヤッター!!)しばらくして動画を見ました。
細かい部分からやってゆくとできる、ということが今回やってみてわかりました。今までは全体を頭の中で作ってからから書こうとして、結果動かず挫折でしたので。(無理ですねそれ)
動画を見て、基本(ホーム シフト 下下下や、箱を一息で作ること)の大切さと美しさ(作り方もきれいで出来上がりもきれい)を再確認でしました。


151 : 高橋 圭子さんのコメント (2013-04-29 00:00:00)

一通り自分でやってみてから(動きました。ヤッター!!)しばらくして動画を見ました。
細かい部分からやってゆくとできる、ということが今回やってみてわかりました。今までは全体を頭の中で作ってからから書こうとして、結果動かず挫折でしたので。(無理ですねそれ)
動画を見て、基本(ホーム シフト 下下下や、箱を一息で作ること)の大切さと美しさ(作り方もきれいで出来上がりもきれい)を再確認でしました。


149 : 土田 信行さんのコメント (2013-04-28 00:00:00)

「細かく区切って簡単なものから始める」
簡単そうで難しいです。

問題を解いてみましたが、自分はIf文から考えて書き始めてしまいました。

ハナコはできたましたが、お団子を用意するところが、不十分でした。
今後、より複雑な事に取り組む時に混乱しないために、次回からはこのことを意識して問題を考えるようにします。

If文は今回初めて使ってので、問題[2][3]では自分で作ったものと解説の中のものとは少し違っていましたが、同じ結果にはなりまた。以下は問題[2]のものです。

Sub marubatu();     
    Dim keikoku
    For keikoku = 2 To 11
        If Range("c" & keikoku).Value > 100 Then
        Range("a" & keikoku).Value = "○"
        Else
         
        End If
    Next


問題[1]のマクロの「"×"を入力する」指示だけを消去してどうなるか試したところ問題なく動いたのでそのままで終了してしまいました。

シンプルで綺麗なものを作るという点ではもう少しでした。
"Else"も消せる(なくても良い)ことを確認すれば良かったです。

問題[3]では問題[1]で作成したマクロの「"○"を入力する」指示を消すだけで動きました。

なんとか作ったマクロが一発で実際に動いて嬉しかったので細かいところまで意識が回らなかったです。(反省)


148 : ガラパゴスタディー事務局の回答 (2013-04-02 00:01:00)

栗原さん:

ぜひぜひ。体がしっかり覚えている域に到達すると、あとが楽ですよ。
かけ算九九を諳んじられると二桁のかけ算もなんとかできる、というのと同じです。


147 : ガラパゴスタディー事務局の回答 (2013-04-02 00:00:00)

池本さん:

お返事、遅くなりました。

かなり、学びの勘がよいですね!さすが!

頭の中がかなり整理されているご様子! ヾ(´ー`)ノ


146 : 栗原宏明さんのコメント (2013-03-31 00:01:00)

昨日学習したばかりなので余裕でした。
昨日のセミナーで使ったマクロも含めて、今日は体が覚えて何も見ないで書けるように練習します。


145 : 池本利恵さんのコメント (2013-03-31 00:00:00)

動画をみるまえに自力で問題解けました!!
動画をみて再確認したことは、
「どこの値を○にする」がお団子で
if箱にそれをいれて加工ということ。
それで新しいお団子ができるということ。
次にfor next箱に新しいお団子を
いれるときはend ifまでが新しいお団子の中身ということ。
中にいれるときはhomeshift下下下のあとにtab忘れないこと。
以上でした♪ 問題day1の前に「とりあえずsubと書いてみるプリント」をみながらマクロをかいたので、楽に問題解けました。

問題day2楽しみにしていま~す(*^^*) 


144 : ガラパゴスタディー事務局の回答 (2013-02-27 00:00:00)

匿名さん:

> range("A2").Value = "○"
> というところから始まっていて、「そこまで小さいところからか~!」とちょっとびっくり。
> が、実際動画の流れと同様に入力してみたら、こっちの方が断然入力の効率もいい!
> 効率が下がるときがあるのはこういうことだったんだ、と
> 仕事を小さく分割するメリットの大きさをとても感じました♪

手堅いですよね。仕事を分割すると、個々の仕事に意識を向けるだけで仕事が終わるので、ものごとが片づきやすくなります。
トラブルが起こっても、そこで起こっているトラブルだけに集中すればよいし。


> 細切れでのチェックを怠り、 ... バグがあったため元データの数字が変わってしまい「ぎゃ!」となりました。

はい。最初はこういうミスのくり返しです。

順調に失敗している、と思ってください☆


ひきつづき、お楽しみを!


143 : 受講生さんのコメント (2013-02-26 00:00:00)

小さい仕事からするというのは頭では理解していたのですが、
動画を見て
range("A2").Value = "○"
というところから始まっていて、「そこまで小さいところからか~!」とちょっとびっくり。
(excel関数のクセで、どの関数を使う?⇒ifという思考回路があったせいもありますが。。);が、実際動画の流れと同様に入力してみたら、こっちの方が断然入力の効率もいい!
マクロ以外の普段の仕事も、効率が下がるときがあるのはこういうことだったんだ、と仕事を小さく分割するメリットの大きさをとても感じました♪

また、動画を見た後,なんどか同じに入力する練習をしていたのですが、細切れでのチェックを怠り、一気にマクロを書き上げ最後にF5でチェックしたところ、バグがあったため元データの数字が変わってしまい「ぎゃ!」となりました。これまた細かいチェックの重要さをしみじみ感じました。
動画は、とてもわかりやすいです♪


142 : ガラパゴスタディー事務局の回答 (2013-02-12 00:00:00)

豊島さん:

> ”○””☓”をつける位置を間違えて、入力されたデータに上書きされました。

ですねー。最初は、誰でもそんな感じです。

書かれているマクロを日本語に翻訳してしっかり読み上げて、その言葉が言っていることを理解しながらテストを進めてください。
さいしょのうちは、とくにそうです


141 : 豊島 久博さんのコメント (2013-02-11 00:00:00)

”○””☓”をつける位置を間違えて、入力されたデータに上書きされました。

[f8]を使って試すとしても、仕事でマクロを使うときには気をつけないといけないと思いました。


140 : ガラパゴスタディー事務局の回答 (2013-02-01 00:00:00)

> wordで自己流の手順書を作りながら、マクロを書いています。

いいですね。勉強は何でもそうですが、最後は手を動かした人の勝ちです。
楽しんで継続してください☆


139 : 受講生さんのコメント (2013-01-31 00:01:00)

なんとか慣れてきました。
wordで自己流の手順書を作りながら、マクロを書いています。
素敵な動画解説ありがとうございます。


138 : ガラパゴスタディー事務局の回答 (2013-01-31 00:00:00)

高橋さん:

動画セミナー着手されているようでよかったです。
楽しみながら、何度もトライしてみてください! ヾ(´ー`)ノ


137 : 高橋由佳さんのコメント (2013-01-30 00:00:00)

動画でわかりやすく解説されているので何回も復習ができて助かります。


136 : ガラパゴスタディー事務局の回答 (2012-11-20 00:00:00)

安永さん:

> 第一問は変数を宣言したものの、変数を使わないマクロを書いてしまいました。ハナコの法則の便利さ、かつ重要度が判りました。

ですね。
最初は何度も失敗すると思います。

「知る」→「身につく」の過程で避けられない失敗です (^^;

でもそのとき、「ハナコ」というフレームワークを知っていれば、
自分の行動のどこを今後修正していけばいいのか、を
考えるのが容易になります。


135 : 安永 洋平さんのコメント (2012-11-19 00:03:00)

先日は有難うございました。
今回練習問題を解く形で、実際に頭使いながら書いてみたものが、動くとすごく気持ちが良いですね。
第一問は変数を宣言したものの、変数を使わないマクロを書いてしまいました。ハナコの法則の便利さ、かつ重要度が判りました。


134 : ガラパゴスタディー事務局の回答 (2012-11-19 00:02:00)

長谷川さん:

> 繰り返し入力することによってハナコさんが身近になってきました。


いいですね!
確かに、くり返しで、だんだん身についていくものだと思います。


> 自分は繰り返しが必要なタイプなので、

むしろ、長谷川さんは、くり返し練習をしっかりできるタイプかと思います。
ご自身の強みを活かして、楽しみつつ勉強していただければと!!


133 : ガラパゴスタディー事務局の回答 (2012-11-19 00:01:00)

山口さん:

よかったです。ひきつづき、お楽しみを!


132 : 長谷川有子さんのコメント (2012-11-19 00:00:00)

昨日はありがとうございました。
とにかく入力して見ましたが、やはり、断片的な記憶でうまくいきませんでしたが、動画を見ては頷いています。繰り返し入力することによってハナコさんが身近になってきました。自分は繰り返しが必要なタイプなので、時間をみつけては練習します。


129 : ガラパゴスタディー事務局の回答 (2012-11-15 00:01:00)

佐藤さん:

動画を見ながら何度も書くっていうのは、基本中の基本です。さすが! (^^

動作をまねることがとても大切です。
「学ぶ」は「まねぶ」ってことで (^


128 : 佐藤 尚子さんのコメント (2012-11-15 00:00:00)

頭でわかってもなかなか覚えられなかったことが、動画を見ながら何度も書いていたら自然に覚えていました。
説明がわかりやすかったです。


127 : 小川慶一の回答 (2012-10-27 00:00:00)

「コメント投稿時に通知を受け取る」の動作確認をかねて投稿します。

とりあえず、みなさん順調そうでなにより (^


115 : 長澤一樹さんのコメント (2012-10-22 00:01:00)

昨日のセミナーでの臨場感そのままにとても分りやすかったです。
キーボードのタッチ音も個人的には余り気になりませんでした。


114 : 屋代 有俊さんのコメント (2012-10-22 00:00:00)

分かりやすかったです。
気になる点を何度も確認できるから安心します。
さすがに類似のマクロを6回も作成すると、動画をみなくても組めるようになるが嬉しかったです。


113 : 加藤美智子さんのコメント (2012-10-21 00:02:00)

昨日の講座では緊張しながら受講しておりました。そんな中で覚えたことが、この動画を見て問題を解くことにより甦ってきました。Excelも1年半前に習ったばかりの私がマクロを書いている…。感動です。


169 : 竹端博希さんのコメント (2012-10-21 00:01:00)

とても分かりやすかったです。
何度も見返しながら、自分でもマクロを作成することができました。


112 : 吉田 光さんのコメント (2012-10-21 00:00:00)

昨日の講座で覚えた項目を問題と動画でもう一度反復させて頂きました。記憶の定着に役立ち、非常に満足です。あれから24時間経過していませんが、自分にもマクロをかけるという事実に驚いています。ここ数年で一番のスキルアップといって過言ではないと思っています。


1200 : 受講生さんのコメント (2012-10-10 12:46:00)

基礎編のみの受講ということだからだと思うのですが、

何度も繰り返し基礎を体で覚える構成になっていて、

2年前に受講した時より丁寧で、わかりやすかった。



もちろん動画解説の効力は大です!!



実際のセミナーを受講している時と同じレベルで小川先生の解説を聞けて、尚且つどこでどのショートカットキーを使用しておられるかもわかる動画解説は本当に素晴らしいです!


1203 : 小川慶一の回答 (2012-10-10 11:08:00)

おお、そうですか。まずはよかった。

最初の3~4回くらいがキモです。ここを乗り越えていただければ、
あとはだいぶ変わると思います。

ということで、今、最初の難所の1/3くらいが終わった感じですかね。

念のために蛇足&釈迦に説法ですが、必ず、ノーヒントでも自分で
書けるようなところまでもっていってくださいね。


中間試験のあと、先生が黒板に解き方を説明しているのを聞くだけなのと、
そのあと自分で同じ問題を一回でも解くかどうかは、雲泥の差です。


1202 : 受講生さんのコメント (2012-10-10 00:42:00)

非常に良く分かりました!ありがとうございました。



自分のPC、MacBookAirで初めて作業しました。Excel2011 for Macのためか様子が違うところがあり戸惑いました。しかしまずは会社のWindows,Excel2010でマクロを使いこなすことが目的なので、自での練習は演習なので、出来るところから続けていこうと思います。ゆくゆくは先生のように自宅のPCでも自分の語学学習用マクロなどできるようになりたいです。

今後ともよろしくお願い致します。

ありがとうございました。


3日がかりのその仕事、3分で終わらせる方法教えます。ガラパゴスタディーオンライン講座 ユーザー登録

本講座の動画一覧

  1. 【動画1】 If文とForNext構文を組み合わせる
    【動画1】 If文とForNext構文を組み合わせる 未習得
  2. 【動画2】 複数条件を組み合わせた条件分岐
    【動画2】 複数条件を組み合わせた条件分岐 未習得
  3. 【動画3】 ElseIfを使った条件分岐
    【動画3】 ElseIfを使った条件分岐 未習得
  4. 【動画4】 出現回数を数える。CountIf関数がやっていることをマクロで書くと?
    【動画4】 出現回数を数える。CountIf関数がやっていることをマクロで書くと? 未習得
  5. 【動画5】 条件に一致するデータを別表に転記する。AutoFilterより便利な条件抽出マクロ。
    【動画5】 条件に一致するデータを別表に転記する。AutoFilterより便利な条件抽出マクロ。 未習得
  6. 【動画6】 条件に一致するデータを別シートに転記する
    【動画6】 条件に一致するデータを別シートに転記する 未習得
  7. 【動画7】 とびとびに存在するデータを拾って加工する
    【動画7】 とびとびに存在するデータを拾って加工する 未習得
  8. 【動画8】 文字列を加工してデータ転記する(その1)
    【動画8】 文字列を加工してデータ転記する(その1) 未習得
  9. 【動画9】 文字列を加工してデータ転記する(その2)
    【動画9】 文字列を加工してデータ転記する(その2) 未習得
  10. 【動画10】 文字列を加工してデータ転記する(その3)
    【動画10】 文字列を加工してデータ転記する(その3) 未習得
  11. 【動画11】 勘定項目ごとに合計額を算出する。SumIf関数がやっていることをマクロで書くと?
    【動画11】 勘定項目ごとに合計額を算出する。SumIf関数がやっていることをマクロで書くと? 未習得
  12. 【動画12】 残業時間がいちばん多い従業員の情報を出力する。Max関数、Min関数より便利なマクロ
    【動画12】 残業時間がいちばん多い従業員の情報を出力する。Max関数、Min関数より便利なマクロ 未習得
  13. 【動画13】 複数の表の間でのマッチング。VLookUp関数がやっていることをマクロで書くと?
    【動画13】 複数の表の間でのマッチング。VLookUp関数がやっていることをマクロで書くと? 未習得
  14. 【動画14】 文字列を様々に解析して条件分岐
    【動画14】 文字列を様々に解析して条件分岐 未習得
  15. 【動画15】 複数の記号に挟まれた文字列を取り出す
    【動画15】 複数の記号に挟まれた文字列を取り出す 未習得
  16. 【動画16】 各資料ごとに1番からの番号を割り振る。AutoFill機能より便利なマクロ
    【動画16】 各資料ごとに1番からの番号を割り振る。AutoFill機能より便利なマクロ 未習得
  17. 【動画17】 表を解析して1行のリストを作る、1行のリストを解析して表にする(その1)
    【動画17】 表を解析して1行のリストを作る、1行のリストを解析して表にする(その1) 未習得
  18. 【動画18】 表を解析して1行のリストを作る、1行のリストを解析して表にする(その2)
    【動画18】 表を解析して1行のリストを作る、1行のリストを解析して表にする(その2) 未習得

塾長 小川慶一

メニュー

コメント紹介

もっと見る

ページの先頭へ