Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   Άνοιγμα Βιβλίου Εργασίας μέσω Access 2007 (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/2235-anoigma-biblioy-ergasias-meso-access-2007-a.html)

pctechdr 12-12-12 00:32

Άνοιγμα Βιβλίου Εργασίας μέσω Access 2007
 
Με ποιον τρόπο μέσω μακροεντολής μπορώ να "καλέσω" ένα εξωτερικό αρχείο xlsx που εχω μέσα σε έναν φάκελο? Γιατί μέσω "εκτέλεση εφαρμογής" δεν γίνεται και μου βγάζει μύνημα λάθους ότι δεν μπορεί να καλέσει το excel.

ασχετος 12-12-12 10:46

Forumistes και Forumistries
τ' ονειρά σας , ευχές μου.

Χρήστο,
τι σημαίνει 'καλεσω', να το ανοίξω μέσα από φόρμα για import?

pctechdr 12-12-12 10:47

Αδερφέ να το ανοίξω απλά. Κάτι σαν link και να μου ανοίγει ένα φύλλο excel που έχω. Αντι να το ψάχνω μέσα στο φάκελο.

Tasos 12-12-12 10:53

Καλημέρα σε όλο το φόρουμ!

Αγαπητέ Χρήστο καλημέρα και σε σένα!

Για να λειτουργήσει η μακροεντολή "Εκτέλεση εφαρμογής" θα πρέπει να χρησιμοποιήσεις την ακόλουθη σύνταξη στο όρισμα 'Γραμμή εντολής':

Κώδικας:

Διαδρομή της εφαρμογής 'EXCEL.EXE' & κενό & Διαδρομή του αρχείου Excel μέσα σε εισαγωγικά

Παράδειγμα:

Κώδικας:

C:\Program Files\Microsoft Office\Office12\EXCEL.EXE "E:\Desktop\Το όνομα του αρχείου.xls"
Ωστόσο, η χρήση κώδικα VBA μας παρέχει περισσότερες δυνατότητες.

Παράδειγμα κώδικα:
Κώδικας:

Sub OpenXLFile()
    Dim XLPath As String, XLWorkbook As String

    'Εάν η διαδρομή του αρχείου είναι γνωστή τότε προσαρμόζουμε
    'τη διαδρομή ώστε να έχει ακόλουθη σύνταξη:

    XLWorkbook = "E:\Desktop\Calendar.xls"

    'Εάν η διαδρομή του αρχείου είναι μεταβλητή τότε μπορούμε να
    'χρησιμοποιήσουμε (αν αυτό εξυπηρετεί) ένα από τα παρακάτω παραδείγματα:

    'XLWorkbook = CurrentProject.Path 'Ο φάκελος του αρχείου Access

    'XLWorkbook = Environ("USERPROFILE") 'Ο φάκελος χρήστη του τρέχοντος λογαριασμού των Windows πχ: C:\Users\Χρήστος

    'XLWorkbook = CreateObject("Wscript.Shell").SpecialFolders("Desktop") 'Η επιφάνεια εργασίας του χρήστη
    'XLWorkbook = CreateObject("Wscript.Shell").SpecialFolders("MyDocuments") 'O φάκελος 'Έγγραφα' του χρήστη


      If Right(XLWorkbook, 1) <> "\" Then XLWorkbook = XLWorkbook & "\"

      XLWorkbook = XLWorkbook & "\Calendar.xls"


    'Εάν υπάρχει το αρχείο στη θέση που δημιουργήθηκε παραπάνω...
    If Dir(XLWorkbook, vbDirectory) <> vbNullString Then

      '...τότε παίρνουμε αρχικά τη διαδρομή φακέλου της Access ( Στον ίδιο φάκελο βρίσκεται και η Excel )
        XLPath = Application.SysCmd(acSysCmdAccessDir)

        'Αν χρειαστεί, προσθέτουμε την κάθετο ( "\" ) στο τέλος της διαδρομής του φακέλου.
        If Right(XLPath, 1) <> "\" Then XLPath = XLPath & "\"

        'Κατόπιν προσθέτουμε το όνομα της εφαρμογής Excel & ένα κενό
        XLPath = XLPath & "EXCEL.EXE "

      'Εκτέλεση της Εφαρμογής Excel και άνοιγμα του αρχείου
        Shell XLPath & Chr(34) & XLWorkbook & Chr(34), vbNormalFocus
    Else
      'Εάν δεν υπάρχει το αρχείο στη θέση που δημιουργήθηκε παραπάνω ειδοποιούμε τον χρήστη
        MsgBox "Could not find the File '" & XLWorkbook & "' !!", vbExclamation, CurrentProject.Name
    End If
End Sub

Καλή συνέχεια!

Τάσος

ασχετος 12-12-12 10:59

Παράθεση:

Αρχική Δημοσίευση από pctechdr (Μήνυμα 13210)
Αδερφέ να το ανοίξω απλά. Κάτι σαν link και να μου ανοίγει ένα φύλλο excel που έχω. Αντι να το ψάχνω μέσα στο φάκελο.

κοίτα εδώ Microsoft Access tips: Opening hyperlinks

pctechdr 12-12-12 11:11

Σας ευχαριστώ πάρα πολύ και τους δύο για την άμεση ανταπόκριση στο πρόβλημα μου. (Η Microsoft μου φαίνεται αντί να τα κάνει απλούστερα τα πράγματα τα κάνει πολύπλοκα.) Τάσο δούλεψε το πρώτο πολύ απλά και γρήγορα. Αυτό χρειαζόμουν. Ωστόσο κάποια στιγμή σίγουρα θα μου χρειαστεί ο κώδικας που μου έδωσες να σαι καλά.

Κώστα πολύ χρήσιμο το λινκ που μου έδωσες, όταν έχω ώρα θα το μελετήσω καλύτερα, να σαι καλά και εσύ αδερφέ.

Την καλημέρα μου σε όλους!!


Η ώρα είναι 08:49.

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


Search Engine Optimization by vBSEO 3.3.2