Excel VBA質問箱 IV

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

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


44216 / 76732 ←次へ | 前へ→

【37537】1行目から6行目の作業を1つに…。
質問  Cuore=Tane  - 06/5/10(水) 21:58 -

引用なし
パスワード
   これを何とか1つにまとめられませんか?

Dimにはa,b,c,dを指定(形はすべてLong)

'1行目
  For a = 9 To 28
    If a > Worksheets.Count Then Exit For
      For b = 0 To 34 Step 5
        Sheets(a).Select
        Range("A6:E10").Offset(, b).Select
        Selection.Copy
        Sheets("日程表データベース").Select
        Range("D3").Offset(, a * 10 - 90).Select
        Selection.Offset(b).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
          :=False, Transpose:=False
      Next b
      
'2行目
      For b = 0 To 34 Step 5
        Sheets(a).Select
        Range("A12:E16").Offset(, b).Select
        Selection.Copy
        Sheets("日程表データベース").Select
        Range("D38").Offset(, a * 10 - 90).Select
        Selection.Offset(b).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
          :=False, Transpose:=False
      Next b
      
'3行目
      For b = 0 To 34 Step 5
        Sheets(a).Select
        Range("A18:E22").Offset(, b).Select
        Selection.Copy
        Sheets("日程表データベース").Select
        Range("D73").Offset(, a * 10 - 90).Select
        Selection.Offset(b).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
          :=False, Transpose:=False
      Next b

'4行目
      For b = 0 To 34 Step 5
        Sheets(a).Select
        Range("A24:E28").Offset(, b).Select
        Selection.Copy
        Sheets("日程表データベース").Select
        Range("D108").Offset(, a * 10 - 90).Select
        Selection.Offset(b).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
          :=False, Transpose:=False
      Next b

'5行目
      For b = 0 To 34 Step 5
        Sheets(a).Select
        Range("A30:E34").Offset(, b).Select
        Selection.Copy
        Sheets("日程表データベース").Select
        Range("D143").Offset(, a * 10 - 90).Select
        Selection.Offset(b).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
          :=False, Transpose:=False
      Next b

'6行目
      For b = 0 To 34 Step 5
        Sheets(a).Select
        Range("A36:E40").Offset(, b).Select
        Selection.Copy
        Sheets("日程表データベース").Select
        Range("D178").Offset(, a * 10 - 90).Select
        Selection.Offset(b).Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
          :=False, Transpose:=False
      Next b
        Application.CutCopyMode = False
        Sheets("日程表データベース").Select
        Range("A3").Select
  Next a

同じような作業なのですが、範囲が若干違うので、これを何とか1つにまとめられる方法がわかる方がいましたら、お願いいたします。m(_ _)m

0 hits

【37537】1行目から6行目の作業を1つに…。 Cuore=Tane 06/5/10(水) 21:58 質問
【37539】Re:1行目から6行目の作業を1つに…。 ゆみ 06/5/10(水) 22:50 発言
【37544】Re:1行目から6行目の作業を1つに…。 とまと 06/5/11(木) 8:15 回答
【37721】Re:1行目から6行目の作業を1つに…。 Cuore=Tane 06/5/16(火) 19:23 お礼
【37949】Re:1行目から6行目の作業を1つに…。 Cuore=Tane 06/5/24(水) 6:13 お礼

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