Note: The other languages of the website are Google-translated. Back to English
Σύνδεση  \/ 
x
or
x
Εγγραφή  \/ 
x

or

Πώς να αντιγράψετε πολλά φύλλα πολλές φορές στο Excel;

Μερικές φορές, ενδέχεται να χρειαστεί να δημιουργήσουμε ένα αντίγραφο ή πολλά αντίγραφα συγκεκριμένων φύλλων εργασίας σε ένα βιβλίο εργασίας. Ακολουθούν ορισμένοι γρήγοροι τρόποι για να σας βοηθήσουν να αντιγράψετε εύκολα ένα φύλλο εργασίας ή πολλά φύλλα εργασίας πολλές φορές στο Excel.


Δημιουργήστε ένα αντίγραφο πολλαπλών φύλλων εργασίας μία φορά σε ενεργό βιβλίο εργασίας ή άλλο βιβλίο εργασίας με εντολή Μετακίνηση ή Αντιγραφή

Με την Μετακίνηση ή Αντιγραφή εντολή στο Excel, μπορείτε να κάνετε ένα αντίγραφο ενός φύλλου εργασίας, πολλαπλών ειδικών φύλλων εργασίας ή όλων των φύλλων εργασίας σε ενεργό βιβλίο εργασίας ή άλλο βιβλίο εργασίας κάθε φορά.

1. Στο συγκεκριμένο βιβλίο εργασίας όπου θα αντιγράψετε φύλλα εργασίας, επιλέξτε πολλά φύλλα εργασίας στη γραμμή καρτέλας φύλλων.
Note: Κράτημα CTRL κλειδί, μπορείτε να επιλέξετε πολλές γειτονικές καρτέλες φύλλων κάνοντας κλικ σε αυτές μία προς μία στη γραμμή καρτέλας φύλλων. κράτημα SHIFT Πλήκτρο, μπορείτε να επιλέξετε πολλές γειτονικές καρτέλες φύλλων κάνοντας κλικ στην πρώτη καρτέλα φύλλου και την τελευταία στη γραμμή καρτέλας Φύλλο.

2. Κάντε δεξί κλικ στην επιλεγμένη καρτέλα φύλλων στη γραμμή καρτέλας φύλλων και επιλέξτε Μετακίνηση ή Αντιγραφή από το μενού περιβάλλοντος. Δείτε το στιγμιότυπο οθόνης:
doc αντίγραφο πολλαπλών φύλλων 01

3. Στην Μετακίνηση ή Αντιγραφή πλαίσιο διαλόγου, προσδιορίστε τις ακόλουθες ρυθμίσεις:
(1) Προσδιορίστε το βιβλίο εργασίας προορισμού στο οποίο θα αντιγράψετε τα φύλλα εργασίας από το Να κάνετε κράτηση αναπτυσσόμενη λίστα. Μπορείτε να επιλέξετε το ενεργό βιβλίο εργασίας, ένα άλλο ανοιχτό βιβλίο εργασίας ή ένα νέο βιβλίο εργασίας όπως χρειάζεστε.
(2) Καθορίστε τη θέση των αντιγραμμένων φύλλων στη γραμμή Tab Sheet, μπορείτε να επιλέξετε μετά από όλα τα υπάρχοντα φύλλα.
(3) Έλεγχος Δημιουργήστε ένα αντίγραφο επιλογή, εάν δεν ενεργοποιήσετε αυτήν την επιλογή, τα επιλεγμένα φύλλα εργασίας θα μετακινηθούν στο βιβλίο εργασίας προορισμού.
(4) Κάντε κλικ στο OK κουμπί.

Τώρα θα κάνει μόνο ένα αντίγραφο των επιλεγμένων φύλλων εργασίας στο καθορισμένο βιβλίο εργασίας. Για να δημιουργήσετε πολλά αντίγραφα αυτών των φύλλων εργασίας, μπορείτε να επαναλάβετε τη λειτουργία πολλές φορές.

Μόνο πολλά κλικ για να δημιουργήσετε πολλά αντίγραφα πολλαπλών φύλλων εργασίας στο ενεργό βιβλίο εργασίας

Γενικά, μπορούμε να αντιγράψουμε πολλά φύλλα εργασίας με το Μετακίνηση ή Αντιγραφή δυνατότητα στο Excel. Ωστόσο, αυτή η δυνατότητα μπορεί να δημιουργήσει μόνο ένα αντίγραφο κάθε φορά. Εδώ, με το Kutools για Excel Αντιγραφή φύλλων εργασίας βοηθητικό πρόγραμμα, μπορείτε εύκολα να δημιουργήσετε όσα αντίγραφα πολλών φύλλων εργασίας χρειάζεστε στο ενεργό βιβλίο εργασίας μόνο με πολλά κλικ. Δωρεάν δοκιμή πλήρους λειτουργίας 30 ημερών!
αντίγραφο διαφημίσεων πολλαπλών φύλλων εργασίας 01

Kutools για Excel - Περιλαμβάνει περισσότερα από 300 εύχρηστα εργαλεία για το Excel. Πλήρης δωρεάν δοκιμαστική λειτουργία 30 ημερών, δεν απαιτείται πιστωτική κάρτα! Παρ'το Τώρα

Κάντε πολλά αντίγραφα ενός καθορισμένου φύλλου εργασίας σε ενεργό βιβλίο εργασίας με κωδικό VBA

Εάν θέλετε να δημιουργήσετε 10 αντίγραφα ενός καθορισμένου φύλλου εργασίας, το Μετακίνηση ή Αντιγραφή Η εντολή θα είναι χρονοβόρα και πρέπει να επαναλάβετε τη λειτουργία πολλές φορές. Αλλά με τον ακόλουθο κώδικα VBA, μπορείτε να αντιγράψετε γρήγορα το φύλλο εργασίας 10 φορές ταυτόχρονα.

1. Κρατήστε πατημένο το ALT + F11 και ανοίγει το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο παράθυρο της ενότητας.

VBA: Μετατρέψτε πολλά αντίγραφα συγκεκριμένων φύλλων εργασίας σε ενεργό βιβλίο εργασίας

Sub Copier ()
Dim x As Integer
x = InputBox("Enter number of times to copy Sheet1")
For numtimes = 1 To x
ActiveWorkbook.Sheets("Sheet1").Copy _
After:=ActiveWorkbook.Sheets("Sheet1")
Next
End Sub

Note: Στον παραπάνω κώδικα, αντικαταστήστε το "Sheet1"με το όνομα του φύλλου που θα αντιγραφεί.

3. Στη συνέχεια πατήστε F5 για να εκτελέσετε τον κωδικό, εμφανίζεται ένα πλαίσιο προτροπής που σας ρωτάει τον αριθμό των αντιγράφων φύλλων που θέλετε.

4. Στη συνέχεια κάντε κλικ στο κουμπί OK, το καθορισμένο φύλλο εργασίας έχει αντιγραφεί 100 φορές στο ενεργό βιβλίο εργασίας.


Κάντε πολλά αντίγραφα πολλαπλών φύλλων εργασίας σε ενεργό βιβλίο εργασίας με το Kutools για Excel

Παρόλο που είναι απλό να δημιουργήσετε ένα αντίγραφο πολλών φύλλων εργασίας στο Excel, εάν θέλετε να δημιουργήσετε πολλά αντίγραφα πολλών φύλλων εργασίας στο τρέχον βιβλίο εργασίας, ίσως χρειαστεί να χρησιμοποιήσετε το Μετακίνηση ή Αντιγραφή αντικείμενο εντολής ξανά και ξανά. Θέλετε να τελειώσετε με ένα κλικ; Με το Αντιγραφή φύλλων εργασίας χρησιμότητα του πρόσθετου τρίτου μέρους Kutools για Excel, μπορείτε να δημιουργήσετε πολλά αντίγραφα πολλαπλών φύλλων εργασίας με ένα κλικ στο Excel.

Kutools για Excel - Περιλαμβάνει περισσότερα από 300 εύχρηστα εργαλεία για το Excel. Πλήρης δωρεάν δοκιμαστική λειτουργία 30 ημερών, δεν απαιτείται πιστωτική κάρτα! Παρ'το Τώρα

1. Κλίκ Kutools Plus > Αντιγραφή φύλλων εργασίας. Δείτε το στιγμιότυπο οθόνης:

Note: Κάνοντας κλικ Kutools Plus > Φύλλο εργασίας > Αντιγραφή φύλλων εργασίας θα λάβει επίσης αυτήν τη δυνατότητα.

2. Εφαρμογή ρυθμίσεων στο Αντιγραφή πολλαπλών φύλλων εργασίας κουτί διαλόγου:
(1) Ελέγξτε τα φύλλα εργασίας από τα οποία θέλετε να αντιγράψετε Αντιγράψτε τα επιλεγμένα φύλλα εργασίας τμήμα.
(2) Καθορίστε Ο αριθμός των αντιγράφων.
(3) Προσδιορίστε τη θέση των αντιγραμμένων φύλλων, για παράδειγμα, πριν ή μετά από όλα τα φύλλα εργασίας, πριν ή μετά το τρέχον φύλλο εργασίας.
(4) Κάντε κλικ στο Ok κουμπί.

3. Εμφανίζεται ένα πλαίσιο προτροπής για να σας υπενθυμίσει ότι τα επιλεγμένα φύλλα εργασίας έχουν αντιγραφεί πολλές φορές όπως χρειάζεστε, κάντε κλικ στο OK κουμπί για έξοδο. Δείτε το στιγμιότυπο οθόνης:

Αυτό το Αντιγραφή πολλαπλών φύλλων εργασίας χαρακτηριστικό του Kutools για Excel θα δημιουργήσει πολλά αντίγραφα πολλαπλών καθορισμένων φύλλων εργασίας στο ενεργό βιβλίο εργασίας με πολλά μόνο κλικ. Κάντε μια δωρεάν δοκιμή!


Κάντε ένα αντίγραφο πολλαπλών φύλλων εργασίας από πολλά βιβλία εργασίας σε νέο

Εάν έχετε εγκαταστήσει το Kutools για Excel, μπορείτε επίσης να το εφαρμόσετε Συνδυάστε φύλλα εργασίας δυνατότητα να γίνει ένα αντίγραφο πολλαπλών φύλλων εργασίας από πολλά κλειστά βιβλία εργασίας σε ένα νέο βιβλίο εργασίας με αρκετά κλικ μόνο στο Excel.

Kutools για Excel - Περιλαμβάνει περισσότερα από 300 εύχρηστα εργαλεία για το Excel. Πλήρης δωρεάν δοκιμαστική λειτουργία 30 ημερών, δεν απαιτείται πιστωτική κάρτα! Παρ'το Τώρα

1. Κλίκ Kutools Plus > Συνδυασμός για να ενεργοποιήσετε τη λειτουργία Combine Sheets.

2. Στο Combine Sheets Works - Step 1 of 3 wizard, ελέγξτε το Συνδυάστε πολλά φύλλα εργασίας από βιβλία εργασίας σε ένα φύλλο εργασίας και κάντε κλικ στο επόμενος κουμπί. Δείτε το στιγμιότυπο οθόνης:

3. Στο Combine Sheets Works - Step 2 of 3 wizard, κάντε το παρακάτω στιγμιότυπο οθόνης που εμφανίζεται:
(1) Κάντε κλικ Προσθέτω > φιλέτο or Ντοσιέ για να προσθέσετε βιβλία εργασίας από τα οποία θα αντιγράψετε φύλλα εργασίας.
(2) Στο Λίστα βιβλίων εργασίας ενότητα, ελέγξτε το βιβλίο εργασίας του οποίου τα φύλλα εργασίας θα αντιγράψετε.
(3) Στο Λίστα φύλλων εργασίας ενότητα, ελέγξτε τα φύλλα εργασίας που θα αντιγράψετε.
(4) Επανάληψη παραπάνω (2) (3) για να επιλέξετε φύλλα εργασίας από άλλα βιβλία εργασίας που θα αντιγράψετε.
(5) Κάντε κλικ στο επόμενος κουμπί.

4. Στο Combine Sheets Works - Step 3 of 3 wizard, διαμορφώστε τις ρυθμίσεις αντιγραφής όπως χρειάζεστε και κάντε κλικ στο φινίρισμα κουμπί.

5. Τώρα στο νέο παράθυρο διαλόγου, καθορίστε ένα φάκελο προορισμού για να αποθηκεύσετε το νέο βιβλίο εργασίας, ονομάστε το νέο βιβλίο εργασίας στο Όνομα αρχείου και κάντε κλικ στο Αποθηκεύσετε κουμπί. Δείτε το στιγμιότυπο οθόνης:

Τώρα θα εμφανιστούν άλλα δύο παράθυρα διαλόγου και θα σας ζητήσουν να ανοίξετε το νέο βιβλίο εργασίας και να αποθηκεύσετε το σενάριο συνδυασμού, κάντε κλικ στα κουμπιά όπως χρειάζεστε. Μέχρι στιγμής, έχει αντιγράψει όλα τα καθορισμένα φύλλα εργασίας από πολλά βιβλία εργασίας κάθε φορά.

Με αυτό Συνδυάστε (φύλλα εργασίας) βοηθητικό πρόγραμμα, μπορείτε εύκολα να αντιγράψετε και να συνδυάσετε φύλλα εργασίας και βιβλία εργασίας όπως φαίνεται στην ακόλουθη λίστα. Κάντε μια δωρεάν δοκιμή!
(1) Συνδυάστε γρήγορα πολλά φύλλα εργασίας / εύρη από βιβλία εργασίας σε ένα φύλλο εργασίας.
(2) Γρήγορη συγχώνευση / συνδυασμός όλων των φύλλων εργασίας με το ίδιο όνομα σε βιβλία εργασίας σε ένα φύλλο εργασίας.
(3) Γρήγορη συγχώνευση / συνδυασμός φύλλων εργασίας ή βιβλίων εργασίας σε ένα βιβλίο εργασίας.
(4) Συνοψίστε / υπολογίστε γρήγορα δεδομένα από πολλά φύλλα εργασίας σε ένα φύλλο εργασίας.


Τα καλύτερα εργαλεία παραγωγικότητας του Office

Το Kutools για Excel λύνει τα περισσότερα από τα προβλήματά σας και αυξάνει την παραγωγικότητά σας κατά 80%

  • Επαναχρησιμοποίηση: Εισαγάγετε γρήγορα σύνθετοι τύποι, γραφήματα και οτιδήποτε έχετε χρησιμοποιήσει στο παρελθόν. Κρυπτογράφηση κυττάρων με κωδικό πρόσβασης Δημιουργία λίστας αλληλογραφίας και στείλτε email ...
  • Super Formula Bar (επεξεργαστείτε εύκολα πολλές γραμμές κειμένου και τύπου). Διάταξη ανάγνωσης (εύκολη ανάγνωση και επεξεργασία μεγάλου αριθμού κελιών). Επικόλληση σε φιλτραρισμένο εύρος...
  • Συγχώνευση κελιών / σειρών / στηλών χωρίς απώλεια δεδομένων · Περιεχόμενο διαχωρισμού κελιών Συνδυάστε διπλές σειρές / στήλες... Αποτροπή διπλών κυττάρων; Συγκρίνετε τα εύρη...
  • Επιλέξτε Διπλότυπο ή Μοναδικό Σειρές; Επιλέξτε Κενές σειρές (όλα τα κελιά είναι κενά). Σούπερ εύρεση και ασαφής εύρεση σε πολλά βιβλία εργασίας. Τυχαία επιλογή ...
  • Ακριβές αντίγραφο Πολλαπλά κελιά χωρίς αλλαγή της αναφοράς τύπου. Αυτόματη δημιουργία αναφορών σε πολλαπλά φύλλα? Εισαγωγή κουκκίδων, Πλαίσια ελέγχου και άλλα ...
  • Εξαγωγή κειμένου, Προσθήκη κειμένου, Κατάργηση κατά θέση, Αφαιρέστε το διάστημα; Δημιουργία και εκτύπωση υποσύνολων σελιδοποίησης. Μετατροπή περιεχομένου και σχολίων μεταξύ κελιών...
  • Σούπερ φίλτρο (αποθηκεύστε και εφαρμόστε σχήματα φίλτρων σε άλλα φύλλα). Προηγμένη ταξινόμηση ανά μήνα / εβδομάδα / ημέρα, συχνότητα και άλλα. Ειδικό φίλτρο με έντονη, πλάγια ...
  • Συνδυάστε βιβλία εργασίας και φύλλα εργασίας; Συγχώνευση πινάκων βάσει βασικών στηλών. Διαχωρίστε τα δεδομένα σε πολλά φύλλα; Μαζική μετατροπή xls, xlsx και PDF...
  • Περισσότερα από 300 ισχυρά χαρακτηριστικά. Υποστηρίζει Office / Excel 2007-2019 και 365. Υποστηρίζει όλες τις γλώσσες. Εύκολη ανάπτυξη στην επιχείρηση ή τον οργανισμό σας. Πλήρεις δυνατότητες δωρεάν δοκιμής 30 ημερών. Εγγύηση επιστροφής χρημάτων 60 ημερών.
kte καρτέλα 201905

Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ ποντικιού για εσάς κάθε μέρα!
κάτω μέρος γραφείου
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Tyler Dempsey · 3 years ago
    I am new to this I am just trying to make copies of the same sheet this is the code I am using.

    Sub Copier()
    Dim s As String
    Dim numtimes As Integer
    Dim numCopies As Integer
    numCopies = InputBox("How many copies do you need?")
    s = InputBox("Enter the name of the Worksheet you want to copy")
    For numtimes = 1 To numCopies
    ActiveWorkbook.Sheets(s).Copy _
    After:=ActiveWorkbook.Sheets(Worksheets.Cou nt)
    Next
    End Sub

    when i use the code it gives me the error of "Syntax Error" then this text turns red ActiveWorkbook.Sheets(s).Copy _
    After:=ActiveWorkbook.Sheets(Worksheets.Cou nt) and the is text turns yellow Sub Copier() what can i do to fix it.
    • To post as a guest, your comment is unpublished.
      Jorge · 1 years ago
      Working Code

      Sub Copier()
      Dim s As String
      Dim numtimes As Integer
      Dim numCopies As Integer
      numCopies = InputBox("How many copies do you need?")
      s = InputBox("Enter the name of the Worksheet you want to copy")
      For numtimes = 1 To numCopies
      ActiveWorkbook.Sheets(s).Copy After:=ActiveWorkbook.Sheets(Worksheets.Count)
      Next
      End Sub

      copy the entire line from ActiveWorkbook.Sheets...... that was the problem, and some spaces

      Have a great day
    • To post as a guest, your comment is unpublished.
      Schuyler · 3 years ago
      [quote name="Tyler Dempsey"]I am new to this I am just trying to make copies of the same sheet this is the code I am using.

      Sub Copier()
      Dim s As String
      Dim numtimes As Integer
      Dim numCopies As Integer
      numCopies = InputBox("How many copies do you need?")
      s = InputBox("Enter the name of the Worksheet you want to copy")
      For numtimes = 1 To numCopies
      ActiveWorkbook.Sheets(s).Copy _
      After:=ActiveWorkbook.Sheets(Worksheets.Cou nt)
      Next
      End Sub

      when i use the code it gives me the error of "Syntax Error" then this text turns red ActiveWorkbook.Sheets(s).Copy _
      After:=ActiveWorkbook.Sheets(Worksheets.Cou nt) and the is text turns yellow Sub Copier() what can i do to fix it.[/quote]


      Here is the exact code you want to use:


      Sub Copier()
      Dim s As String
      Dim numtimes As Integer
      Dim numCopies As Integer
      numCopies = InputBox("How many copies do you need?")
      s = InputBox("Enter the name of the Worksheet you want to copy")
      For numtimes = 1 To numCopies
      ActiveWorkbook.Sheets(s).Copy _
      After:=ActiveWorkbook.Sheets(Worksheets.Count)
      Next
      End Sub
      • To post as a guest, your comment is unpublished.
        Belva · 2 months ago
        Thank you, the last one saved my life :)
    • To post as a guest, your comment is unpublished.
      Schuyler · 3 years ago
      [quote name="Tyler Dempsey"]I am new to this I am just trying to make copies of the same sheet this is the code I am using.

      Sub Copier()
      Dim s As String
      Dim numtimes As Integer
      Dim numCopies As Integer
      numCopies = InputBox("How many copies do you need?")
      s = InputBox("Enter the name of the Worksheet you want to copy")
      For numtimes = 1 To numCopies
      ActiveWorkbook.Sheets(s).Copy _
      After:=ActiveWorkbook.Sheets(Worksheets.Cou nt)
      Next
      End Sub

      when i use the code it gives me the error of "Syntax Error" then this text turns red ActiveWorkbook.Sheets(s).Copy _
      After:=ActiveWorkbook.Sheets(Worksheets.Cou nt) and the is text turns yellow Sub Copier() what can i do to fix it.[/quote]


      Double check your code and make sure you don't have a space at ActiveWorkbook. Sheets(s).Copy _ or at Sheets(Worksheets.Cou nt)
  • To post as a guest, your comment is unpublished.
    Simon · 4 years ago
    Fantastic VBA code - really helped
  • To post as a guest, your comment is unpublished.
    Barry · 4 years ago
    When I first tried it, I got the error message because I didn't change the name Sheet1. After I realized what caused the error, I researched a little further, as I did not want to be manually entering the sheet name into the macro. And when I need this feature, it is almost always for the current sheet.

    I added the line a = activesheet.name
    And revised the line after:=activeworkbook.sheets("sheet1") to activeworkbook.sheets(a).copy _

    That worked very well, but I did notice the numbering was reversed ... that didn't bother me as I was going to manually rename the new sheets anyway.

    When I saw Schuyler's post, I further revised the line activeworkbook.sheets(a).copy _ to after:=activeworkbook.sheets(worksheets.count)

    I am now satisfied with the result. My finished macro:

    Sub copies()
    Dim x As Integer
    x = InputBox("Enter number of times to copy Sheet1")
    For numtimes = 1 To x
    ActiveWorkbook.Sheets("Sheet1").Copy _
    After:=ActiveWorkbook.Sheets(Worksheets.Count)
    Next
    End Sub

    ---
    All the best, Barry
    • To post as a guest, your comment is unpublished.
      MJ · 2 years ago
      i got syntax error on "After:=ActiveWorkbook.Sheets(Worksheets.Count)


      but i dunno whats wrong... Can u help me please?
    • To post as a guest, your comment is unpublished.
      Kate · 3 years ago
      Thank you so much Barry. Your finished macro is the only thing that worked for me.
  • To post as a guest, your comment is unpublished.
    stalag 17 · 4 years ago
    where i will insert this above code in vba should i create common button then inside ?? regards.
    • To post as a guest, your comment is unpublished.
      Adi · 3 years ago
      Follow the below steps:
      1. Copy the above code
      2. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.
      2. Click Insert > Module, and paste the following code in the Module Window.
      4.Then press F5 key to run the code
      5.A prompt box appears to ask you the number of sheet copies you want.
  • To post as a guest, your comment is unpublished.
    Susan · 5 years ago
    I get an error that 'numtimes' is not defined...?
  • To post as a guest, your comment is unpublished.
    Debbi · 5 years ago
    I got the same error as Theou and no one seems to have addressed it. My tabs are already named PO 51, PO 52, etc. and I replaced Sheet1 with PO 51 to copy that and got the subscript error out of range (9)

    I followed Schuyler's code to get the right order, but I still get the error and it's always due to these two lines:

    ActiveWorkbook.Sheets(s).Copy _
    Before:=ActiveWorkbook.Sheets(Worksheets.Count)
    • To post as a guest, your comment is unpublished.
      Schuyler · 5 years ago
      [quote name="Debbi"]I got the same error as Theou and no one seems to have addressed it. My tabs are already named PO 51, PO 52, etc. and I replaced Sheet1 with PO 51 to copy that and got the subscript error out of range (9)

      I followed Schuyler's code to get the right order, but I still get the error and it's always due to these two lines:

      ActiveWorkbook.Sheets(s).Copy _
      Before:=ActiveWorkbook.Sheets(Worksheets.Count)[/quote]

      Can you include your complete code to make it easier to debug? A "subscript error out of range" usually means that the code references something that doesn't exist. I find this in my own code when I've got a typo or something of that nature.
  • To post as a guest, your comment is unpublished.
    Roy · 5 years ago
    how to copy with same column widths
    • To post as a guest, your comment is unpublished.
      Schuyler · 5 years ago
      Same column widths as the original Worksheet or do you want all of the column widths to be the same?
  • To post as a guest, your comment is unpublished.
    sadaqat · 5 years ago
    yes it works thanks I have successfully make multiple copies of a single worksheet in same workbook by using vba code thnx a lot.
  • To post as a guest, your comment is unpublished.
    Gopal Krishan · 5 years ago
    Search for word "After" and change it to "Before". This will create copies in right order "Before" Sheet1. The only thing to rememeber is that numbering will always start from (2) as the original sheet will always be counted as 1st copy. Also you can replace "Sheet1" with name of the tab you are trying to copy.
  • To post as a guest, your comment is unpublished.
    juan · 6 years ago
    [quote name="MichaelTadashi"]Using the VBA code, the naming of the duplicated worksheets is in reverse order. Let's say I make 10 copies of Sheet1, I'll end up with Sheet1, Sheet1(10), Sheet1(9), Sheet1(8),.......is it possible to have them in normal order?[/quote]

    Anyone was able to answer this question? I need to create 72 copies, but it would be needed to have them in order (1 throught 72, intead of 72 through 1)

    Thanks!
    • To post as a guest, your comment is unpublished.
      Schuyler · 5 years ago
      [quote name="juan"][quote name="MichaelTadashi"]Using the VBA code, the naming of the duplicated worksheets is in reverse order. Let's say I make 10 copies of Sheet1, I'll end up with Sheet1, Sheet1(10), Sheet1(9), Sheet1(8),.......is it possible to have them in normal order?[/quote]

      Anyone was able to answer this question? I need to create 72 copies, but it would be needed to have them in order (1 throught 72, intead of 72 through 1)

      Thanks![/quote]

      If you want the sheet copies to be in sequential order instead of backwards, change the following line...

      [i]After:=ActiveWorkbook.Sheets[/i][u]("Sheet1")[/u]

      to this...

      [i]After:=ActiveWorkbook.Sheets[/i][u](Worksheets.Count)[/u]

      My completed code looked like the following which uses 2 InputBox prompts to allow for a dynamic copy count and worksheet name..


      [i]Sub Copier()
      Dim s As String
      Dim numtimes As Integer
      Dim numCopies As Integer
      numCopies = InputBox("How many copies do you need?")
      s = InputBox("Enter the name of the Worksheet you want to copy")
      For numtimes = 1 To numCopies
      ActiveWorkbook.Sheets(s).Copy _
      After:=ActiveWorkbook.Sheets(Worksheets.Count)
      Next
      End Sub[/i]
      • To post as a guest, your comment is unpublished.
        Karsten · 4 years ago
        How do i get the coppies continuous numbered. If the sheet i want to copy is named I002, and i want the next to be named I003,I004,I005 an so on.
  • To post as a guest, your comment is unpublished.
    Lim · 6 years ago
    Wow, thanks for the VBA code. It really helps a lot!
  • To post as a guest, your comment is unpublished.
    Dee · 6 years ago
    thanks, the vba code was huge
  • To post as a guest, your comment is unpublished.
    Theou Aegis · 6 years ago
    I tried the VBA code and got subscript out of range error (9). I replaced the sheet name with anything I could think of that was in the workbook already. Any idea what I did wrong?

    Also, is there a way to make it name each sheet incrementally? This would tie in with Michael's question, I'm sure. I'm guessing the answer to his question would be you'd need to set the After target to "sheet"+x somehow and that in turn would apply to my question if there was a way to specify what to name the new sheet. I could always just change my boss' "master" to "Aug 0" or whatever month it is, but it'd be easier for her to understand if the script did the naming automatically.
  • To post as a guest, your comment is unpublished.
    MichaelTadashi · 7 years ago
    Using the VBA code, the naming of the duplicated worksheets is in reverse order. Let's say I make 10 copies of Sheet1, I'll end up with Sheet1, Sheet1(10), Sheet1(9), Sheet1(8),.......is it possible to have them in normal order?