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

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

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

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

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

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

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

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

よい復習になりました!

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

[11143]本講座で得られること。

2019-02-13 08:57:42 めめさんからの投稿です。

楽しかったです!ありがとうございます。
サクサクPC使って凄そうに見えるって最高!!
毎日10分間の勉強というのは良いですネッ!

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

[11142]発展編1 フォローメールセミナー 第11回

2019-02-13 05:06:07 A.Sさんからの投稿です。

小川先生

いつもお世話になっております。
第9回に引き続き、第11回の宿題を提出させていただきます。
お忙しいところ大変恐れ入りますが、添削の程、どうぞよろしくお願い致します。

Sub CreateDenpyo()
    DeleteSheets
    Template_Setup
    Numbering
    Narabekae_Torihikisaki
    Denpyosheet_Set
    Narabekae_No
    NumberingDelete
End Sub

'「main1」シートのページ設定をするマクロ
Private Sub Template_Setup()
    With Sheets("main1").PageSetup
        .PrintArea = "" '印刷範囲の解除
        .CenterHeader = "&A" 'ヘッダーに「シート名」を挿入
        .CenterFooter = "&P" 'フッターに「ページ番号」を挿入
    End With
    Range("A1").Select
End Sub

'「main」シートのA列に番号を振るマクロ
Private Sub Numbering()
    Dim ln As Long
    Dim lnMx As Long
    Dim ws As Worksheet
    Set ws = Worksheets("main")
    ws.Range("A1").Value = "No."
    lnMx = ws.Range("B" & Rows.Count).End(xlUp).Row
    For ln = 2 To lnMx
        ws.Range("A" & ln).Value = ln
    Next
End Sub

'「main」シートのA列のデータを全て削除するマクロ
Private Sub NumberingDelete()
    Dim lnMx As Long
    Dim ws As Worksheet
    Set ws = Worksheets("main")
    lnMx = ws.Range("A" & Rows.Count).End(xlUp).Row
    ws.Range("A1:A" & lnMx).ClearContents
End Sub

'「main」シートのB列を昇順に並び替えるマクロ
Private Sub Narabekae_Torihikisaki()
    With Worksheets("main").Sort
    .SortFields.Clear
    .SortFields.Add Key:=Range("B2:B317"), _
    SortOn:=xlSortOnValues, _
    Order:=xlAscending, _
    DataOption:=xlSortNormal
    .SetRange Range("A1:G317")
    .Header = xlYes
    .Apply
    End With
End Sub

'「main」シートのA列を昇順に並び替えるマクロ
Private Sub Narabekae_No()
    With Worksheets("main").Sort
    .SortFields.Clear
    .SortFields.Add Key:=Range("A2:A317"), _
    SortOn:=xlSortOnValues, _
    Order:=xlAscending, _
    DataOption:=xlSortNormal
    .SetRange Range("A1:G317")
    .Header = xlYes
    .Apply
    End With
End Sub

'取引先毎の伝票シートを作成するマクロ
Private Sub Denpyosheet_Set()
    DeleteSheets
    Dim lnFm As Long
    Dim lnFmMx As Long
    Dim lnTo As Long
    Dim st As String
    Dim wsFm As Worksheet
    Dim wsTo As Worksheet
    Dim dt As Date
    Set wsFm = Worksheets("main")
    lnFmMx = wsFm.Range("B" & Rows.Count).End(xlUp).Row
    For lnFm = 2 To lnFmMx
        If st <> wsFm.Range("B" & lnFm).Value Then
            If lnFm > 2 Then
                Keisen
            End If
            st = wsFm.Range("B" & lnFm).Value
            Sheets("main1").Copy After:=Sheets(Worksheets.Count)
            Set wsTo = ActiveSheet
            wsTo.Name = st
            lnTo = 16
        End If
        wsTo.Range("E" & lnTo).Value = wsFm.Range("D" & lnFm).Value
        wsTo.Range("F" & lnTo).Value = wsFm.Range("E" & lnFm).Value
        wsTo.Range("H" & lnTo).Value = wsFm.Range("F" & lnFm).Value
        If wsFm.Range("G" & lnFm).Value > 0 Then
            wsTo.Range("I" & lnTo).Value = wsFm.Range("G" & lnFm).Value
        Else
            wsTo.Range("J" & lnTo).Value = wsFm.Range("G" & lnFm).Value
        End If
        If lnTo = 16 Then
            wsTo.Range("K" & lnTo).Value = wsFm.Range("G" & lnFm).Value
        Else
            wsTo.Range("K" & lnTo).Value = wsFm.Range("G" & lnFm).Value + wsTo.Range("K" & lnTo).Offset(-1).Value
        End If
        dt = wsFm.Range("C" & lnFm).Value
        wsTo.Range("B" & lnTo).Value = Format(dt, "yy")
        wsTo.Range("C" & lnTo).Value = Format(dt, "m")
        wsTo.Range("D" & lnTo).Value = Format(dt, "d")
        lnTo = lnTo + 1
    Next
    Keisen
End Sub

'取引先名称シートを削除するマクロ
Public Sub DeleteSheets()
    Dim ws As Worksheet
    Application.DisplayAlerts = False
    For Each ws In Worksheets
        If Left(ws.Name, 4) <> "main" Then
            ws.Delete
        End If
    Next
    Application.DisplayAlerts = True
End Sub

'取引先名称シートに罫線を作成するマクロ
Private Sub Keisen()
    Dim lnMx As Long
    lnMx = Range("B" & Rows.Count).End(xlUp).Row
    With Range("B16:K" & lnMx + 1)
    .Borders(xlDiagonalDown).LineStyle = xlNone
    .Borders(xlDiagonalUp).LineStyle = xlNone
        With .Borders(xlEdgeLeft)
            .LineStyle = xlContinuous
            .ColorIndex = 0
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With .Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .ColorIndex = 0
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With .Borders(xlEdgeBottom)
            .LineStyle = xlContinuous
            .ColorIndex = 0
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With .Borders(xlEdgeRight)
            .LineStyle = xlContinuous
            .ColorIndex = 0
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With .Borders(xlInsideVertical)
            .LineStyle = xlContinuous
            .ColorIndex = 0
            .TintAndShade = 0
            .Weight = xlThin
        End With
        With .Borders(xlInsideHorizontal)
            .LineStyle = xlContinuous
            .ColorIndex = 0
            .TintAndShade = 0
            .Weight = xlHairline
        End With
    End With
End Sub

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

[11139]ショートカットキートレーニングで得られる思考の整理整頓

2019-02-12 09:16:27 めめさんからの投稿です。

ありがとうございます。(^^♪私も笑いながら参加させていただきました。
ショートカットキーって本当に凄いです。
この講座を勉強させて頂く為の素地がないので、独自で少し勉強しました。
メールの返信のページを使って、左クリックで動かしたいワードを選択して
ブルーにして Ctrl+c そして、そのワードを入れたい場所にカーソルを
持っていって Ctrl+Vで、そのワードは、貼り付けられました。
文章が変ですね!すみません。
あってますでしょうか❓
今、必要な学びでしょうか?

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

[11131]dLibの使い方-基本編

2019-02-11 19:28:14 田中 宏明さんからの投稿です。

「dLibの使い方-基本編」の感想です。
例えば、データ列を移動させても、そのまま動くので、VBAとは別の魔法の言語のように感じました。
実際のところは、クラスモジュールで設計された動きをしているはずなので、ステップ実行F8で観察して確かめてみたいと思います。
どうもありがとうございます。

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

[11122]発展編1 フォローメールセミナー 第26回

2019-02-11 05:20:39 Takao Kanekoさんからの投稿です。

小川先生、
Module18の下記の課題について質問があります。
[3]で見つけてきた曜日の背景色を調べてくる
[4]で調べた色で、[1]で取得したセル全体を塗りつぶす
土曜日に青色、日曜日に赤色となるはずが、
日曜日に青色、月曜日に赤色と一つズレた実行結果になります。

自分が書いていたマクロに問題があるのかと思いましたが、新しくダウンロードした回答も同じになりました。
実行した年度は、2009年と2019年です。
さらに、「なんでだろう?」と自分で簡単なテストしました。
2019年1月1日(火)なので、Weekday関数の引数は3となるのですが、
なぜかWeekdayname関数だと、水曜日となります。
今朝から、この解けきれない問題のループにハマってしまってます。
どうかお教え頂けますでしょうか?
よろしくお願いします。

Takao

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

[11120]プログラム全体の概況を確認する

2019-02-11 02:01:39 受講生さんからの投稿です。

>>・残すシートリストを用意しておき、それに該当していない場合のみ削除
この方法は、私の書き方が悪いのかもしれませんが、結構コードが長くなってしまいました。その点、Select Caseは手軽に使えて便利だと思いました。

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

[11115]転記先ファイルを生成してデータを流し込む。

2019-02-10 22:44:56 ゲストさんからの投稿です。

小川先生
いつも楽しく勉強させていただいております。

1つ質問があります。
>[1] ワークブック「template.xls」を開き、「sample.xls」という名称で保存せよ。そして、新たに生成した「sample.xls」を閉じる。
という問題で動画にもあるようにマクロの自動記録を使ってコードを作りました。
しかしいざ実行してみると以下のようなエラーが出てしまい実行できませんでした。このエラーを調べて開発タブのマクロのセキュリティ部分をすべてのマクロを有効するに変えたのですがエラーは消えず実行することができませんでした。このエラーを解消する方法はあるのでしょうか?

<エラー内容>
このオブジェクトのマクロは無効に設定されています。マクロを有効にする方法についてはオンラインヘルプまたはホストアプリケーションのドキュメントを参照してください。

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

[11109]基本思想と具体的なノウハウ

2019-02-10 05:41:13 ゲストさんからの投稿です。

windowsの解凍ツールでできました。
ありがとうございました。

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

[11108]ワーク「web」フィードバック1

2019-02-10 05:39:40 ゲストさんからの投稿です。

webとエクセルをALT+TABで切り替えて、webに入力しようとすると、キーボードでセルに移動しません。tabを何回押しても検索窓のところで止まって入力画面にまで下りてきません。chromeですが、ブラウザによってくせがあるのでしょうか。

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

[11095]連想配列3-Microsoft Scripting Runtimeのへの参照設定

2019-02-09 23:05:58 牧野千秋さんからの投稿です。

1つめ
Dim LIST As Scripting.Dictionary
Set LIST = CreateObject(“Scripting.Dictionary”)

このとき、”Scripting.Dictionary”に””がつくのはなぜ?
当然小文字で入力しても大文字にならない

2つめ
テキスト通りに書いたのですが
dic.Item(KEY) = dic.Item(KEY) + 1
で型が一致しません、と出ます。
ここは「すでにキーにあるから、配列を1段下げるよ」という意味ではないのでしょうか。

Sub ディクショナリ()
    Dim dic As Scripting.Dictionary
    Set dic = CreateObject("Scripting.Dictionary")
    
    Dim MR As Long
    Dim i As Long
    Dim KEY As String
    Dim NAM As String
    
    MR = Sheets("基礎データ").Range("A" & Rows.Count).Row
        For i = 2 To MR
            KEY = Sheets("基礎データ").Range("A" & i).Value
            NAM = Sheets("基礎データ").Range("B" & i).Value
            
            If dic.Exists(KEY) Then
                dic.Item(KEY) = dic.Item(KEY) + 1
            Else
                dic.Add (KEY), (NAM)
            End If
        Next
    
    Dim VKEYS As Variant
    VKEYS = dic.Keys
        For i = LBound(VKEYS) To UBound(VKEYS)
            Sheets("出力").Range("A1").Offset(i).Value = VKEYS(i)
            Sheets("出力").Range("B1").Offset(i).Value = VKEYS(i)
        Next
    
End Sub

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

[11093]エクセルマクロ・VBA発展編1フォローアップミニセミナーNo.09

2019-02-09 22:53:24 牧野千秋さんからの投稿です。

何かの本に書いてあった
「マクロを知らない人が「i=i+1」を見たらなんじゃこらと思う」
ある程度自分で書けてきても「i=i+1」の使い方がわからなかった
今思う、「i=i+1」ってスゴい!!

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

[11092]エクセルマクロ・VBA発展編1フォローアップミニセミナーNo.05

2019-02-09 22:50:14 牧野千秋さんからの投稿です。

同じことでひっかかる人たくさんいるんですね。
でもこれはやってしまうわ。

> 一度、worksheetオブジェクトをSelectしてからじゃないと
> RangeオブジェクトをSelectできないですね

Sub 問題1()
'[1] すべてのシートを順番にSelectし、
'SelectされたシートでセルA1をSelectするマクロを作りなさい
    Dim w As Worksheet
    For Each w In Worksheets
        w.Range("A1").Select
    NEXT
End Sub

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

[11091]エクセルマクロ・VBA発展編1フォローアップミニセミナーNo.02

2019-02-09 22:43:36 牧野千秋さんからの投稿です。

感想です

私もやりました「 .Color と .ColorIndex」
マクロの記録で「5287936」と出て作って解答見たら
「10」って書いてあったからなんだ「10」でいいのかと
やってみたら見出しが黒くなった(笑)



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

[11090]動的配列1-動的配列の基本

2019-02-09 17:34:26 受講生さんからの投稿です。

講座を再度見直して理解を深めようとしています。見直すと「あっ!忘れかけてた」と思わせる内容が時々出てきます。復習しやすいオンライン講座の魅力だと感じています。

講義の内容からかなり脱線したことなのですが発展編2動的配列を復習中に感じたことです。塾長は受講者の質問を聞くとき集中して聞き取っているように感じます。自分は人の話を違う形で受け取ってしまうことや、何を言わんとしているか感じ取って先走って言葉を返してしまうこと多々あります。ダメなことだと思っているがやってしまいます…。塾長は人の話を聞く際、意識していることはありますか?
講座の内容とずれた質問なのでご教授いただければで…。

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

[11089]発展編1 フォローメールセミナー 第25回

2019-02-09 17:30:14 Takao Kanekoさんからの投稿です。

小川先生、

1.With EndWithの中の構文は、オブジェクトを指定すれば、こちらが認識されて動くのは新しい発見でした。今までWith構文は、その同じオブジェクトを対象とするものしか入れられないと思ってました。

その動作が見られたのは、Module16 With構文中のさらに、For nextの入れ子の ”rgSummary.Offset(c, cYoko).Formula =”が始まる部分です。

2.
rgSummaryというように、
シートのRangeに変数名を付ける、この変数名がすごくわかりやすいと思いました。
参考にしたいと思います。

3.
>ちなみに、ここまでスラスラとできる人は、すでに達人です。
そうなれるように、引き続きがんばります٩( ‘ω’ )و !

Takao

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

[11088]基本思想と具体的なノウハウ

2019-02-09 07:45:53 ゲストさんからの投稿です。

講座申し込みました。
テキストをDLしたのですが、
PDFやtxtのファイル名の半角英数字以外の文字が、
文字化けして読めません。
どうすればよいでしょうか。

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

[11087]この講座が目指すこと1

2019-02-09 07:42:06 めめさんからの投稿です。

ありがとうございます。(^^
2度目の学びですが、悩みって、似ていると思いました。
よろしくお願いします。

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

[11076]条件に一致するデータだけのリストを、条件に一致しないデータを削除する方法で作成する。

2019-02-05 15:05:32 ひろしさんからの投稿です。

いつもお世話になっております。
行の削除について、質問があります。

下記のように、A列に"行削除"と文字が発見されたら、
対象の列を削除させるマクロを作成しました。
しかし、データ数が膨大になると(20,000行以上とか)
処理時間が、かなり掛かってしまうようです。

データ数が、多い場合は別の方法が良いのでしょうか?
ご教授頂けると幸いです。

Sub gyo_sakujo()

    Dim gyo As Long
    Dim gmax As Long
    gmax = Range("A" & Rows.Count).End(xlUp).Row
    
    For gyo = gmax To 2 Step -1
        If Range("A" & gyo).Value = "行削除" Then
            Range("A" & gyo).EntireRow.Delete
        End If
    Next
End Sub


よろしくお願いします。

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

[11073]発展編1 フォローメールセミナー 第9回

2019-02-04 20:32:10 A.Sさんからの投稿です。

小川先生

いつも分かり易い講座をありがとうございます。
発展編1 フォローメールセミナー 第9回で宿題をいただいた伝票作成マクロを作成しましたので送らせていただきます。
自分なりに最初から作成していき、途中で詰まりながらも何とか最後まで辿り着き、動くところまで確認できました。
お忙しいところ大変恐れ入りますが、添削の程、どうぞよろしくお願い致します。

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

[11068]基礎講座第4章9 – If文のその他の構文その1

2019-02-04 11:31:24 jinoseさんからの投稿です。

[感想]
instr関数をif文の中で使うというやり方をしれて良かったです!

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

[11067]苗字と名前を分割して別のセルに投入する

2019-02-03 22:36:52 めめさんからの投稿です。

よろしくお願いいたします。
エクセルは全くの初心者で、今回のこの講座での関数という
言葉も聞きなれない言葉でした。mypageの中で 先ずは入門講座の
学んでいく順番をお教えください。
エクセルマクロのコンセプトに魅力を感じスタートしました!
心理学や身体の使い方は身につくまでみたいと思います。
ありがとうございます。(^^

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

[11064]「マジカルナンバー7」と「チャンク化」

2019-02-02 17:34:55 受講生さんからの投稿です。

「ファイルをダウンロードする」で資料ダウンロードしましたがマインドマップ、マジカルナンバー7の資料がない、チャンク化の資料は有りました。

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

[11059]追加特典: 左手[Shift], [Tab]キー操作をするときの、肩甲骨ー手首までの動き。

2019-02-02 00:08:39 めめさんからの投稿です。

よくわかります。(**!
サウスポーなのでかいつも左手や左肩が疲れていたり凝っていて
右手の方が軽く動きます。♪♪
ありがとうございます。

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

[11058]基礎講座第4章7 – 「If文」の実習

2019-02-01 09:16:04 jinoseさんからの投稿です。

[感想]
For next構文を作る際に、勝手に手が動いたので自分でもびっくりです!(if文はまだ考えながらという感じですが)

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

[11057]発展編1 フォローメールセミナー 第22回

2019-02-01 03:35:39 Takao Kanekoさんからの投稿です。

小川先生、

早速のご返答ありがとうございます。
Tempの略称だったのですね。
小川先生の変数名は、略称なのにかかわらず、パッと見てすぐ意味が分かるものななので、こういうところも真似したいと思い質問させていただきました。

学習方法の方向性が間違ってないことが判り、安心しました。

そうでした。自力で書けた次は、自分の言葉で人に説明しながら、学ぶスタイルでさらに上を目指して理解を深めたいと思います。

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

[11056]股関節 – 座り方のワーク2

2019-02-01 00:14:56 めめさんからの投稿です。

ボディーワークは 感動の連続になりそうです。
ありがとうございます。(^^♪

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

[11054]発展編1 フォローメールセミナー 第22回

2019-01-31 20:38:20 Takao Kanekoさんからの投稿です。

小川先生、

少し細かいことで申し訳ないのですが、
Dim dtTp As Dateの”Tp”は何の意味を指しますか?

この第22回のセミナーは、今まで触れることがなかった日付マクロ作成などを学習出来てよかったです。

始めは慣れなかったので、トライ・アンド・エラーを何回も繰り替えして演習問題を解きました。そうすると、ステップインF8でロジックの理解よりも、記憶を頼りにしマクロを書き上げているような気がしました。マクロはちゃんと動きますし、今まで分からないところは、基礎編の演習問題もこうして解いて、後でピーンと来たりします。この学習方法で、何か改善するところがあれば、お教え下さい。大丈夫でしょうか。

どうぞよろしくお願いします。

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

[11052]基礎講座第4章2 – ハナコのステップ

2019-01-31 10:22:26 jinoseさんからの投稿です。

[感想]
ハナコのステップは参考書に載っていない思考なので学べて良かったです!

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


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

 

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

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

トップへ