Excelマクロの記録で覚えるVBA | 第5回.100マスに数値を入れる | Excelマクロの自動記録を使って、エクセルVBAの初心者向け入門解説



最終更新日:2013-02-18

第5回.100マスに数値を入れる


まずは、前回の宿題の回答です。



Sub Macro1()
  Dim i
  i = 1
  Do While i <= 10
   Cells(1, i) = i
   i = i + 1
  Loop
End Sub


縦に入れた時の、この部分を
Cells(i, 1) = i

Cells(1, i) = i
このように、行数と列数を入れ替えます。

これで横に1〜10が入ります。



では次は、縦10、横10のセルに、1〜100までを入れてみましょう。


こんな感じに入れます。



どうでしょうか、マクロを作成してみて下さい。

こんなプログラムになります。


Sub Macro1()
  Dim i
  Dim j
  Dim k
  i = 1
  k = 1
  Do While i <= 10
    j = 1
    Do While j <= 10
     Cells(i, j) = k
     k = k + 1
     j = j + 1
    Loop
    i = i + 1
  Loop
End Sub


急に長いプログラムになってしまった感じですが、順番に考えましょう。


iは、行数に使用します。

jは、列数に使用します。

kは入れる数値です。


そして、10行に入れるプログラムは、

i = 1
Do While i <= 10
  Cells(i, 1) = i
  i = i + 1
Loop

でした。

この1行に数値を入れる部分を10列に入れるようにすればよいのです。

i = 1
Do While i <= 10

  10列に入れる

  i = i + 1
Loop

つまり、

Cells(i, 1) = i

j = 1
Do While j <= 10
  Cells(i, j) = 連番

  j = j + 1
Loop

にするのです。

すると、

i = 1
Do While i <= 10
  j = 1
  Do While j <= 10
    Cells(i, j) = k
    j = j + 1
  Loop
  i = i + 1
Loop

となります。


後は、kを1ずつアップしていけば、最初のプログラムが出来上がります。



エクセルのシートは、縦横の2次元ですから、


上記のプログラムが作成出来れば、


シートの好きな位置に、好きな数値、好きな文字を入れる事が可能です。


前回も言いましたが、これが、VBAの基本であり、全てでもあります。


このプログラムを3分以内に作成出来れば、とりあえずは合格でしょう。


今回はこれだけにします。


これが十分に理解出来なければ、次に進む意味がありません。


もう一度言います。


これが基本です、腹の底に落としこんで下さい。


次回は、この100マスを、別のシートにコピーしてみましょう。


それが出来たら、縦横を入れ替えてコピーします。


ここが正念場です、ここを過ぎれば、VBAが楽しいものに変わります。






同じテーマ「Excelマクロの記録で覚えるVBA」の記事

第6回.別のシートにコピーする
第7回.別のシートにコピーする2
第8回.計算式を入れる
第9回.計算式をコピーする
第10回.計算結果を入れる
第11回.イミディエイトで値の確認
第12回.セルに色を塗る

新着記事 ・・・新着記事一覧を見る

スプレッドシートが非常に遅い、高速化するには|Google Apps Script入門(1月17日)
画像のトリミング(PictureFormat,Crop)|ExcelマクロVBAサンプル集(12月27日)
シート保護|Google Apps Script入門(12月24日)
表示の固定|Google Apps Script入門(12月24日)
グラフ|Google Apps Script入門(12月21日)
入力規則|Google Apps Script入門(12月13日)
並べ替え|Google Apps Script入門(12月12日)
メモの挿入・削除と改行文字|Google Apps Script入門(12月6日)
リンクの挿入・編集・削除|Google Apps Script入門(12月6日)
セルに数式を入れる|Google Apps Script入門(12月1日)

アクセスランキング ・・・ ランキング一覧を見る

1.RangeとCellsの使い方|ExcelマクロVBA入門
2.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
3.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技
4.Range以外の指定方法(Cells,Rows,Columns)|ExcelマクロVBA入門
5.セルの参照範囲を可変にする(OFFSET,COUNTA,MATCH)|エクセル関数超技
6.セルのコピー&値の貼り付け(PasteSpecial)|ExcelマクロVBA入門
7.ひらがな⇔カタカナの変換|エクセル基本操作
8.CSVの読み込み方法|ExcelマクロVBAサンプル集
9.変数とデータ型(Dim)|ExcelマクロVBA入門
10.VBAのFindメソッドの使い方には注意が必要です|ExcelマクロVBA技術解説



  • >
  • >
  • >
  • 100マスに数値を入れる

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。

    ↑ PAGE TOP