![]() |
άνοιγμα αρχείου pdf με εντολή καλημέρα σε όλους τους φίλους θα ήθελα αν γνωρίζει κάποιος τον τρόπο (vba) έτσι ώστε σε ένα κουμπί να προσθέσω τον κώδικα που θα μου ανοίγει συγκεκριμένο αρχείο σε .pdf που βρίσκεται όχι στον c: αλλά στον G:\inv ευχαριστώ εκ των προτέρων φιλικά Τάσος Κ. |
Καλημέρα σε όλους! Συνονόματε δοκίμασε: Κώδικας: Option Compare DatabaseΚαλή συνέχεια! Τάσος |
Φίλε Τάσο ευχαριστώ πάρα πολύ, δούλεψε με την πρώτη περίπτωση δηλαδή με Private Sub cmdOpenPDF_Click() Dim OpenFile As Long OpenFile = ShellExecute(0, "open", "G:\inv\Mypdf.pdf", "", "C:\", SW_SHOWNORMAL) End Sub προσπάθησα όμως αντί του Mypdf.pdf στο Mypdf να παίρνει το όνομα (τιμή) από τη φόρμα μου FORMS! ΤΙΜΟΛΟΓΙΑ ΠΩΛΗΣΗΣ ! inv_No μήπως πρέπει να κάνω διαφορετική σύνταξη ή ορθογραφία? ευχαριστώ και πάλι για την πολύτιμη βοήθεια σου Τάσος |
Καλησπέρα Η σύνταξη καλή είναι, αλλά εκείνο το κενό που έχεις στο όνομα της φόρμας σου μπορεί να σταθεί εμπόδιο στη λύση που ζητάς τώρα ή αργότερα. Δοκίμασε βάζοντάς το ανάμεσα σε [ ] ή άλλαξε όνομα στη φόρμα σου. Καλού -κακού ανέβασε ΟΛΗ τη γραμμή της ShellExecute(...) Με εκτίμηση Νίκος Δ. |
Δοκίμασε: MyFile = Forms![ΤΙΜΟΛΟΓΙΑ ΠΩΛΗΣΗΣ]![inv_No] Αν το κουμπί που τρέχει τον κώδικα και το πεδίο [inv_No] βρίσκονται στην ίδια φόρμα τότε: MyFile = Me![inv_No] Σε κάθε περίπτωση φρόντισε να μην υπάρχουν κενά στην αρχή και στο τέλος των ονομάτων. Καλή συνέχεια! Τάσος |
δυστυχώς φίλοι μου αν και άλλαξα το όνομα της φόρμας είτε με Private Sub ÅíôïëÞ40_Click() Dim OpenFile As String OpenFile = ShellExecute(0, "open", "G:\inv\forms![invoices]![inv_No].pdf", "", "C:\", SW_SHOWNORMAL) End Sub είτε με Private Sub ÅíôïëÞ40_Click() Dim OpenFile As String OpenFile = ShellExecute(0, "open", "G:\inv\Me![inv_No].pdf", "", "C:\", SW_SHOWNORMAL) End Sub δεν δουλεύει. Μόνο αν βάλω συγκεκριμένη τιμή μέσα από την vba δουλεύει |
Δοκίμασε αυτό : Κώδικας: OpenFile = ShellExecute(0, "open", "G:\inv\" & forms![invoices]![inv_No] περιμένουμε την εξέλιξη... Νίκος Δ Υστερολόγιο : το πεδίο [inv_no] τι περιέχει ; τι θα γίνει αν η εφαρμογή τρέξει σε υπολογιστή που δεν έχει G; |
κύριοι σας ευχαριστώ πολύ δουλεύει τέλεια μετά τη τελευταία προσθήκη φιλικά Τάσος |
Νίκο το πεδίο inv_No είναι αριθμός ο οποίος παραπέμπει στο G: ( που είναι flash memory) όπου έχω αποθηκευμένα τα αντίστοιχα τιμολόγια σε μορφή pdf. Μπήκα σε αυτή τη διαδικασία γιατί πολλές φορές μέσα από τη βάση χρειάζεται να ανοίξω και το τιμολόγιο στην κανονική του μορφή έτσι όπως έχει αποθηκευτεί. Σε ευχαριστώ και πάλι για τη βοήθεια σου Τάσος |
1 Συνημμένο(α) Καλησπέρα... επισυνάπτω μια λύση που χρησιμοποιώ αρκετά σε ότι αφορά συνδεδεμένα αρχεία μέσα στην access... Νομίζω είναι αυτό που ψάχνεις... |
Ευχαριστώ και εγώ, ήθελα κάτι τέτοιο |
Γεια χαρά σε όλους!Είμαι καινούργια στο forum αλλά και στην access, προσπαθώ να δημιουργήσω ένα button στη φόρμα μου και να προσθέσω τον κώδικα που θα μου ανοίγει συγκεκριμένο αρχείο σε .pdf που βρίσκεται στον c: (το ποιό αρχείο θα είναι αυτό είναι τιμή ενός πεδίου της φόρμας). Αρχικά, αρχάρια γαρ, ήθελα να πειραματιστώ και να ανοίξω ένα συγκεκριμένο pdf που έχω στο c: (το 750.pdf) χρησιμοποιώντας τον παρακάτω κώδικα που έχετε παραθέσει και εσείς.....Δυστυχώς δεν....Τι μπορεί να κάνω λάθος??? Option Compare Database Option Explicit Private Const SW_SHOWNORMAL = 1 Private Declare Function ShellExecute _ Lib "shell32.dll" Alias _ "ShellExecuteA" ( _ ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Private Sub Εντολή43_Click() Dim OpenFile As Long OpenFile = ShellExecute(0, "open", "C:\750.pdf", "", "C:\", SW_SHOWNORMAL) End Sub Ευχαριστώ εκ των προτέρων, Μαρία |
Καλησπέρα Μαρία, καλωσόρισες στην παρέα μας. Σε μένα ο κώδικας, που ανέβασες, δουλεύει. Θα σου πρότεινα όμως τον απλούστερο (μόνο μία γραμμή) : Κώδικας: Private Sub Command3_Click()Γιώργος |
Γιώργο καλημέρα, σε ευχαριστώ πολύ για το χρόνο σου! Δοκίμασα την προτασή σου και πάλι δεν έπαιξε, οπότε κατέληξα πως κάτι άλλο φταίει και όχι ο κώδικας. Μετά από διάφορες δοκιμές διεπίστωσα πως για να ανοίξω το αρχείο πρέπει να ενεργοποιήσω το περιεχόμενο στην προειδοποίηση ασφαλείας! Θα μπορούσε κάποιος να μου εξηγήσει τι σημαίνει πρακτικά αυτο? Επίσης μπορώ να απενεργοποιήσω καθολικά αυτή την προειδοποίηση ή δημιουργώ πρόβλημα στη βάση μου? Ακόμη σε σχέση με τους 2 τρόπους ανοίγματος αρχείου τι είναι προτιμότερο να χρησιμοποιήσει κάποιος? Hyperlink ή ShellExecute? Τέλος, να σημειώσω, για όποιον άλλο ενδιαφέρεται, ότι παίζουν και οι δυο τρόποι! Ευχαριστώ πολύ! |
1 Συνημμένο(α) Καλησπέρα Σχετικά με τα ερωτήματα: 1) Όταν υπάρχει λύση χωρίς κώδικα, ειδικά από κάποιον με περιορισμένη εμπειρία, θα πρέπει να προτιμηθεί. Αν, σε προβολή σχεδίασης πίνακα, αλλάξουμε το πεδίο, που περιέχει τα ονόματα των αρχείων, σε Hyperlink, δε χρειαζόμαστε κώδικα. 2) Από τους δύο κώδικες προτίμησε το συντομότερο, που είναι και πιο κατανοητός. 3) Ο κώδικας μπορεί να περιλαμβάνει και τμήματα (κακόβουλο λογισμικό) που θα μπορούσαν να προκαλέσουν βλάβες (πχ διαγραφή των αρχείων του δίσκου). Για λόγους προστασίας, όταν ανοίγουμε μία ΒΔ, η access ελέγχει, αν περιέχει κώδικα και ενεργεί αναλόγως (απενεργοποιεί ή όχι τον κώδικα, κλπ). Το τι ακριβώς θα κάνει εξαρτάται από τις ρυθμίσεις του κέντρου προστασίας (βλ. συνημμένο). Το ανοίγουμε ακολουθώντας τα βήματα: File=>Options=>Trust Center=>κλικ στο Trust Center Settings |
| Η ώρα είναι 06:09. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.