Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1060to1064
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Hyperlink
16.03.2009 14:02:48
Baumpaul1
Hallo liebe Excelfrunde,
ich habe mit hilfe von Forumusern eine VBA Lösung im Einsatz, die mir 6 Tabellen aus verschiedenen Dateien im Netztwerk in eine Datei mit 6 Tabellen kopiert und aktualisiert.
Nun stellt sich das Problem, dass die Quelldateien Hyperlinks enthalten und sich bei der Aktualisierung in der Zieldatei umgeschreiben. Die Hyperlinks sind mit komplettem Serverpfad eingefügt, also eigentlich statisch, oder? kann man dies irgendwie Verhindern?
anbei der Code:

Sub BlattInhaltKopieren(strVerzeichnis$, strQuelle$, varSheet, wksZiel As Worksheet)
Dim wbQuelle As Workbook, wksQuelle As Worksheet, bolOpen As Boolean
Dim intFehler As Integer
'Alles(Inhalte + Formate + Kommentare + Gliederung) in Spalten A bis N löschen
On Error GoTo Fehler
intFehler = 1
With wksZiel.Range("A1:N1")
.EntireColumn.Clear
End With
'Prüfen ob Quelle schon geöffnet
intFehler = 0
If fncDateiOpen(strQuelle) = True Then
Set wbQuelle = Workbooks(strQuelle)
bolOpen = True
Else
intFehler = 2
Set wbQuelle = Workbooks.Open(Filename:=strVerzeichnis & "\" & strQuelle, ReadOnly:=True)
bolOpen = False
End If
'Quelltabelle setzen
intFehler = 3
Set wksQuelle = wbQuelle.Worksheets(varSheet)
intFehler = 4
With wksQuelle
.Range("A1:N1").EntireColumn.Copy Destination:=wksZiel.Cells(1, 1)
End With
intFehler = 0
Application.CutCopyMode = False
If bolOpen = False Then
wbQuelle.Close savechanges:=False
End If
Fehler:
With Err
If .Number  0 Then
Select Case intFehler
Case 1
MsgBox "Fehler-Nr. " & Err.Number & vbLf & .Description & vbLf & vbLf _
& "Problem beim Löschen in Zieltabelle """ & wksZiel.Name & """"
Case 2
MsgBox "Fehler-Nr. " & Err.Number & vbLf & .Description & vbLf & vbLf _
& "Problem beim Öffnen von Datei """ & strQuelle & """"
Case 3
MsgBox "Fehler-Nr. " & Err.Number & vbLf & .Description & vbLf & vbLf _
& "Problem beim Setzen der Quelltabelle  """ & strQuelle & """"
Case 4
MsgBox "Fehler-Nr. " & Err.Number & vbLf & .Description & vbLf & vbLf _
& "Problem beim Kopieren der Daten aus Quelle nach Ziel  """ & strQuelle & """"
Case Else
MsgBox "Fehler-Nr. " & Err.Number & vbLf & .Description & vbLf & vbLf _
& "Bitte korrekte Schreibweise von Blatt und Dateinamen prüfen!"
End Select
Application.ScreenUpdating = True
End If
End With
End Sub



Sub Daten_Aktualisieren()
Dim wbZiel As Workbook, intI As Integer
Dim strPfad$, strDatei$, strBlattQ, strBlattZ$
On Error GoTo Fehler
Application.ScreenUpdating = False
Set wbZiel = ActiveWorkbook
strPfad = "\\Fileserver\fe1-allg\Controlling\Controlling SMD-Linien"
For intI = 1 To 6
strDatei = "Controlling SMD Linie " & intI & " .xls"
strBlattQ = "Controlling SMD Linie " & intI
strBlattZ = strBlattQ
Call BlattInhaltKopieren(strVerzeichnis:=strPfad, strQuelle:=strDatei, _
varSheet:=strBlattQ, wksZiel:=wbZiel.Worksheets(strBlattZ))
Next
Fehler:
With Err
If .Number  0 Then
MsgBox "Fehler-Nr. " & Err.Number & vbLf & .Description
End If
End With
Application.ScreenUpdating = True
End Sub


Gruss
Baumpaul1

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hyperlink
18.03.2009 22:49:43
frigo
Hallo Baumpaul1,
ich kann leider keine Lösung liefern, sondern kann das Problem nur nochmal anders erläutern.
Selbst völlig ohne Makro werden Links und Formeln beim Kopieren in andere Mappen immer absolut kopiert.
Z.B. Mappe1 mit BlattA und BlattB. BlattA enthält eine Formel auf BlattB.
Beim Kopieren von BlattA in Mappe2 enthält die Formel jetzt Bezug zur Mappe1!BlattB. Ich möchte aber auch den Bezug relativ kopiert haben, also auf BlattB in der selben Mappe.
Eine Idee in Deinem Fall kann die Nachbearbeitung der Links sein, d.h. alle Blätter werden successive angepackt und jeder Link des Blattes angepasst.
Gruß,
frigo
Anzeige
AW: Hyperlink
19.03.2009 09:48:04
Baumpaul1
Hallo frigo,
eine Nachbearbeitung müsste ich nach jeder aktualisierung der Datei machen, 1 x Tag / 500 Links PUUUUUH!
Das Problem ist, dass nur ein Teil des Hyperlink-Pfades beim Kopieren angepasst wird
aber der komlette Pfad in der Zelle angezeigt wird. Ich habe es mit absolutem und relativen Bezug probiert -- kein Erfolg! Ein hinweis im Forum war den Grund-Pfad der Hyperlinks in den Dateieigenschaften festzulegen und in der Datei die Links relativ zuzuweisen und dies hat Funktioniert!
Also eine Lösung mit kleinem Umweg, aber hauptsache es Funktioniert!
Danke für deine Antwort!
Gruss
Baumpaul1
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige