過去ログ

                                Page     259
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼2枚目以降のシートのデータをコピーする  marinoa 02/10/26(土) 18:07
   ┗Re:2枚目以降のシートのデータをコピーする  りん 02/10/27(日) 13:53

 ───────────────────────────────────────
 ■題名 : 2枚目以降のシートのデータをコピーする
 ■名前 : marinoa
 ■日付 : 02/10/26(土) 18:07
 -------------------------------------------------------------------------
   以前にもこのような質問をしたのですが、完全に忘れてしまったので、また質問します。
一番手前のシートに2枚目以降のデータをコピーしてもってきたいのですが、
コピーするデータがA1からA3までとB3からB7までというように範囲選択するとうまくいきません。2枚目以降のデータは同じセルにデータがはいってるので、データはとりやすいのですが、それを1枚目にコピーペーストでひらっていこうとすると、うまくいかないのでおしえてください。
 ───────────────────────────────────────  ■題名 : Re:2枚目以降のシートのデータをコピーする  ■名前 : りん <rin_doggie@hotmail.com>  ■日付 : 02/10/27(日) 13:53  -------------------------------------------------------------------------
   marinoa さん、こんにちわ。

>一番手前のシートに2枚目以降のデータをコピーしてもってきたいのですが、

 1枚めのどこに貼り付けるとか、値だけでいいとか、そういう指示もないようなので、一例。

Sub Macro1()
  Dim ws1 As Worksheet, ws2 As Worksheet
  Dim CC%, NN%
  '
  With ActiveWorkbook
    If .Worksheets.Count > 1 Then
      Set ws1 = .Worksheets(1)
      For NN% = 2 To .Worksheets.Count
        Set ws2 = .Worksheets(NN%)
        CC% = CC% + 1
        '2,3,4
        ws2.Range("A1:A3").Copy Destination:=ws1.Cells(2, CC%)
        '5,6,7,8,9
        ws2.Range("B3:B7").Copy Destination:=ws1.Cells(5, CC%)
      Next
    End If
    Set ws1 = Nothing: Set ws2 = Nothing
  End With
End Sub

こんな感じです。
データは2行目から9行目まで、列はシートの数だけ横に並びます。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 259