私はVBAプログラミングの初心者ですので、ここで助けが必要です。あるシートから別のシートにデータをコピーするマクロを作成する必要があります。だから私がやったのは、マクロレコーダーを使って、コピー/ペーストしなければならないステップにマクロを記録することです。今私は必要なすべての情報のためにそれを行うループを作成する必要があります。VBAループを使用してシート間でデータをコピーする
ここにデータが含まれているシートのスクリーンショットです:ここ
は、データが貼り付けされなければならないシートのスクリーンショットです:
だから、話ができます私のレポートに含まれているデータ。私は自分の会社が働いている国々について毎月の報告をしています。毎月、私はいくつかの予測があります。それはデータベースにアップロードする必要があります。私はループを開始する方法を知らない
Sub manual_upload()
Sheets("Forecast").Select
Range("G1").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Sheets("Upload").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Sheets("Forecast").Select
'ActiveWindow.ScrollColumn = 2
'ActiveWindow.ScrollColumn = 1
Range("C2").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Upload").Select
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A2").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 1).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown
'Selection.AutoFill Destination:=Range("B2:B31")
'Range("B2:B31").Select
Sheets("Forecast").Select
Range("E2").Select
Selection.Copy
Sheets("Upload").Select
Range("C2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("b2").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 1).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown
'Selection.AutoFill Destination:=Range("C2:C31")
'Range("C2:C31").Select
Sheets("Forecast").Select
Range("B2").Select
Selection.Copy
Sheets("Upload").Select
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("c2").Select
Selection.End(xlDown).Select
ActiveCell.Offset(0, 1).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.FillDown
'Selection.AutoFill Destination:=Range("D2:D31")
'Range("D2:D31").Select
Range("E2").Select
Sheets("Forecast").Select
Range("G2").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Sheets("Upload").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Sheets("Forecast").Select
Range("D2").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Upload").Select
Range("F2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("F2:F31")
Range("F2:F31").Select
'next i
End Sub
:ここ
は私が既に持っているコードです。様々なデータの追加が必要です。 私はあなたの助けに感謝します。データはすべて1枚(データが異なるシートである場合は、同じ構造の複数のクエリのマージを使用することができます)であればここで
は予測全体で多くの列があるかに応じて、私はPowerqueryを使用してについて考えることをお勧め。基本的な手順は次のとおりです。投稿された画像1のようにソースデータをテーブルとして設定し、パワーテーブルでそのテーブルを選択し(テーブルからのクエリ)、保持したいカラムの名前を変更し、すべての日付列を強調表示し、変換タブから列をピボット解除する(または右クリックする)。次にシートを閉じてシートにロードします。 – QHarr
あなたの説明は断ち切られましたか?あなたは、どのようにフィールドが所望の結果で満たされるか説明しません。 * Dashboard *、* Forecast *とは何ですか?それ以外は溶融プロセスのように見えます。 Python pandas/R/SASのようなプログラム/言語を保持するデータセットはそれに応じて変形することができます。 – Parfait