オンライン講座 質問と回答

無料・有料のオンライン講座で寄せられたメッセージの一部を紹介致します。

[11558]複数の表の間でのマッチング。VLookUp関数がやっていることをマクロで書くと?

2019-08-17 19:07:53 田中 宏明さんからの投稿です。

ショートカットキーによるやり直し
 Alt→E→R
無意識に使えるよう練習します。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

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

2019-07-27 17:11:23 ほとさんからの投稿です。

フォローアップアドバンスドでつっかかったので、ベーシックが本当にすらすらできるか不安になり、再復習しました。
結果、3度復習したことになりましたが、マクロが思ったような動きにならない場合でも慌てずに修正できるようになり、ベーシックレベルの変数の考え方・使い方は完全に整理できたと思います。最初のころを考えると信じられません。
また3度目の復習ではなんとかベーシックのマクロを2時間程度で組めるようになりました。再度、アドバンスドにチャレンジします。

[ 続きを読む ]  返信件数:2件  [ 動画を見る] 

[11495]出現回数を数える。CountIf関数がやっていることをマクロで書くと?

2019-07-07 14:26:00 ほとさんからの投稿です。

小川先生

こんにちわ
先生の講義はわかりやくすてすらすら頭に入ってきます。
この調子で進めていきたいと思います。

[2]の回答を復習したとき、最後のfor next構文でお団子のとる範囲を間違えて最後の行を取りこぼしてしまいました。
間違いだということはすぐ理解できたのですが、
その時のマクロの実行結果が私の推測と違っていたので、質問させていただきました。私の推測では、F6に6が表示されると思ったのですが、実際はF7に表示されました。理由をお教えいただけますでしょうか。

復習で書いたマクロは以下のものとなります。
Sub countif_3()
Dim goukei

Dim gyo2
For gyo2 = 4 To 6
goukei = 0
Dim gyo
For gyo = 4 To 18
If Range(“c” & gyo).Value = Range(“e” & gyo2).Value Then
goukei = goukei + 1
End If
Next


Next
Range(“f” & gyo2) = goukei

End Sub

[ 続きを読む ]  返信件数:2件  [ 動画を見る] 

[11455]複数条件を組み合わせた条件分岐

2019-06-18 22:45:03 矢口幸平さんからの投稿です。

こんにちは。いつもお世話になっております。
ベーシックを終了してアドバンスドに移行予定でしたが
業務が繁忙であるため、6月末まではベーシックの復習中です。

本題にうつり、質問致します。

【質問】問題2について
下記コードを記入しても、合否結果が出力されません。
gouhi の変数に変換した途端出力されなくなりました。
そのため、この変数設定の仕方が良くないと推測されますが
何が悪いのかわからず、堂々巡りとなっております。

ご回答頂けると嬉しいです。
宜しくお願い致します。

ーーーーーーーーーーーーーー以下コードーーーーーーーーーーーー

Sub danzyo()
    Dim sei
    Dim tensu
    Dim gouhi
    
    Dim gyo
    For gyo = 2 To 11
        sei = Range("c" & gyo).Value
        tensu = Range("d" & gyo).Value
        gouhi = Range("h" & gyo).Value
        
        If sei = "女性" Then
            If tensu >= 70 Then
                gouhi = "合格"
            Else
                gouhi = "不合格"
            End If
        Else
            If tensu >= 80 Then
                gouhi = "合格"
            Else
                gouhi = "不合格"
            End If
        End If
    Next
End Sub

[ 続きを読む ]  返信件数:5件  [ 動画を見る] 

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

2019-05-10 05:52:12 受講生さんからの投稿です。

小川先生、
お世話になっております。カンマの使い方で1つ確認させてください。解説を見る前に自分で解いた時に、カンマを表示する時にコードとしてRange(“F2”).Value = Range(“A2” & “,”).Value としたのですが、実行時エラー1004となり、動きませんでした。
Range(“F2”).Value = Range(“A2”).Value & “,”としたら可動しました。別の会の授業の中でのコロンを使用したRange(“C2” & “:” & “E2”).Value = 8のコードを参考に上記のようなコードとしたのですが、エラーがでました。確認したいのですが、これはどこがエラーの原因なのでしょうか。よろしくお願いいたします。  

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11386]出現回数を数える。CountIf関数がやっていることをマクロで書くと?

2019-05-05 10:01:47 藤村英夫さんからの投稿です。

一回目に見たときに感動したのですが、土日だけ復習しているとすぐに忘れてしますので、思い切ってスマホを大型に買い替えて、ゴールデンウィーク明けからは、電車のなかでこの動画を通勤中に見るようにします。

ところで、質問ですが、ドットバリュー(.value)は入力しなくても、
今のところ支障なく作動するようですが、この先 発展編にすすむとまずいことはでてきますか? 書店で購入した本が、range(“A1”).value等の
入力の場合、ドットバリュー(.value)は打たなくても問題がないという記述があったので、今まで入力していません。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

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

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での書き方はしなくなっていくのでしょうか?
ご教授、お願いいたします。

[ 続きを読む ]  返信件数:4件  [ 動画を見る] 

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

2019-03-14 12:54:42 jinoseさんからの投稿です。

[感想]
これは、、、難しい!初期化、変数を増やすタイミング、for next構文の最初と最後の処理、条件分岐等。。。まだ身についていないところの総復習が必要と感じた。

まずはフォローアップ ベーシックを1周できました。わかりやすい講義をありがとうございました!!!

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11233]複数条件を組み合わせた条件分岐

2019-03-09 17:36:41 藤村英夫さんからの投稿です。

これはスゴイ!! 脱帽です!! for next 構文のハナコのステップは想像が届きますが、このIF then 構文の組合せの作法は思いもつきません。私、いままで二重仮定のIF then構文は、IF とend ifの組合せがよくわからなくなるのです。これは、非常に参考になりました。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11228]出現回数を数える。CountIf関数がやっていることをマクロで書くと?

2019-03-07 19:37:18 マサラさんからの投稿です。

マクロの実行に伴って変数の値が推移する。
講義中で行われていたように、変数の値を丁寧に追いかけることで理解につながりました。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11207]残業時間がいちばん多い従業員の情報を出力する。Max関数、Min関数より便利なマクロ

2019-02-25 22:17:22 jinoseさんからの投稿です。

[感想]
「勝ち抜き戦・暫定王者・挑戦者」という用語を用いた説明が大変わかりやすく、すんなりと理解出来ました!

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11180]出現回数を数える。CountIf関数がやっていることをマクロで書くと?

2019-02-17 21:36:21 jinoseさんからの投稿です。

[感想]
最初は理解できなかった(for next構文の中にfor next構文)が、復習するにつれだんだんとわかってきた。リアルでの例えがわかりやすくて納得できました!

[質問]
countif関数で=COUNTIF(C:C,”=” & E4)をなっておりますが、第2引数に”=” & をつけるのはなぜでしょうか(E4だけで動くと思うのですが)?

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11156]複数条件を組み合わせた条件分岐

2019-02-14 06:57:42 jinoseさんからの投稿です。

[感想]
ハナコのステップの凄さを再認識しました。このマクロを上から書いたら訳わからなくなると思いました。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

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

2019-02-13 18:49:03 jinoseさんからの投稿です。

よい復習になりました!

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11037]文字列を加工してデータ転記する(その3)

2019-01-30 05:59:29 受講生さんからの投稿です。

お世話になります。問題3について質問させてください。
下記のようにコードを書きました。小川先生と同じように書いたつもりですが、動きません。実行時エラー5と表示されます。そこで試しにRange(“C” & gyo).Value = Left(name, slush – 1)をRange(“C” & gyo).Value = Left(name, slush )としたところ、動くようになりました(/は入ってしまいますが)。今回のコードにはもう1つ問題があります。半角空欄を認識していません。なぜダメなのかお手数ですが、ご回答お願いいたします。

sub renshu2()
Dim slush
Dim name

Dim gyo
For gyo = 2 To 11
name = Range(“b” & gyo).Value
slush = InStr(name, “/”)
If name = 0 Then
slush = InStr(name, ” “)
End If
Range(“C” & gyo).Value = Left(name, slush-1)
Range(“D” & gyo).Value = Mid(name, slush + 1)

Next
End Sub

[ 続きを読む ]  返信件数:3件  [ 動画を見る] 

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

2019-01-29 21:17:41 ゲストさんからの投稿です。

解答のgyosha = gyosha & “,” & Range(“A” & gyo).Valueの意味がいまいちわかりません。最初のgyoshaの変数を定義するのに、gyosya=gyosya…とそれまでにgyosyaが出てこないのに、どういう意味でしょうか。
xを宣言するのにx=x+yだとしたら、x-x=y、0=yのようにならないのでしょうか。どうも頭硬いようです。
ちなみに私は下記でやってみました。あまり格好良くないでしょうか。

Sub kaisya()
Dim gyosh
Dim gyo
gyosh = Range(“a” & 2).Value
For gyo = 2 To 11
gyosh = gyosh & “,” & Range(“a” & gyo).Value
Next
Range(“f2”).Value = gyosh

End Sub

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[11032]複数の記号に挟まれた文字列を取り出す

2019-01-29 07:10:40 ゲストさんからの投稿です。

Replace 関数?
過去に習いましたでしょうか?

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10906]とびとびに存在するデータを拾って加工する

2019-01-09 06:40:34 受講生さんからの投稿です。

お世話になります。この正月にだいぶ進捗できました。1つ確認させてください。
Range(“C1”).Value = Range(“A1” ).Value & Range(“A2” ).Value ですが、これをまとめてRange(“C1”).Value = Range(“A1” & “A2”).Value 左記のように書いたのですが、実行時エラー1004と出ました。これは何故動かないのでしょうか。宜しくお願いいたします。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10863]勘定項目ごとに合計額を算出する。SumIf関数がやっていることをマクロで書くと?

2018-12-29 14:45:20 受講生さんからの投稿です。

sumif関数の方法は理解できました。sumifs関数もマクロで実現可能ですか?

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10846]条件に一致するデータを別シートに転記する

2018-12-25 23:06:06 受講生さんからの投稿です。

Worksheets(“元データ”)やWorksheet(“要注意リスト”)の元データや要注意リストの部分も変数にして当てはめることは可能ですか?シート名が変わったりしても書き変えなくてすむように、motosheet=range(“A1”).valueみたいにできますか?

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10826]出現回数を数える。CountIf関数がやっていることをマクロで書くと?

2018-12-22 15:32:30 ゲストさんからの投稿です。

小川先生
こんにちわ
[2]の回答を作ったのですが、このような形でもいいのでしょうか?
Sub mondai2()
Dim siso
Dim kanpyo
Dim nomimono
Dim gyo
For gyo = 4 To 18
If Range(“C” & gyo).Value = “しそ巻き無料” Then
siso = siso + 1
ElseIf Range(“C” & gyo).Value = “飲みもの無料” Then
nomimono = nomimono + 1
ElseIf Range(“C” & gyo).Value = “かんぴょう巻き無料” Then
kanpyo = kanpyo + 1
End If
Next
Range(“F4”).Value = siso
Range(“F5”).Value = nomimono
Range(“F6”).Value = kanpyo
End Sub

[ 続きを読む ]  返信件数:3件  [ 動画を見る] 

[10632]文字列を加工してデータ転記する(その2)

2018-10-06 12:20:47 シドニーさんからの投稿です。

小川先生 
お世話になっております。解説見る前に過去の動画を見ながら作成していますが、模範解答のようにきれいにならないこともあります泣
問題4で下記のように作成しましたが、無駄が多いように感じています。(マクロ自体は、問題無く動きましたが…)
マクロを書くときに、シンプルに考える工夫などありますか。よく物事を複雑に考えすぎると言われてしまうので…

Sub mondai4()
    Dim jusyo
    Dim ku
    Dim si
    Dim gyo
    
    For gyo = 2 To 11
        jusyo = Range("C" & gyo).Value
        ku = InStr(jusyo, "区")
        si = InStr(jusyo, "市")
        If ku > 0 Then
            Range("F" & gyo).Value = Left(jusyo, ku)
            Range("G" & gyo).Value = Mid(jusyo, ku + 1)
        Else
            Range("F" & gyo).Value = Left(jusyo, si)
            Range("G" & gyo).Value = Mid(jusyo, si + 1)
        End If
    Next       
End Sub

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10628]文字列を加工してデータ転記する(その3)

2018-10-03 21:26:22 ゲストさんからの投稿です。

小川先生

以下の件かなり参考になりました。
仕事上、ばれてしまうことがあるので朝、名前変数等急いで加工してしまいました。(まあそれだけではないですがまだまだ勉強の足りなさを感じております。)

もう一度書かれていた件は振り返り学習をしようと思います。
まだまだ発展まで行きませんが、確実に勉強していきたいと思っております。

丁寧な対応ありがとうございました。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10621]文字列を加工してデータ転記する(その3)

2018-10-03 06:38:15 ゲストさんからの投稿です。

エラーが出たのでもう一度送ります。

[ 続きを読む ]  返信件数:0件  [ 動画を見る] 

[10613]条件に一致するデータを別シートに転記する

2018-10-01 21:04:01 シドニーさんからの投稿です。

自分でマクロが書けるようになり成長を実感しています!
前回の問題で勉強したので、今回の問題は何とか解けました!
ただ、小川先生が言っていた、やってはいけない書き方(worksheetsの記述を片方省く)を見事にやってしまい、マクロが思うように実行されず、修正に時間がかかりました(笑)
マクロを書くときにやってしまいがちなミスも学べるので、非常に勉強になります。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10601]文字列を加工してデータ転記する(その3)

2018-09-28 22:54:42 受講生さんからの投稿です。

この講座を作っていただいてありがとうございます!っていうぐらいわかりやすく、何回も見直してます。

今回の質問は、文字が入った数値ex(13l)(じゅうさんパイプ)を数値のみの(13)にしたい場合うまくinstr関数left関数にしてもうまくできません。

なにが原因かそして改善策をどうしたらいいのかおしえてください。
ちなみにQRコードを読んだときに区切りとして出てくる”l”です。
もしかしたら”パイプ”と読まないのかもしれませんがこの区切りをなくし数値のみにしたいと思ってます。
よろしくお願いいたします。




[ 続きを読む ]  返信件数:4件  [ 動画を見る] 

[10565]各資料ごとに1番からの番号を割り振る。AutoFill機能より便利なマクロ

2018-09-11 15:37:50 受講生さんからの投稿です。

返信が遅くなってしまい申し訳ありません。
トンチンカンな質問に対して丁寧に指導いただき、ありがとうございます。

[a]の基礎講座第1章8と9を見直したところ、自分の間違いに気がつきました。格納された変数は右辺で利用される。左辺に変数を持ってくるということは、変数を格納するということであり、私がIF構文ないでやっていたことは、一度格納したBANGOという変数の内容を変更していただけだと、ハッとしました。よくよく冷静になって自分のマクロを見れば明白な間違いなのに、基礎フォローアップベーシックも最終にさしかかるにつれて、少しずつできるようになってきた楽しさと自信から、一度学んだ基礎の知識を置き去りにして、練習問題を解いていたように思います。基礎を再確認するためにも、自分の間違えたマクロを元に小人ちゃんシートに反映もさせていきました。小人ちゃんシートを使うと自分の書いたマクロをキチンと一つずつ理解しながら、反映ができるので、とても良かったです。基礎ができていないことを先生にご指摘いただき、ここで改めて基礎の大切さに気づけて本当に良かったです。ありがとうございました。

—————————-
>コメント番号10378で投稿したマクロのRange(“B” & GYO).Valueの箇所をコメント番号10443で投稿したマクロのように関数(BANGO)に置き換えるとエクセルに反映されなくなります。
>このような関数の使い方は出来ないということなのでしょうか。という質問になります。

そういうご質問でしたか。

>関数(BANGO)に置き換えると

ここで、用語を間違えています。これは関数ではありません。

>このような関数の使い方は出来ないということなのでしょうか。

上記のとおり、BANGOは関数ではありません。
なので、「このような関数の使い方は出来ないということなのでしょうか」という質問には、回答不能です。

用語を間違えていて、機能への理解もできてない…ということなので。
このタイミングで、以下の動画を復習し、用語とその機能について、ご自身の知識を修正してください。

○基礎講座第1章8 – 変数を使ったプログラム、変数を使う意義
https://online.pc5bai.com/movie/index/25/104/

[a] まずは動画をひととおり見て、用語とその意味を確認してください。

[b] 次に、動画にあわせて、「こびとちゃんシート」を使って、こびとちゃんになったつもりで、一行一行、マクロのコードの内容をシートに反映させていってください。

上記のワークをしっかりやったあと、さらに、コメント番号10443のマクロを見直してください。

[d] それでもどこがどう問題なのか?が分からなければ、「こびとちゃんシート」を使って(*)、こびとちゃんになったつもりで、一行一行、コメント番号10443のマクロのコードの内容をシートに反映させていってください。

(*)こびとちゃんシートは19行目まではないですが、4行目から9行目まではFor Next構文に従っで実際に作業してください。10行目以降はやらなくてOKです。

[a]-[d] までのどこかで、何をどう勘違いしていたのか?ということについて、すっきり整理して理解できるかと思います。
無事に理解できましたら、[a]-[d] までのどこで問題解決できたか?お知らせください。

[e] もしここまでやっても分からなかった場合は、上記[d]のワークをやった結果のこびとちゃんシート、手書きワークをやりおえた状態のものをお送りください。
PDFファイルでもJPGファイルでもかまいません。スキャンまたは携帯で撮影した画像。どちらでも構いません。
ファイルをお送りいただけたなら、そのファイル、コメント番号10443のマクロを使って解説します。


[a]-[d]のワークは、とても面倒に感じられるかもしれません。

でも、なぜ、講座本編でもわざわざこういうワークをやる時間を取っているのか?というと、それは、こういう手書きワークはとても重要だからです。

それに、多少手書きワークをしたとしても、基礎編フォローの演習問題にチャレンジするのにかかる総時間と比べたら微々たるものですので、ここは面倒でもやってみてください。

漫然とマクロを実行しているだけのときとは比べようのない大きな学びを得ることができるでしょう。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

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

2018-09-11 12:19:04 受講生さんからの投稿です。

———————–
Sub XXX()
Dim kuiki
Dim gyosha
gyosha = 1
Dim gyo
For gyo = 2 To 27
If Range(“A” & gyo – 1).Value <> Range(“A” & gyo).Value Then
gyosha = gyosha + 1
Range(“E” & gyosha).Value = Range(“A” & gyo).Value
Range(“F” & gyosha).Value = Range(“B” & gyo).Value
kuiki = Range(“C” & gyo).Value & “地区”
Else
kuiki = kuiki & “,” & Range(“C” & gyo).Value & “地区”
End If
If Range(“A” & gyo).Value <> Range(“A” & gyo + 1).Value Then
Range(“G” & gyosha).Value = kuiki
End If
Next
End Sub
————————-
今回の2つ目の問題を↑のように解いてから動画を見ました。
このマクロであれば最初と最後の処理を必要としないので良いような気もするのですが、なんとなく格好が悪い気もします。
最初と最後の処理をするマクロを自分で導くのは正直自分には難しそうと尻込みしてしまいますが、自分で導くためのプロセスを順を追って動画で紹介して下さっているので、とても勉強になりました。何回もこの動画を見直して練習したいと思います。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10557]文字列を加工してデータ転記する(その3)

2018-09-09 11:43:05 Matsumotoさんからの投稿です。

[9]で何度も練習してからすぐに解いたので、スラスラと回答できました。
復習問題は、きちんと理解できたか確認できるので、
解いていて楽しいです。

次々新しい道具を欲しがる前に
少ない道具を使いこなす(考えずに体が動く)ことを目指します。

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 

[10556]文字列を加工してデータ転記する(その1)

2018-09-08 17:04:44 Matsumotoさんからの投稿です。

住所分割のマクロ久々です。
本編で学習から約2週間たっていたので
記憶も朧でしたが、回答できました。

スラスラとは程遠く、
記憶を呼び起こすように一行ずつ動作確認しながらですが、
最終的に動いたときの喜びは大きいですね。

ただ、絶対的な練習量が少ないので、
何度も復習=マクロを書いて、
問題を見た瞬間に体が動くようにしたいです。
(九九のようにですよね)

[ 続きを読む ]  返信件数:1件  [ 動画を見る] 


各講座ごとのメッセージを見る場合はこちら

 

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

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

トップへ