| Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ. |
![]() |
| | Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
| |
|
#1
| |||
| |||
|
Μεταφορά κειμένου από word σε excel με vba Γεια σας και ευχαριστώ για τις γνώσεις που μας παρέχετε. Θα ήθελα τη βοήθεια σας, θέλω με μια μακροεντολή του excel να ανοίγω το συνημμένο αρχείο testword.doc ή κάποιο άλλο ίδιας μορφής και να αντιγράφω τα δεδομένα του σε κελιά του excel με τη μορφή του συνημμένου testexcel.xls. (δηλαδή ένα copy-paste αυτόματα) Ευχαριστώ εκ των προτέρων !!! |
|
#2
|
|
Καλησπέρα Ένα αρχείο .doc μπορεί να εισαχθεί απ' ευθείας σε excel ή να γίνει μετατροπή σε .txt Η μέθοδος Copy - Paste δεν παρέχει ασφάλεια για να είμαστε σίγουροι ότι τα δεδομένα θα μπουν στην σωστή τους θέση. Γι' αυτό πρέπει πρώτα να γίνει μετατροπή του .doc σε άλλες μορφές με βασικότερες τις .html και .txt Εδώ θα δούμε μια μέθοδο για το πως γίνετε εισαγωγή .txt σε excel με VBA. Ο κώδικας που χρησιμοποιήθηκε έγινε με recorder και προσαρμόστηκε κατόπιν αφού αφαιρέθηκαν και κάποιες (αρκετές) περιττές γραμμές. Αφού μετατρέψουμε τα αρχεία μας σε .txt (Ανοίγουμε το αρχείο .doc και Save as.....txt) και τα αποθηκεύσουμε ανοίγουμε το βιβλίο excel στο οποίο θέλουμε να εισάγουμε κάποιο ή κάποια από αυτά που για το παράδειγμα μας είναι το testxls.xls Το βιβλίο περιέχει ένα φύλλο με το όνομα MainSheet. Επιλέγουμε με τι όνομα (Tab) θέλουμε να δημιουργούνται τα νέα φύλλα και το πληκτρολογούμε στο κατάλληλο κελί. Με κλικ στο κουμπί ανοίγει ένα msgbox με πληροφορίες και αφού πατήσουμε Yes ανοίγει παράθυρο διαλόγου στο οποίο εντοπίζουμε το αρχείο .txt που θέλουμε να εισαχθεί. Με την επιλογή του αρχείου εισάγονται τα δεδομένα του σε ένα νέο excel φύλλο με την ονομασία που επιλέξαμε και έναν αριθμό (για να μην υπάρχει κατόπιν διπλότυπη ονομασία) Ταυτόχρονα οι στήλες του φύλλου προσαρμόζονται στα δεδομένα. Τελευταία επεξεργασία από το χρήστη Spirosgr : 02-09-13 στις 14:41. Αιτία: Συμπλήρωση |
|
#3
| |||
| |||
|
Σπύρο είναι πολύ χρήσιμη η προσέγγιση σου, θα προσθέσω τον κώδικα στην υπάρχουσα μακροεντολή του excel (κάνει και άλλους υπολογισμούς μετά) και θα ενημερώσω για τα αποτελέσματα Ευχαριστώ για το χρόνο που αφιέρωσες !!!
|
|
#4
| |||
| |||
|
Τελικά η ιδέα σου Σπύρο μου χρησίμευσε πολύ σε μια άλλη περίπτωση αλλά για την συγκεκριμένη ήθελα να τα κάνω όλα μέσα από το Excel με μια ήδη υπάρχουσα μάκροεντολή οπότε ψάχνοντας στο internet βρήκα τον κώδικα που με κάποια προσαρμογή στα μέτρα μου πρόσθεσα στον ήδη υπάρχοντα και έλυσα το πρόβλημα μου. Για να λειτουργήσει πρέπει πρώτα να ενεργοποιήσουμε από την οθόνη της VB του Excel το Tools-Reference Επιλογή Microsoft Word XX.0 Odject Library Επισυνάπτω το αρχείο με τη μακροεντολή. |
|
#5
| ||||
| ||||
|
Καλησπέρα! Αγαπητέ Δημήτρη, ο κώδικας μου θα μπορούσες να χρησιμοποιήσεις χωρίς να εμφανίζεται καν το έγγραφο Word και χωρίς να χρειαστεί η αναφορά του Word Object είναι: Κώδικας:
Sub CopyFromWord()
Dim WD As Object, oDoc As Object, sFileName As Variant
sFileName = Application.GetOpenFilename("Word Files (*.doc*)," & "*doc*")
If sFileName <> False Then
Set WD = CreateObject("Word.Application")
Set oDoc = WD.Documents.Open(sFileName, , True)
oDoc.Range.Copy
Range("A1").Activate
'ActiveSheet.Paste
ActiveSheet.PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:=False
WD.Quit False
Set WD = Nothing
End If
End Sub
Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
|
#6
| |||
| |||
|
Τάσο ο κώδικας που μου έδωσες λειτουργεί τέλεια, είναι πιο γρήγορος από το δικό μου, σε ευχαριστώ πολύ !!!
|
|
#7
| ||||
| ||||
|
Να είσαι καλά Δημήτρη! Καλή συνέχεια! Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
| Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
| [Μορφοποίηση] Μεταφορά στοιχείων από excel σε word | skantzo | Excel - Ερωτήσεις / Απαντήσεις | 2 | 15-10-10 00:36 |
Η ώρα είναι 09:51.


Υβριδικός τρόπος

