Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ. |
![]() |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
![]()
Καλησπέρα σε όλους στην κοινοτητα, Θα ήθελα την βοήθεια σας σχετικά με μια λιστα αρχειων (πανω απο 100 τον αριθμο) τα οποια ειναι ιδια ως προς αριθμο των φυλλων, τα ονόματα των φυλλων που περιεχουν και χρειάζομαστε να κανουμε διαφορες εκτυπωσεις, διαφόρων φύλλων σε διαφορετικους εκτυπωτες συμφωνα με ενα πλανο που φαινεται στο συννημενο αρχειο . Μπορει να γινει το παραπανω με VBA η οποια θα πέρνει τα δεδομενα απο τη λιστα του αρχειου (αν πρέπει να εκτυπωθει ?, ποιά φυλλα ?, απο ποια σελιδα εως ποιά ?, σε ποιόν εκτυπωτη ?) Ευχαριστώ |
#2
| ||||
| ||||
![]()
Καλησπέρα σε όλους! Αγαπητέ Μανώλη, στο αρχείο που επισυνάπτω, μπορείς να δεις μια λύση του ζητούμενου σου. Δεν μπόρεσα να τη δοκιμάσω αλλά είμαι σίγουρος ότι θα λειτουργήσει αν τα στοιχεία που περιέχονται (Ονόματα εκτυπωτών, φύλλων κλπ.) είναι σωστά. Για να εκτυπώσεις σε Adobe PDF μέσω του αυτοματισμού αυτού, φρόντισε στις ρυθμίσεις του προγράμματος (Adobe Writer) να δώσεις μια σταθερή διαδρομή φακέλου εξαγωγής των *.PDF που θα εκτυπώνονται. Καλή συνέχεια! Με εκτίμηση Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
#3
| |||
| |||
![]()
Τασο καλησπερα Ευχαριστω για την αμεση απαντηση σου. Ομως κατι δεν παει καλα. Σε παραδειγμα με 4 αρχεια και ενω τα 3 εχουν "NO" στις στηλες Ε, J, και Ο, και 1 "YES" με κλικ στο "εκτυπωση" προσπαθει να τα ανοιξει ολα και στις στηλες Ν και Ο φερνει ως αποτελεσμα "Νο Action" και δεν προχωραει το 1 σε εκτυπωση π.χ σε Adobe PDF. |
#4
| ||||
| ||||
![]()
Σου έδωσα ένα παράδειγμα χωρίς να γνωρίζω τυχόν ιδιαιτερότητες και λεπτομέρειες. Ο κώδικας αυτός δεν έχει κάποιο λάθος. Αυτά που κάνει είναι: Ανοίγει ένα ένα τα βιβλία, εκτυπώνει τα φύλλα που πρέπει και τελικά τα κλείνει χωρίς αποθήκευση. Αν υπάρχει το φύλλο (πχ, το φύλλο "ΑΠΟΔΕΙΞΕΙΣ") τότε αν υπάρχει "YES" στο κατάλληλο κελί κάθε φορά (στήλες E, J, O) θα επιχειρήσει να εκτυπώσει. Αν δεν υπάρχει το φύλλο θα γράψει "Error!" Αν η εκτύπωση σταλεί στον εκτυπωτή χωρίς να προκληθεί σφάλμα θα γράψει "ΟΚ!". Διαφορετικά θα γράψει "Error!" Αν στο κελί υπάρχει "NO" τότε ο κώδικας δεν θα προχωρήσει στην εκτύπωση του φύλλου και θα γράψει "No Action". Αν ο εκάστοτε εκτυπωτής δεν εκτυπώσει τότε θα πρέπει να αναζητήσεις την αιτία του προβλήματος στον εκτυπωτή. Όχι στην Excel. Αυτό ισχύει και για τον εκτυπωτή PDF. Έκανες τις απαραίτητες ρυθμίσεις σ' αυτόν τον εκτυπωτή; Παράθεση:
Δεν μπορώ να γνωρίζω τι δεν πάει καλά αφού το μόνο που βλέπω είναι το αρχείο Excel που επισύναψες. Δεν είμαι μπροστά στον υπολογιστή σου . Αυτό που μπορώ να κάνω είναι να προσθέσω τη δυνατότητα ελέγχου αν και τα τρία φύλλα έχουν την τιμή "NO" και έτσι να μην ανοίξει το βιβλίο χωρίς λόγο (δεν διευκρινίστηκε στο αρχικό σου μήνυμα). Άλλαξε λοιπόν τον κώδικα του συνημμένου μου με τον παρακάτω: Κώδικας: Sub XLPrintJob() Dim wks As Worksheet, wb As Workbook, c As Range, i As Integer, x As Integer With Application .ShowWindowsInTaskbar = False .EnableEvents = False .Calculation = xlCalculationManual .ScreenUpdating = False End With On Error Resume Next For Each c In ActiveSheet.Range("A3:A" & Range("A" & Rows.Count).End(xlUp).Row) x = 1 If Dir(c.Value, vbDirectory) <> vbNullString Then If c.Offset(, 4).Value = "NO" And _ c.Offset(, 9).Value = "NO" And _ c.Offset(, 14).Value = "NO" Then GoTo NextWB Set wb = Workbooks.Open(Filename:=c.Value, ReadOnly:=True) For i = 1 To 3 Set wks = wb.Sheets(c.Offset(, x).Value) If Err <> 0 Then c.Offset(, 15 + i).Value = "Error!" Err.Clear GoTo NextWks End If If c.Offset(, x + 3).Value = "YES" Then wks.PrintOut _ From:=c.Offset(, x + 1).Value, _ To:=c.Offset(, x + 2).Value, _ ActivePrinter:=c.Offset(, x + 4).Value, _ Collate:=True If Err <> 0 Then c.Offset(, 15 + i).Value = "Error!" Err.Clear Else c.Offset(, 15 + i).Value = "OK!" End If Else c.Offset(, 15 + i).Value = "No Action" End If NextWks: x = x + 5 Next wb.Close SaveChanges:=False End If NextWB: Next With Application .ShowWindowsInTaskbar = True .EnableEvents = True .Calculation = xlCalculationAutomatic .ScreenUpdating = True End With End Sub Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών Τελευταία επεξεργασία από το χρήστη Tasos : 11-06-12 στις 11:47. |
#5
| |||
| |||
![]()
Τασο καλημέρα, Συγνωμη μαλλον δεν σου εδωσα να καταλαβεις σωστά, τι(?) δεν κανει και σε μπερδεψα. Sorry!! Αυτο που λεω ειναι οτι μεσα στο κωδικα, του λες να σου δωσει "ΟΚ", "Errror" ή "No Action" με offset σε στηλή που πέφτει πανω σε στηλη δεδομενων (Ν,Ο) και σβηνει τα δεδομενα και οχι στις στηλες Q,R,S, που ειναι για αυτα τα αποτελεσματα. Τωρα το 1 "YES" δεν ειναι τεταρτο κελι. Ενα παραδειγμα ειναι, σε ενα απο τα αρχεια, να κανει print σε pdf το ενα φυλλο (π.χ. sheetName_1 "ΚΑΤΑΣΤΑΣΗ") αλλα δεν κανει τίποτα. (ενω πχ μεσα στο αρχειο αν γραψω σε ενα module ActiveSheet.PrintOut Copies:=1, Collate:=True, ActivePrinter:="Adobe PDF" λειτουργει και δημιουργει το pdf κανονικά Τα ονόματα των φύλλων, εκτυπωτων,κτλ τα τσεκαρα, είναι σωστα. Επισης να αναφερω οτι ολα τα αρχεια, περιέχουν συνδεσεις με άλλα αρχεία και οταν τα ανοίγεις ζηταει ενημέρωση ή οχι των συνδεσεων (excel 2003). Δεν ξερω αν αυτό μπερδευει. Παρένθεση για προσθηκη !!! Αν μπορουμε μεσα στη VBA να υπαρχει default η απαντηση (πχ. ναι) στην ενημερωση των συνδεσεων ωστε να μην κλικαρουμε τοσες φορές όσα τα αρχεια προς εκτυπωση. Ευχαριστώ προκαταβολικα Φιλικά Μανώλης |
#6
| |||
| |||
![]()
Επισυναπτω και αρχειο PrintList_3 μετα απο εκτελεση "εκτυπωση"
|
#7
| ||||
| ||||
![]()
Καλημέρα σε όλους! Φίλε μου, το αρχείο σου περιέχει μια "παγίδα": ![]() Το κελί V3 περιέχει τη λέξη Yes + 1 κενό! Σου επισυνάπτω ένα παράδειγμα με κάποιες μετατροπές (λαμβάνει υπόψη του τα νέα δεδομένα) που πιστεύω ότι θα σε καλύψει. Τώρα για την ενημέρωση ή οχι των συνδέσεων, πρόσθεσα τον απαραίτητο κώδικα στο αρχείο. Αν παρόλα αυτά το μήνυμα παραμένει τότε σου προτείνω να διαβάσεις το παρακάτω: Έλεγχος του μηνύματος εκκίνησης για την ενημέρωση των συνδέσεων - Excel - Office.com Καλή σου μέρα! Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
#8
| |||
| |||
![]()
Καλημέρα σε όλους Τασό, Αρχικά να ζητησω συγνωμη για την ταλαιπωρια... Το θεμα με το κενο διαστημα σε κελι. με εχει ξαναμπερδεψει ![]() Μου αρεσει λεει που τσεκαρα ονοματα και σχετικα .... Τωρα φυσικα, λειτουργει άψογα !!! και με τις ενημερωσεις συνδεσεων ..οκ !! Σε ευχαριστω παρα πολύ για το χρόνο σου Φιλικά Μανωλης |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
Εργαλεία Θεμάτων | |
Τρόποι εμφάνισης | |
| |
| ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[VBA] VBA - Αντιγραφή πολλών κελιών σε ένα. | spavlos | Excel - Ερωτήσεις / Απαντήσεις | 11 | 27-09-17 11:05 |
Ένωση πολλών αρχείων Word σε ένα με χρήση Access | dimmag | Access - Ερωτήσεις / Απαντήσεις | 2 | 21-02-14 19:58 |
[Excel07] Εισαγωγή πολλών φύλλων σε ενα αθροιστικό | oliveoilmill | Excel - Ερωτήσεις / Απαντήσεις | 8 | 08-11-13 11:29 |
[VBA] Δημιουργία Backup πολλών αρχείων | mak | Excel - Ερωτήσεις / Απαντήσεις | 7 | 23-07-11 20:21 |
[ Πίνακες ] Συγχώνευση πολλών τιμών σε ένα πεδίο 2 | dimitris p | Access - Ερωτήσεις / Απαντήσεις | 3 | 16-04-11 18:53 |
Η ώρα είναι 15:27.