No.5ベストアンサー
- 回答日時:
以下のマクロを登録し、実行してください。
(標準モジュールへ登録)---------------------------------------------------------
Option Explicit
'sheet2以降のデータを先頭のシートにまとめる
Dim sh1 As Worksheet 'sheet1
Dim row1 As Long 'sheet1の行
Public Sub Macro1()
Dim i
Set sh1 = Worksheets("sheet1")
row1 = 1
'全シート分繰り返す
For i = 2 To Worksheets.Count
GetData (i)
Next
MsgBox ("処理完了")
End Sub
'1シート分の集計
Public Sub GetData(ByVal sheetno As Long)
Dim sh As Worksheet
Dim i As Long
Set sh = Worksheets(sheetno)
i = 1
'人数分繰り返し
Do While True
If sh.Cells(i, 1) = "" Then Exit Do '番号が空白なら終了
sh1.Cells(row1, 1) = sh.Cells(i, 1) '番号
sh1.Cells(row1, 2) = sh.Cells(i + 1, 1) '名前
sh1.Cells(row1, 3) = sh.Cells(i + 1, 5) 'データ13
sh1.Cells(row1, 4) = sh.Cells(i + 1, 6) 'データ13
row1 = row1 + 1
i = i + 8
Loop
End Sub
----------------------------------------------
実行時には以下の条件が成立している必要があります。
まとめ用のシート名は"sheet1"であること
sheet1は必ず、一番左側のシートであること。
マクロを実行すると、sheet1の右側のシートを順番に処理し、sheet1へ書き込んでいきます。
ご回答、まことにありがとうございます。
早速ご提案いただいたマクロを実行してみましたところ
思ったとおりの動作がなされました。
1秒足らずで処理も終わりました!
今からマクロの内容を確認し、自分でも組めるよう理解しようと思います。
今回は数日にわたりありがとうございました。
また何かありましたら、よろしくお願いいたします。
こちらのご回答、ベストアンサーにさせていただきます。
No.4
- 回答日時:
No2です。
>各シート見出し行は現状ありますが削除予定です。
20シートありますので、もし大変なら、見出し行は、削除せず、そのままでも構いません。
但し、その場合は、提示された行の情報が違ってくるので、見出しがある場合の、各データ行の情報を
再度、提示していただくことになります。(見出し行が1行かもしれないし、5行かもしれませんので・・)
くどくど、質問をしているのは、正確な情報がないと、正しいマクロが作成できない為です。ご理解ください。
返答が遅くなり申し訳ありません。
いえいえ、とんでもございません。
こちらもきちんと情報が提示できず申し訳ありません。
追加質問1についてですがそちらはご提示いただいた内容に間違いありません。
最後の人まで同じような形になっております。
追加質問2についてですが、そちらも同じくご提示いただいた
2行目、10行目、18行目・・・と続く行のE列F列になります。
また見出しに関してですが、すでに作業グループで一括削除いたしましたので
問題ないかと思われます。
お手数おかけして申し訳ありません、よろしくお願いいたします。
No.3
- 回答日時:
No2です。
追加質問1:
A列 B列 C列 ・ ・ ・ J列
1行 番号 データ1 データ2 ・ ・ データ9
2行 名前 データ10 ・
3行 空白 ・
4行 空白 ・
5行 空白 ・
6行 空白 ・
7行 空白 ・
8行 空白 データ64 ・ ・ ・ ・ データ72
の次のデータは
9行 番号 データ1 データ2 ・ ・ データ9
10行 名前 データ10 ・
11行 空白 ・
12行 空白 ・
13行 空白 ・
14行 空白 ・
15行 空白 ・
16行 空白 データ64 ・ ・ ・ ・ データ72
となっていますか?
追加質問2:
念のための確認ですが、
データ13は、名前のある行(2行,10行)のE列
データ14は、名前のある行(2行,10行)のF列
で間違いないですか。
No.2
- 回答日時:
No1です。
質問2の(約1300×2=2600行のデータとなる)は
(約1300×1=1300行のデータとなる)・・・の誤りです。失礼しました。
あと、念の為、確認しますが、各シート及びまとめ用シートは、見出し行はないですね。
返答が遅れてしまい申し訳ありません。
いろいろと省略してしまい申し訳ありません。
具体的にしますと
質問1 実際の表は以下のようになっています
A列 B列 C列 ・ ・ ・ J列
1行 番号 データ1 データ2 ・ ・ データ9
2行 名前 データ10 ・
3行 空白 ・
4行 空白 ・
5行 空白 ・
6行 空白 ・
7行 空白 ・
8行 空白 データ64 ・ ・ ・ ・ データ72
A列の名前と空白は結合セルとなっています。
データはB~J列、1~8行の72マスに入っています。
これを
番号 名前 データ13 データ14
といった1300行の表にまとめたいとかんがえてます。
質問2
はい、作成も配置も可能です。
まとめようのシートもご提案頂いた形が理想です。
各シート見出し行は現状ありますが削除予定です。
まとめシートは一切空白の状態です。
お時間ありましたら、ご回答の程、よろしくお願いいたします。
No.1
- 回答日時:
補足要求です。
質問1
各シートに60人前後のデータがありますが、その行、列はどうなっていますか?
A列 B列 C列
1行 番号 データ1 データ3
2行 名前 データ2 データ4
3行 番号 データ1 データ2
4行 名前 データ3 データ4
と理解して良いですか。また、A列の行で歯抜けはないですか。(A列の空白のセルの1つ前の行が最後の名前ですか?)
質問2
これをひとつのシートにまとめますが、そのシートは既に存在しますか。
存在するなら、一番左端にそのシートを置くことはできますか。
(つまり、一番左端が、まとめのシートで、その右側の全てのシートが60人前後の各シートのようになる)
また、まとめようのシートは
A列 B列 C列 D列
1行 番号 名前 データ1 データ4
2行 番号 名前 データ1 データ4
と理解して良いですか。(約1300×2=2600行のデータとなる)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- Visual Basic(VBA) vbaについて 主に以下のような設定をしたいです。 Aブックの表の行数が20未満だったら Bブックの 1 2023/06/08 23:40
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Visual Basic(VBA) マクロについて教えてください。 1 2023/06/09 13:17
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Excel(エクセル) エクセルシートのデータを1列飛ばしで別ブックのシートに貼り付けるマクロが知りたい 2 2023/06/05 22:37
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelでシートの違うデータでグ...
-
エクセルファイルのシート毎の容量
-
複数シートからデータを拾って...
-
シート削除して同名シート追加...
-
excelの不要な行の削除ができな...
-
Excelで日付変更ごとに、自動的...
-
時間帯の重複を除いた集計について
-
EXCEL 複数行のデータを1行にま...
-
エクセル 縦に長い表の印刷時...
-
VBAで CTRL+HOMEの位置へ移動...
-
他のシートの一番下の行データ...
-
別々のシートの表をピボットテ...
-
Excel 売上管理シートに入力し...
-
トランジスタの選び方
-
EXCELのマクロに詳しい方 教え...
-
CMOS-IC CD4007UBEのnmosfetの...
-
エクセル VBA VLOOKUP
-
エクセルのカメラ機能について
-
【エクセル」 特定のセルで条件...
-
エクセルで複数の条件を抽出し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルファイルのシート毎の容量
-
複数シートからデータを拾って...
-
Excelでシートの違うデータでグ...
-
シート削除して同名シート追加...
-
Excelで日付変更ごとに、自動的...
-
excelの不要な行の削除ができな...
-
VBAで CTRL+HOMEの位置へ移動...
-
(VBAにて)日付でデータを抽出す...
-
EXCELで2つのファイルから重複...
-
他のシートの一番下の行データ...
-
エクセルのカメラ機能について
-
トランジスタの選び方
-
別々のシートの表をピボットテ...
-
エクセル 縦に長い表の印刷時...
-
EXCEL 複数行のデータを1行にま...
-
【エクセル」 特定のセルで条件...
-
オートフィルタで抽出したデー...
-
Excel 売上管理シートに入力し...
-
エクセル VBA VLOOKUP
-
EXCEL の表を一行ずつシートに...
おすすめ情報