[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『4列にあるデータを別シートに1行で表示させる方法』(ウッド)
4列にあるデータを
A1B1C1D1
A2B2C2D2
A3B3C3D3
A4B4C4D3
↓
A1B1C1D1A2B2C2D2A3B3C3D3A4B4C4D4
と別のシートに表示させるために関数などを使った効率のよい方法はありますでしょうか。
今は行ごとにコピー&貼り付けをしている状態ですが、データが3000件あり、この作業だと時間がかかるため、時間短縮を図りたいのが目的です。
< 使用 Excel:2013、使用 OS:WIN10 >
3000件を繋いで、A1に全部入れるということでしょうか?
それとも、A1〜A12000に入れるということでしょうか?
(パオ〜〜ン) 2017/06/09(金) 08:56
返信ありがとうございます。
列ABCDEFG•••••••にいれていきたいと思います。
(ウッド) 2017/06/10(土) 09:17
Option Explicit
Sub Smaple()
Dim S1 As Worksheet Dim S2 As Worksheet Dim I As Long Dim J As Long
Set S1 = Sheets("Sheet1") 'Sheet1 を S1と表します Set S2 = Sheets("Sheet2") 'Sheet2 を S2と表します。
For I = 1 To S1.Range("A" & Rows.Count).End(xlUp).Row 'Iを1からSheet1のA列の最後の数時まで1づつ増やして繰り返す For J = 1 To 4 'Jを1から4まで1づつ増やしてNext Jまで繰り返す S2.Cells(1, (I - 1) * 4 + J).Value = S1.Cells(I, J).Value 'Sheet1のI行J列めの値をSheet2の1行目、(I-1)*4+J列目に入れtル Next J Next I End Sub
(パオ〜〜ン) 2017/06/12(月) 09:17
データがSheet1のA1から始まって、Sheet2の一行目に出力
Sub test() Dim x As String, i As Long With Sheets("sheet1").Range("a1").CurrentRegion For i = 1 To .Columns.Count x = x & "&" & .Columns(i).Address Next Sheets("sheet2").Cells(1).Resize(, .Rows.Count).Value = _ Application.Transpose(.Parent.Evaluate(Mid$(x, 2))) End With End Sub (seiya) 2017/06/12(月) 10:47
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.