Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/)
-   -   [VBA] Αποθήκευση βιβλίου με το τρέχον όνομα φύλλου και φίλτρο (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/3143-apothikeysi-biblioy-me-trexon-onoma-filloy-kai-filtro.html)

ΧρύσαΚ 07-05-14 09:40

Αποθήκευση βιβλίου με το τρέχον όνομα φύλλου και φίλτρο
 
Καλημέρα σας
Είμαι νεό μέλος και τελείως αρχάρια σε visual basic και προσπαθώ να αυτοματοποιήσω το εξής:
Από βιβλίο εργασίας, θέλω να αντιγράφεται το ενεργό φύλλο σε νέο βιβλίο και να αποθηκεύεται (πχ στην επιφάνεια εργασίας) με το όνομα του τρέχοντος φύλλου. Εάν είναι δυνατόν, να αποθηκεύεται και με το φίλτρο που θα έχω εφαρμόσει .
Το μόνο που έχω καταφέρει ως τώρα είναι να το απομονώνω και να αποθηκεύεται ως βιβλίο1.xls.
Παρακάτω είναι ο κώδικας που έχω χρησιμοποιήσει ως τώρα:

Dim strFileName As String

ActiveSheet.Copy

If strFileName = "False" Then Exit Sub 'User Canceled

ChDir "C:\Users\Chrissa\Desktop"
ActiveWorkbook.SaveAs Filename:="C:\Users\Chrissa\Desktop\Βιβλίο1. xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close

Εάν μπορούσε κάποιος να με βοηθήσει ή να με κατευθύνει κάπως, θα το εκτιμούσα πολύ!

Spirosgr 07-05-14 22:15

1 Συνημμένο(α)
Καλησπέρα
Ο κώδικας κάνει μόνο αυτό που ζητήθηκε.
Αντιγράφει το ενεργό φύλλο με ότι έχει "επάνω" στην επιφάνεια εργασίας και
με το όνομα του ενεργού φύλλου σε μορφή .xlsx.

Κώδικας:

Sub CopyActSh()
    ActiveSheet.Copy
    ActiveWorkbook.SaveAs Filename:="C:\Users\Σπύρος\Desktop\" & ActiveSheet.Name & ".xlsx", _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
End Sub

Φυσικά πρέπει να αλλάξει η διαδρομή "C:\Users\Σπύρος\Desktop\"
με την διαδρομή του χρήστη
Στο βιβλίο που ακολουθεί ενεργοποιήστε ένα ένα τα φύλλα και "τρέξτε" τον κώδικα

ΧρύσαΚ 08-05-14 07:08

Καλημέρα σε όλους
Σπύρο σε ευχαριστώ πολύ για την απάντηση σου. Τα κατάφερα και κάνει ακριβώς αυτό.
Εάν έχω εφαρμόσει αυτόματο φίλτρο, αντιγράφει το ενεργό φύλλο όπως ακριβώς το βλέπω. Υπάρχει δυνατότητα, όταν πλέον δημιουργηθεί το νέο φύλλο, να έχει τα αποτελέσματα μόνο του φίλτρου χωρίς να φαίνονται τα βελάκια του φίλτρου;
Επίσης, αυτό το αρχείο , θα το ανεβάσω σε έναν server. Θα το χρησιμοποιούν λοιπόν και άλλοι. Μήπως πρέπει να βάλω και εντολή να δημιουργείτε και ένας φάκελος στον εκάστοτε C: και εκεί να αποθηκεύεται το νέο φύλλο; Διότι με την επιφάνεια εργασίας, δεν θα βρίσκει το όνομα χρήστη κάθε φορά...
Και πάλι ευχαριστώ!

Spirosgr 08-05-14 08:08

Καλημέρα
Πρωινή γκρίνια αλλά δεν καταλαβαίνω βρε παιδιά...
πρώτα ζητάτε κάτι και μετά θα το θέλατε κάπως αλλιώς...

ΧρύσαΚ 09-05-14 06:48

Παράθεση:

Αρχική Δημοσίευση από Spirosgr (Μήνυμα 18104)
Καλημέρα
Πρωινή γκρίνια αλλά δεν καταλαβαίνω βρε παιδιά...
πρώτα ζητάτε κάτι και μετά θα το θέλατε κάπως αλλιώς...

Έχεις δίκιο αλλά δεν φταίω εγώ:sad: Αυτή που μου ζήτησε να τη βοηθήσω να το φτιάξει, μου το ξεφούρνισε μετά...


Η ώρα είναι 16:39.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2