Excel VBA質問箱 IV

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

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


1649 / 13646 ツリー ←次へ | 前へ→

【72879】複数のシートのデータをまとめたい おにこ 12/9/28(金) 11:39 質問[未読]
【72880】Re:複数のシートのデータをまとめたい UO3 12/9/28(金) 11:48 発言[未読]
【72884】Re:複数のシートのデータをまとめたい おにこ 12/9/28(金) 13:03 回答[未読]
【72881】Re:複数のシートのデータをまとめたい kanabun 12/9/28(金) 11:57 発言[未読]
【72885】Re:複数のシートのデータをまとめたい おにこ 12/9/28(金) 13:04 回答[未読]

【72879】複数のシートのデータをまとめたい
質問  おにこ  - 12/9/28(金) 11:39 -

引用なし
パスワード
   複数のシートがあり必要な値がそれぞれのシートのG列に記載されています。

それぞれの結果を一つのシートにまとめたいです。

シート名はよく変わるので、左から何枚目のシートなどと指定したいです。

<例>
左から3枚目のシートのG列の値:まとめのシートのC列に転記
左から4枚目のシートのG列の値:まとめのシートのD列に転記
左から5枚目のシートのG列の値:まとめのシートのE列に転記

お知恵を貸してください。

【72880】Re:複数のシートのデータをまとめたい
発言  UO3  - 12/9/28(金) 11:48 -

引用なし
パスワード
   ▼おにこ さん:

処理効率はあまり考慮していませんが、一例です。

Sub Sample()
  Dim shT As Worksheet
  Dim x As Long
  
  Set shT = Sheets("まとめシート")
  For x = 3 To 5
    Sheets(x).Columns("G").Copy shT.Cells(1, x)
  Next
  
End Sub

【72881】Re:複数のシートのデータをまとめたい
発言  kanabun  - 12/9/28(金) 11:57 -

引用なし
パスワード
   ▼おにこ さん:
><例>
>左から3枚目のシートのG列の値:まとめのシートのC列に転記
>左から4枚目のシートのG列の値:まとめのシートのD列に転記
>左から5枚目のシートのG列の値:まとめのシートのE列に転記

左からi枚目のシート は Worksheets(i) です。
C列は Columns(3) です。

Sub 例()
  Dim i As Long
  For i = 3 To 5
    Worksheets(i).Columns("G").Copy _
    Worksheets("まとめ").Columns(i)
  Next
End Sub

【72884】Re:複数のシートのデータをまとめたい
回答  おにこ  - 12/9/28(金) 13:03 -

引用なし
パスワード
   ▼UO3 さん:こんにちは

マクロの記録で作成していて
とんでもない長さになっていたので
こんなに簡潔に記載してくださって
驚きました。
早急に回答していただき本当にありがとうございます。


>▼おにこ さん:
>
>処理効率はあまり考慮していませんが、一例です。
>
>Sub Sample()
>  Dim shT As Worksheet
>  Dim x As Long
>  
>  Set shT = Sheets("まとめシート")
>  For x = 3 To 5
>    Sheets(x).Columns("G").Copy shT.Cells(1, x)
>  Next
>  
>End Sub

【72885】Re:複数のシートのデータをまとめたい
回答  おにこ  - 12/9/28(金) 13:04 -

引用なし
パスワード
   ▼kanabun さん:こんにちは
早急に回答していただき、本当にありがとうございます。
kanabunさんの説明がいつもとても勉強になります。


>▼おにこ さん:
>><例>
>>左から3枚目のシートのG列の値:まとめのシートのC列に転記
>>左から4枚目のシートのG列の値:まとめのシートのD列に転記
>>左から5枚目のシートのG列の値:まとめのシートのE列に転記
>
>左からi枚目のシート は Worksheets(i) です。
>C列は Columns(3) です。
>
>Sub 例()
>  Dim i As Long
>  For i = 3 To 5
>    Worksheets(i).Columns("G").Copy _
>    Worksheets("まとめ").Columns(i)
>  Next
>End Sub

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