複数シートを作成し、取引先名リストにあるのと同じ名前を順に割り当てる

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

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

解説

複数のシートを作り、それらの名前を変更していきます。「ハナコのステップ」に従って、ステップを確認しながらマクロを書いていきます。

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

7151 : 小川慶一の回答 (2016-10-02 16:37:47)

田中 宏明 さん:

コードの質もコードに対する自己評価も変わりますよね。
僕にも、エクセルVBAなんて狭い世界でのことなのに、いまだにそういうことがあります。

>この動画を見ての感想です。
>初心者のころに自分が書いた「シート間でデータをコピーするマクロ」を見直してみると、当時、とにかく動けばいいやといった感じで後からのメンテナンスを気にせずマクロを書いていたことに気がつきますね。


7149 : 田中 宏明さんのコメント (2016-10-01 07:40:23)

この動画を見ての感想です。
初心者のころに自分が書いた「シート間でデータをコピーするマクロ」を見直してみると、当時、とにかく動けばいいやといった感じで後からのメンテナンスを気にせずマクロを書いていたことに気がつきますね。


4341 : 山田 将之さんのコメント (2015-05-21 21:55:57)

疲れました。


2497 : 小川慶一の回答 (2014-09-18 05:56:47)

匿名 さん:

>今朝、すっきりした頭で動画を再度見させて頂きました。
>転記元と転記先のワークシートにニックネームをつけるってとても
>大事ですね。

ですです。あの動画は、何度も見ているとその都度学びがあるはずです。
ガンガン活用してください!


2494 : 受講生さんのコメント (2014-09-17 06:49:38)

先生、

今朝、すっきりした頭で動画を再度見させて頂きました。
転記元と転記先のワークシートにニックネームをつけるってとても
大事ですね。

必ず癖付けします。


小川慶一 さん:

>匿名 さん:
>
>よろしく!
>この「伝票作成マクロのための部品解説」シリーズは、同じようなことをひたすらくりかえしているところに意味があります。
>
>似たような練習をくりかえしているうちに、そういう基本的なミスをしなくなりますね。
>
>>「転記元」のワークシートをSetしていなかったため、最初はマクロがうまくまわりませんでしたが、
>>動画を見て、原因が分かりました。まだまだ足りない部分が多いですが、数をこなして頑張ります。
>


2489 : 小川慶一の回答 (2014-09-16 05:46:57)

匿名 さん:

よろしく!
この「伝票作成マクロのための部品解説」シリーズは、同じようなことをひたすらくりかえしているところに意味があります。

似たような練習をくりかえしているうちに、そういう基本的なミスをしなくなりますね。

>「転記元」のワークシートをSetしていなかったため、最初はマクロがうまくまわりませんでしたが、
>動画を見て、原因が分かりました。まだまだ足りない部分が多いですが、数をこなして頑張ります。


2488 : 受講生さんのコメント (2014-09-15 19:32:46)

「転記元」のワークシートをSetしていなかったため、最初はマクロがうまくまわりませんでしたが、
動画を見て、原因が分かりました。まだまだ足りない部分が多いですが、数をこなして頑張ります。


1613 : 小川慶一の回答 (2014-07-06 08:05:13)

荏隈 直樹 さん:

>ところで、追加したワークシートの名前を変える時、いつも上記の様にやっていたのですが、
>wToのように先にオブジェクト型の変数を使う方法もあるのですね。
>またひとつ新たな発見が。

どちらでもありです。
やり方というより、手順前後の問題ですね。


1601 : 荏隈 直樹さんのコメント (2014-07-05 16:35:02)


Sub mondai4()
    Dim ws As Worksheet
    Dim WSM As Worksheet
    Dim stAry() As String
    Dim G As Long
    Dim EG As Long
    
    Set WSM = Worksheets("main")
    EG = WSM.Range("A65536").End(xlUp).Row
    
    For G = 2 To EG
        ReDim Preserve stAry(G - 2)
        stAry(G - 2) = WSM.Range("B" & G).Value
        Debug.Print stAry(G - 2)
    Next
    
    For G = LBound(stAry) To UBound(stAry)
        Sheets.Add After:=Sheets(Sheets.Count)
        ActiveSheet.Name = stAry(G)
    Next

End Sub


発展編2もやったことだし、折角なので、配列を使って書いてみました。
ところで、追加したワークシートの名前を変える時、いつも上記の様にやっていたのですが、
wToのように先にオブジェクト型の変数を使う方法もあるのですね。
またひとつ新たな発見が。


935 : 小川慶一の回答 (2014-01-06 10:40:51)

山口 舞さん:

>実際にはこんなところでよく躓いたことを思い出しました。

そうそう。
そして、実際には、ロジックとか基本のアルゴリズムを知っているかどうかという以上に、こういうことを自然とできるかどうかがマクロを書き上げられるかどうかの分かれ目だったり (^^;


920 : 山口 舞さんのコメント (2014-01-05 22:14:26)

「転記先・転記元の各ワークシートにニックネーム(変数)を作る」などの Tips が良いです。実際にはこんなところでよく躓いたことを思い出しました。


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

本講座の動画一覧

  1. 【動画1】 すべてのシートを順に処理する
    【動画1】 すべてのシートを順に処理する 未習得
  2. 【動画2】 所定のシート以外すべてを削除する
    【動画2】 所定のシート以外すべてを削除する 未習得
  3. 【動画3】 所定の条件に一致しないシートすべてを削除する
    【動画3】 所定の条件に一致しないシートすべてを削除する 未習得
  4. 【動画4】 警告ダイアログを出さずにシートを削除する
    【動画4】 警告ダイアログを出さずにシートを削除する 未習得
  5. 【動画5】 複数シートを作成し、取引先名リストにあるのと同じ名前を順に割り当てる
    【動画5】 複数シートを作成し、取引先名リストにあるのと同じ名前を順に割り当てる 未習得
  6. 【動画6】 テンプレートシートを複数コピーし、取引先名リストにあるのと同じ名前を順に割り当てる
    【動画6】 テンプレートシートを複数コピーし、取引先名リストにあるのと同じ名前を順に割り当てる 未習得
  7. 【動画7】 あらかじめ並べ替えられているリストから重複しないリストを作成する
    【動画7】 あらかじめ並べ替えられているリストから重複しないリストを作成する 未習得
  8. 【動画8】 重複しないリストを作成し、新規シート作成時にリストからシート名を生成する
    【動画8】 重複しないリストを作成し、新規シート作成時にリストからシート名を生成する 未習得
  9. 【動画9】 重複しないリストを作成する(並べ替えから行う)
    【動画9】 重複しないリストを作成する(並べ替えから行う) 未習得
  10. 【動画10】 重複しないリストを作成する(並べ替えを行い、最後に元に戻す)
    【動画10】 重複しないリストを作成する(並べ替えを行い、最後に元に戻す) 未習得
  11. 【動画11】 取引記録に登場するすべての取引先名のシートを作成する
    【動画11】 取引記録に登場するすべての取引先名のシートを作成する 未習得
  12. 【動画12】 取引記録に登場するすべての取引先名のシートを作成する(IDの割り振りも行う)
    【動画12】 取引記録に登場するすべての取引先名のシートを作成する(IDの割り振りも行う) 未習得
  13. 【動画13】 取引先ごとに作成したシートにデータ転記を行う
    【動画13】 取引先ごとに作成したシートにデータ転記を行う 未習得
  14. 【動画14】 取引先ごとに作成したシートにデータ転記を行う2
    【動画14】 取引先ごとに作成したシートにデータ転記を行う2 未習得
  15. 【動画15】 データ転記先のシートすべてに対し、罫線を引く等の後処理をする
    【動画15】 データ転記先のシートすべてに対し、罫線を引く等の後処理をする 未習得

塾長 小川慶一

メニュー

コメント紹介

もっと見る

ページの先頭へ