私は一連の他のマクロを実行するマクロを持っています。特定のセル(B1)の値を変更すると、マクロが自動的に実行されます。マクロは、B1で指定されたプロジェクト番号のプロジェクトレポートを生成します。私はいつでも約75のアクティブなプロジェクトを持っています。マクロを実行する変数のリスト
私がしたいのは、プロジェクトのリストをブックに追加して、各値を実行することです。値と値の数は毎週変わるので、値をマクロにハードコーディングする必要はありません。私はループ関数を使用すると仮定していますが、それについてどうやって行くのかは特定できません。
現在のマクロのための私のコードは次のとおりです。事前に
Sub AA_RunAll()
Application.ScreenUpdating = False
ActiveWorkbook.RefreshAll
DoEvents
Call OpenFile
Call Copy1
Call DeleteRows1
Call DeleteRows2
Call DetailCopy
Call RemoveEmptySheets
Call SummarySheet
Workbooks("Project WIP Template.xlsm").Worksheets("Summary").Activate
Application.Goto Range("A1"), True
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Call SaveAs
Workbooks("Project WIP V5.xlsm").Worksheets("Summary").Activate
Range("b1").Select
MsgBox "Report Complete"
End Sub
おかげ
この質問はあまり明確ではありません。これらのさまざまなマクロ( 'DetailCopy'など)は、あなたの質問にあるこれらの不特定の"値 "をどうやって得るのでしょうか?あなたは何らかのループが必要であることを知っているようです。詳細の欠如を考えると、それ以上のことは言い難い。おそらく、マクロを書き換えてパラメータを取ってから、ループ内のマクロを呼び出して値を1つずつ渡す必要があります。 –
いくつかの質問:プロジェクトリストの取得元(このリストを生成するもの)、このリストに関連付けられている情報、プロジェクトリスト(バージョン管理など)に重複があり、ループの意図は何ですか?具体的には、リストがありますが、ループしていますが、どのような成果/成果(プロジェクトレポートはあなたにとって個人的ですが、私たちにとってはそうではありません)ですか? – Cyril
プロジェクトリストは現在、別のワークブックに保存されていますが、既存のワークブックに追加できます。プロジェクトリストに重複する値はありません。 ループの面では、それは正しい関数ではないかもしれません、私の前提です。本質的に、今私は手動でプロジェクト番号を入力していますB1です。私がenterを押すと、すぐにマクロが実行され、プロジェクトレポートが生成され、閉じられ、別のプロジェクト番号を入力できるテンプレートに戻ります。 – acoatta