Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9171 / 13644 ツリー ←次へ | 前へ→

【28960】移動のマクロ 道草少年 05/9/19(月) 18:41 質問[未読]
【28961】Re:移動のマクロ かみちゃん 05/9/19(月) 18:48 発言[未読]
【28964】Re:移動のマクロ 道草少年 05/9/19(月) 19:49 発言[未読]
【28965】Re:移動のマクロ かみちゃん 05/9/19(月) 19:58 回答[未読]
【28966】Re:移動のマクロ 道草少年 05/9/19(月) 20:02 お礼[未読]

【28960】移動のマクロ
質問  道草少年  - 05/9/19(月) 18:41 -

引用なし
パスワード
   エクセルマクロ初心者です。
事務仕事をしているのですが、大量のセルの移動についてのマクロを考えています。
単純なのですが、雑誌等でも見つけられず困っています。
たとえば、
B3のセルをC2に移動
B6のセルをC5に移動



Bのセルががなくなるまで移動するものです。
よろしくお教えください。

【28961】Re:移動のマクロ
発言  かみちゃん  - 05/9/19(月) 18:48 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>B3のセルをC2に移動
>B6のセルをC5に移動
>Bのセルががなくなるまで移動するものです。

確認させてください。
B3を開始セルとし、B列の3行ごと(3行目、6行目、9行目・・・・)に
右に1列、上に1行のセルに移動したいということでしょうか?
それらのセルは、数式はあるのですか?
罫線など書式は設定してあるりのでしょうか?あれば、どうするのですか?
それとも値だけ移動ですか?
移動先のセルにすでに値がある場合は、無条件に上書きしていいのでしょうか?

【28964】Re:移動のマクロ
発言  道草少年  - 05/9/19(月) 19:49 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>B3のセルをC2に移動
>>B6のセルをC5に移動
>>Bのセルががなくなるまで移動するものです。
>
>確認させてください。
>B3を開始セルとし、B列の3行ごと(3行目、6行目、9行目・・・・)に
>右に1列、上に1行のセルに移動したいということでしょうか?
>それらのセルは、数式はあるのですか?
>罫線など書式は設定してあるりのでしょうか?あれば、どうするのですか?
>それとも値だけ移動ですか?
>移動先のセルにすでに値がある場合は、無条件に上書きしていいのでしょうか?

早いお返事ありがとうございます。
そうですね、書式や上書きまでは考えていませんでした。
数式はありません。住所などのデータですので、値だけ移動です。
表なので元の罫線は残るとありがたいです。上書きしてもかまいません。
助かります。

【28965】Re:移動のマクロ
回答  かみちゃん  - 05/9/19(月) 19:58 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>数式はありません。住所などのデータですので、値だけ移動です。
>表なので元の罫線は残るとありがたいです。上書きしてもかまいません。

B3を開始セルとし、B列の3行ごと(3行目、6行目、9行目・・・・)に
右に1列、上に1行のセルに移動したいということであれば、以下のような感じになるかと思います。

Sub Macro1()
 Dim RowNo As Long
 
 For RowNo = 3 To 65536 Step 3
  With Cells(RowNo, 2)
   If .Value = "" Then Exit For
   .Offset(-1, 1).Value = .Value
   .ClearContents
  End With
 Next
End Sub

【28966】Re:移動のマクロ
お礼  道草少年  - 05/9/19(月) 20:02 -

引用なし
パスワード
   ▼かみちゃん さん:
>Sub Macro1()
> Dim RowNo As Long
> 
> For RowNo = 3 To 65536 Step 3
>  With Cells(RowNo, 2)
>   If .Value = "" Then Exit For
>   .Offset(-1, 1).Value = .Value
>   .ClearContents
>  End With
> Next
>End Sub

ありがとうございます!
やりたいことは単純なのに知らない文字(?)がたくさんで…。
マクロって奥深いですね。
ほんとにありがとうございました。

9171 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free