Also ich versuche, ein Makro zu beenden, das alle Arbeitsblätter mit ähnlichen Namen auswählt und sie vor einem bestimmten Blatt in einer Arbeitsmappe verschiebt. Der Benutzer kann so viele Seiten mit diesen Namen hinzufügen, dass ich nicht einfach eine Array-Funktion verwenden könnte, um sie zu verschieben. Das ist, was ich habe, so weit:Verschieben Sie Seiten mit ähnlichen Namen in der Arbeitsmappe
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
Wie definieren Sie "Ähnliche Namen"? "Findings" ähnlich wie "Visual Findings"? Vielleicht ist es vielleicht besser gesagt, dass Sie eine bestimmte Seite ("Final Results"?) Wollen * nach * allen anderen Blättern? – BruceWayne
Die vom Benutzer erstellten Datenerfassungsseiten müssen sich dem Anfang des Berichts nähern. Es gibt andere Seiten vor und nach den erstellten Seiten, die nicht daran gebunden sind. Ich versuche, alle Datenerfassungsseiten an den Anfang zu leiten, damit meine Benutzer sie ausfüllen können, ohne den gesamten Bericht durchgehen zu müssen. –