No.2ベストアンサー
- 回答日時:
こんな形でやってみました。
'--------------------------------------------------------
Option Explicit
Sub Tenki2()
'変数宣言とセット
Dim Ws1 As Worksheet, Ws2 As Worksheet
Dim r As Long, k As Long
Dim Midashi(4) As Variant, myData(4) As Variant
Dim TgtRow As Long
Set Ws1 = Worksheets(1)
Set Ws2 = Worksheets(2)
TgtRow = 2 'Sheet2の転記先は2行目から開始
'見出し行を格納
For k = 0 To 4
Midashi(k) = Ws1.Cells(1, k + 1)
Next k
Application.ScreenUpdating = False
'Sheet1のデータを上から下にループ
With Ws1
r = 2
Do While .Cells(r, 1).Value <> ""
For k = 0 To 4 'その行のデータをmyDataに格納
myData(k) = .Cells(r, k + 1)
Next k
For k = LBound(myData) To UBound(myData) 'Sheet2で、縦に転記
Ws2.Cells(TgtRow + k, 1).Value = Midashi(k)
Ws2.Cells(TgtRow + k, 2).Value = myData(k)
Next k
TgtRow = Ws2.Cells(Rows.Count, 1).End(xlUp).Row + 2 '次の転記開始行
r = r + 1
If r Mod 500 = 0 Then Application.StatusBar = r
Loop
End With
Application.StatusBar = ""
Application.ScreenUpdating = True
Ws2.Select
MsgBox "End."
End Sub
No.3
- 回答日時:
ほとんど数式(^^;
Sub Sheet2へ転記する()
Application.ScreenUpdating = False
Dim 最終行 As Long
最終行 = Worksheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
Worksheets("Sheet2").Range("A:B").ClearContents
With Worksheets("Sheet2").Range("A2:A" & 最終行 * 6 - 6)
.FormulaR1C1 = "=IF(MOD(ROW(),6)=1,"""",INDEX(Sheet1!R1,MOD(ROW()-2,6)+1))"
.Value = .Value
.Offset(, 1).FormulaR1C1 = _
"=IF(RC[-1]="""","""",INDEX(Sheet1!C[-1]:C[3],(ROW()-2)/6+2,MOD(ROW()-2,6)+1))"
.Offset(, 1).Value = .Offset(, 1).Value
End With
Application.ScreenUpdating = True
End Sub
No.1
- 回答日時:
こんにちは!
一例です。
標準モジュールにしてください。
Sub Sample1()
Dim lastRow As Long, wS As Worksheet, myRng As Range
Set wS = Worksheets("Sheet1")
lastRow = wS.Cells(Rows.Count, "A").End(xlUp).Row
Application.ScreenUpdating = False
With Worksheets("Sheet2")
.Range("A:B").ClearContents
Range(.Cells(2, "A"), .Cells((lastRow - 1) * 6, "A")).Formula = _
"=INDEX(Sheet1!A$1:F$1,,IF(MOD(ROW(C7),6)=0,"""",MOD(ROW(C7),6)))"
Range(.Cells(2, "B"), .Cells((lastRow - 1) * 6, "B")).Formula = _
"=INDEX(Sheet1!A:F,INT(ROW(A1)/6)+2,MOD(ROW(A1),6))"
With .Range("A:B")
.Value = .Value
End With
lastRow = .Cells(Rows.Count, "A").End(xlUp).Row
.Range("A1") = "ダミー"
.Range("A1").AutoFilter field:=1, Criteria1:="#VALUE!"
Range(.Cells(2, "A"), .Cells(lastRow, "B")).SpecialCells(xlCellTypeVisible).ClearContents
.AutoFilterMode = False
.Range("A1").ClearContents
End With
Application.ScreenUpdating = True
MsgBox "完了"
※ 1行ずつループすると相当の時間を要すると思いますので、
別の方法でやってみました。
こんな感じではどうでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaのvlookup関数エラー原因を教えていただけないでしょうか。 3 2022/04/25 16:16
- Excel(エクセル) 【Excel質問】別シートにある複数の同型の表から、同じ行項目にある数字を集計する 4 2023/02/16 00:14
- Visual Basic(VBA) このプログラムなんですがsheetにデータを置いて表示できるようにしてありますがsheetに101を 2 2023/02/23 20:13
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- ソフトウェア エクセル_データ処理_変化点検出について 1 2022/09/20 18:25
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Visual Basic(VBA) VBAで不特定枚数印刷をしたいです。 4 2022/08/02 07:30
- Excel(エクセル) VBAで、シート間の転記するコードを教えてください。 4 2023/03/26 10:43
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで 自動的に◯や数字を...
-
エクセルでファイルの最終更新...
-
シフト表をエクセルで作るとき...
-
Excel 2019 [オプション]の[リボンのユ...
-
Excelに詳しい方! B列が「日...
-
Excelファイルが開けません
-
excel2013 MonthDays 関数が使...
-
スプレッドシートの関数につい...
-
【マクロ】2回実行したら、エ...
-
特定の文字列を含む、住所を抽...
-
EXCELの散布図で日付が1900年に...
-
エクセルのツールバーから数値...
-
Excelで表を作ったところに文字...
-
祝日と土曜、日曜の合計をカウ...
-
Excelについて
-
【マクロ】名前を保存する際に...
-
Excel分数の表示について
-
エクセルでCtrl+Tでテーブルの...
-
マイクロソフトのPADを使ってい...
-
【EXCEL】画像の黄色部分の抽出...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
半角カタカナをヘボン式ローマ...
-
(マクロ)vlookupの元データを同...
-
エクセルで上位バイトのセルと...
-
exselの質問です
-
Excel 大小比較演算子による「...
-
Excel VBについての質問です。
-
エクセルの問題です。絶対値の...
-
非表示列の再表示に失敗
-
職場の人から聞かれており、こ...
-
Excel関数-文字列で自動作成さ...
-
Excelデータをコピペして、ペー...
-
ユーザー定義関数をアドイン登...
-
【マクロ】for next構文について
-
エクセルの日付を編集する
-
【マクロ】VLOOKUPにて参照元に...
-
exselで最小数で並び替える関数
-
libre 表計算ソフトの計算がう...
-
エクセルで表
-
エクセルの表で1年間の曜日を...
-
西暦和暦
おすすめ情報