
29-05-14, 11:34
|
| Όνομα: Μπάμπης Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2013 Γλώσσα λογισμικού Office: Ελληνική | | Εγγραφή: 07-04-2013
Μηνύματα: 56
| |
Βρήκα την λύση για οποιον ενδιαφέρετε. Δεν κατάλαβα γιατι δεν λειτουργούσε το πάνω αλλά βρήκα μια λύση που σου ζητάει να ορισεις εσύ το αρχείο. Απλά πρέπει να έχει διαφορετικό όνομα απο το τελευταίο...
Public Sub changeSource()
Dim dlgSelectFile As FileDialog 'FileDialog object '
Dim thisField As Field
Dim selectedFile As Variant
'must be Variant to contain filepath of selected item
Dim newFile As Variant
Dim fieldCount As Integer '
Dim x As Long
On Error GoTo LinkError
'create FileDialog object as File Picker dialog box
Set dlgSelectFile = Application.FileDialog(FileDialogType:=msoFileDial ogFilePicker)
With dlgSelectFile
.Filters.Clear 'clear filters
.Filters.Add "Microsoft Excel Files", "*.xls, *.xlsb, *.xlsm, *.xlsx" 'filter for only Excel files
'use Show method to display File Picker dialog box and return user's action
If .Show = -1 Then
'step through each string in the FileDialogSelectedItems collection
For Each selectedFile In .SelectedItems
newFile = selectedFile 'gets new filepath
Next selectedFile
Else 'user clicked cancel
Exit Sub
End If
End With
Set dlgSelectFile = Nothing
'update fields
With ActiveDocument
fieldCount = .Fields.Count
For x = 1 To fieldCount
With .Fields(x)
'Debug.Print x '
Debug.Print .Type
If .Type = 56 Then
'only update Excel links. Type 56 is an excel link
.LinkFormat.SourceFullName = newFile '
.Update
.LinkFormat.AutoUpdate = False
DoEvents
End If
End With
Next x
End With
MsgBox "Source data has been successfully imported."
Exit Sub
LinkError:
Select Case Err.Number
Case 5391 'could not find associated Range Name
MsgBox "Could not find the associated Excel Range Name " & _
"for one or more links in this document. " & _
"Please be sure that you have selected a valid " & _
"Quote Submission input file.", vbCritical
Case Else
MsgBox "Error " & Err.Number & ": " & Err.Description, vbCritical
End Select
End Sub
|