Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
956to960
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
956to960
956to960
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA | Datei umbenennen aber Pfadangabe relativ

VBA | Datei umbenennen aber Pfadangabe relativ
05.03.2008 11:01:00
oPabst
Hallo zusammen,
ich möchte gerne in einem script den Dateinamen umbenennen lassen.
Ich habe aber als Pfadangabe in meiner Variablen einen relativen Bezug.
Meine bisher gefundenen Lösungen haben aber alle absolute Bezüge.
Gibt es sowas wie - Name oldDatei as newDatei - auch mit relativem Bezug?
Gruß
Oliver

Sub ChangeHypes()
Dim iRow As Integer, iRowL As Integer, iChar As Integer
Dim sFile As String
Dim sPath As String
Dim sDatei As String
Dim newDatei As String
iRowL = Cells(Rows.count, 6).End(xlUp).Row
sTxt = Format(Cells(iRowL, 2).Value, "000") & "-" & Format(Cells(iRowL, 4).Value, "000") & "-" & _
_
Format(Cells(iRowL, 6).Value, "00000") & "_"
sPath = Cells(iRowL, 12).Hyperlinks(1).Address
sFile = Cells(iRowL, 12).Hyperlinks(1).Address
For iChar = Len(sFile) To 1 Step -1
If Mid(sFile, iChar, 1) = "/" Then Exit For
Next iChar
sFile = Right(sFile, Len(sFile) - iChar)
sPath = Left(sPath, Len(sPath) - Len(sFile))
Cells(iRowL, 12).Hyperlinks(1).Address = sPath & sTxt & sFile
sDatei = sPath & sFile
newDatei = sPath & sTxt & sFile
Const csMsg As String = "Datei existiert, überschreiben?"
On Error GoTo ERRORHANDLER
Name sDatei As newDatei
MsgBox "Datei wurde umbenannt!", vbInformation
Exit Sub
ERRORHANDLER:
If Err = 58 Then
Beep
If MsgBox(csMsg, vbQuestion + vbYesNo) = vbNo Then Exit Sub
Resume
ElseIf Err = 53 Then
Beep
MsgBox "Datei nicht gefunden!"
End If
End Sub


3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA | Datei umbenennen aber Pfadangabe relativ
05.03.2008 11:58:11
Holger
Hallo Oliver,
was verstehst du unter relativem Bezug. Wenn ich dein Makro (nach zugegebenermaßen oberflächlicher Prüfung) richtig verstehe, willst du nur einen Text dem dateinamen voranstellen und die Datei dann im selben Verzeichnis speichern. Dazu ist der Code "Name sDatei As newDatei" durchaus richtig.
Wo bleibt denn das Makro hängen oder was funktioniert nicht. Welcher Fehler wird erzeugt? Hast du einmal überprüft, ob bei der Manipulation von Pfad und Dateinamen eine existierende Datei angesprochen wird und gültige Bezeichnungen einschließlich der "\" erzeugt werden?
Gruß
Holger

Anzeige
AW: VBA | Datei umbenennen aber Pfadangabe relativ
05.03.2008 12:58:00
oPabst
Hallo Holger,
vom Ablauf her:
User setzt ein Hyperlink in Datei-A auf Datei-B. Datei-B steht aber nicht im gleichen Ordner. Script holt sich Pfad und Dateinamen aus Hyperlink, zerstückelt ihn und setzt Nr zwischen Pfad und Dateiname. Aber der Pfad steht in der Form ..\..\Ordnername (relativ). Jetzt überschreibt aber das System den Pfad mit dem Pfad aus Datei-A. da ich annehme dass die Methode - Name oldFile as newFile - einen absolut Pfad wie C:\Ordnername\Ordnername benötigt.
Mit der xls-datei aus Hans W. Herber CD klappt das alles sehr gut. Also kann ich mir das nur mit den Absolut/Relativ Pfadangaben erklären.
Hoffe jetzt ist die Sache ein bisschen klarrer.
Gruß Oliver

Anzeige
Hat den keiner eine Idee?
10.03.2008 15:48:00
oPabst
?

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige