これで、同じ名前を持つすべてのワークシートを選択し、ブック内の特定のシートの前に移動するマクロを完成させようとしています。ユーザーは、これらの名前を持つページをいくつでも追加できます。そのため、配列関数を使用して移動することはできません。これは私がこれまで持っているものです:ブック内の同じ名前のページを移動する
あなたが使用することSub Copier()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Dim x As Integer
x = InputBox("Enter Number of Additional Features")
For numtimes = 1 To x
ActiveWorkbook.Sheets(Array("Data Collection", "Findings", "Visual Findings")).Copy _
Before:=ActiveWorkbook.Sheets("Final Results")
'Allows user to create as many pages as necessary
Dim ws As Worksheet, flg As Boolean
For Each ws In Worksheets
If (ws.Name) Like "*Data Collection*" Then
ws.Select Not flg
flg = True
End If
Next
'Selects all sheets for "Data Collection"
'Now I need to move all of those selected before a certain sheet at the
beginning of the workbook
'I cant seperate the copy functions because some formulas from data collection have to carry
over to the other copied sheets
'Sheet2.Activate
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
どのようにして、「類似名」を定義していますか? 「ビジュアルファインディング」と同様の「ファインディング」?おそらく、他のすべてのシートの後に特定のページ(「最終結果」?)*を追加したいと言ったほうがよいでしょうか? – BruceWayne
ユーザーが作成したデータ収集ページは、レポートの先頭近くに移動する必要があります。作成されたページの前後に他のページがあります。すべてのデータ収集ページを最初に誘導しようとしているので、ユーザーはレポート全体を調べなくてもそれらを記入できます。 –