こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

エクセルのマクロの繰り返し

よろしくお願いします。
「A1からA5までの数値を数字の大きい順に並び替えして、
そのA1からA5のデーターをC1からC5にコピーする。
次にB列に1列挿入する。」
ここまではエクセルのマクロ機能で出来ましたが
それを100回くり返すコードというか、
コードの書き方、仕方がわかりません。
このばあいどのようなコードでしょうか

投稿日時 - 2018-11-28 13:27:19

QNo.9562539

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

2回目以後において、>A1からA5、>C1からC5、>B列に1列挿入
の各Range(セルやセル範囲)は、どう変化する(変化させるべき)かを、書かないと、質問にならない。この点のやり方・考え方がポイントだろう。
 処理対象は、ずらしても、全く同じコードで同じことを繰り返したら、途中の結果は消えてしまうようなことになる。
コンピュター処理は、繰り返しではあるが、処理対象や、処理結果をセットする場所を、ずらす場合がほとんどだよ。
基本的なことなので、こんなところへ、質問するより、経験者を探して、教えを乞うべきと思う。

投稿日時 - 2018-11-28 15:20:51

ANo.2

>コードの書き方、仕方がわかりません。
結果はA1:A5のデーターがD列以降100列、並ぶだけですよ
Sub Test()
  Dim i As Long
  'A1:A5範囲を降順に並べ替え
  Range("A1:A5").Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlNo
  For i = 1 To 100
    Range("A1:A5").Copy Range("C1")
    Columns(2).Insert
  Next
End Sub

投稿日時 - 2018-11-28 15:14:14

ANo.1

結果内容的には、
C1からC5にコピー(貼り付け)された後、
C1からC5のセルのデータをCX1からCX5まで張り付けたのと同じ結果ではないのでしょうか?

投稿日時 - 2018-11-28 14:05:39

あなたにオススメの質問