Excel VBA質問箱 IV

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

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


27 / 13292 ツリー ←次へ | 前へ→

【80701】For Next ついてお願いします 初心者 19/4/17(水) 11:21 質問[未読]
【80702】Re:For Next ついてお願いします [名前なし] 19/4/17(水) 12:22 回答[未読]
【80704】Re:For Next ついてお願いします 初心者 19/4/17(水) 14:02 お礼[未読]
【80706】Re:For Next ついてお願いします マナ 19/4/17(水) 18:49 発言[未読]
【80708】Re:For Next ついてお願いします 初心者 19/4/18(木) 9:04 お礼[未読]

【80701】For Next ついてお願いします
質問  初心者  - 19/4/17(水) 11:21 -

引用なし
パスワード
   B8とC8をB9C9からB30C30まで貼り付けたいのですが
出来ずに困っています。
よろしくお願いします

Sub Macro1()
'
'
'Dim i As long

For i = 9 To 30

  Range("B8:C8").Select
  Selection.Copy
  Range("B9").Select
  ActiveSheet.Paste
  Application.CutCopyMode = False
  
  
  Next
  
End Sub

【80702】Re:For Next ついてお願いします
回答  [名前なし]  - 19/4/17(水) 12:22 -

引用なし
パスワード
   ▼初心者 さん:
>B8とC8をB9C9からB30C30まで貼り付けたいのですが
>出来ずに困っています。
>よろしくお願いします
>
>Sub Macro1()
>'
>'
>'Dim i As long
>
> For i = 9 To 30
>
>  Range("B8:C8").Select
>  Selection.Copy
>  Range("B9").Select
>  ActiveSheet.Paste
>  Application.CutCopyMode = False
>  
>  
>  Next
>  
>End Sub

>  Range("B9").Select

常にB9を選択しています。
下に進むには"B9"を"B"+CStr(i)に変更する必要があります。

【80704】Re:For Next ついてお願いします
お礼  初心者  - 19/4/17(水) 14:02 -

引用なし
パスワード
   ありがとうございました

【80706】Re:For Next ついてお願いします
発言  マナ  - 19/4/17(水) 18:49 -

引用なし
パスワード
   ▼初心者 さん:
>B8とC8をB9C9からB30C30まで貼り付けたいのですが
>出来ずに困っています。

もう見ていないかもしれませんが…

手操作だと、1行ずつ何回も貼り付けを繰り返しませんよね。
B9:C30を選択して1回で貼り付けると思います。

マクロでも同じですよ。

Sub test()

  Range("B8:C8").Select
  Selection.Copy
  Range("B9:C30").Select
  ActiveSheet.Paste
  Application.CutCopyMode = False

End Sub

で、マクロだとセルを選択する必要はないので
シンプルに、こんな記述にします。


Sub test2()

  Range("B8:C8").Copy Range("B9:C30")

End Sub

【80708】Re:For Next ついてお願いします
お礼  初心者  - 19/4/18(木) 9:04 -

引用なし
パスワード
   マナさん 

ありがとうございます。
おっしゃる方法はわかった上で
Next forの方法を知りたくて
質問しました。

▼マナ さん:
>▼初心者 さん:
>>B8とC8をB9C9からB30C30まで貼り付けたいのですが
>>出来ずに困っています。
>
>もう見ていないかもしれませんが…
>
>手操作だと、1行ずつ何回も貼り付けを繰り返しませんよね。
>B9:C30を選択して1回で貼り付けると思います。
>
>マクロでも同じですよ。
>
>Sub test()
>
>  Range("B8:C8").Select
>  Selection.Copy
>  Range("B9:C30").Select
>  ActiveSheet.Paste
>  Application.CutCopyMode = False
>
>End Sub
>
>で、マクロだとセルを選択する必要はないので
>シンプルに、こんな記述にします。
>
>
>Sub test2()
>
>  Range("B8:C8").Copy Range("B9:C30")
>
>End Sub

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