Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 20:05:21
28.04.2024 18:33:31
28.04.2024 18:25:12
Anzeige
Archiv - Navigation
1852to1856
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
Inhaltsverzeichnis

Verschieben von Ordnern Inhalt 32/64

Verschieben von Ordnern Inhalt 32/64
18.10.2021 21:35:53
Ordnern
Hallo alle zusammen,
leider habe ich nichts zu meinem Problem gefunden. Ich würde gerne unter Excel 32 und 64 bit einen Ordner verschieben.
Dabei soll er alle darin befindlichen Dateien und Unterordner mitkopieren.
Die Codes die ich bisher fande, haben nur im gleichen Ordner verschoben oder ging nur unter 32bit...
Weiß jemand Rat?
Vielen Dank für Eure BEmühungen.
Z:\AVS\01\Test
nach
Y:\02

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verschieben von Ordnern Inhalt 32/64
18.10.2021 22:21:17
Ordnern
Hallo Andreas,
teste mal folgendes Beispiel....
Code:

[Cc][+][-]

Option Explicit #If VBA7 Then Private Declare PtrSafe Function SHFileOperationA Lib "Shell32.dll" ( _ lpFileOp As SHFILEOPSTRUCT) As Long Type SHFILEOPSTRUCT hwnd As LongPtr wFunc As Long pFrom As String pTo As String fFlags As Integer fAnyOperationsAborted As Long hNameMappings As LongPtr lpszProgressTitle As String End Type #Else Private Declare Function SHFileOperationA Lib "shell32.dll" ( _ lpFileOp As SHFILEOPSTRUCT) As Long Type SHFILEOPSTRUCT hwnd As Long wFunc As Long pFrom As String pTo As String fFlags As Integer fAnyOperationsAborted As Boolean hNameMappings As Long lpszProgressTitle As String End Type #End If Private Const FN_MOVE = &H1& Private Const FnF_SILENT = &H4& Private Const FnF_RENAMEONCOLLISION = &H8& Public Function VerschiebeOrdner(sQuelle As String, sZiel As String) As Long ' Verschiebt einen Ordner Dim FileStructur As SHFILEOPSTRUCT With FileStructur .wFunc = FN_MOVE .pFrom = sQuelle & vbNullChar & vbNullChar .pTo = sZiel .fFlags = FnF_RENAMEONCOLLISION + FnF_SILENT End With VerschiebeOrdner = SHFileOperationA(FileStructur) End Function Sub Test() VerschiebeOrdner "C:\Users\voltm\Desktop\CustomUIEditor", "D:" End Sub

_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz

Anzeige
AW: Verschieben von Ordnern Inhalt 32/64
19.10.2021 11:56:18
Ordnern
Super Karlheinz,
das hat geklappt, so wie ich mir das vorgestellt habe. Vielen Dank schonmal dafür!
Allerdings habe ich noch eine kleine Frage zu Deinem Code.
Wenn jemand eine Datei in dem zu verschiebenden Ordner geöffnet hat, dann kann logischerweise der Ordner ja auch nicht verschoben werden.
Gibt es da eine Möglichkeit vorher abzuchecken und ggf. vorher einen Hinweis anzuzeigen, dass nicht alle Dateien geschlossen sind, und man erst nach Bestätigen fortfahren kann? Quasi eine Art VorAbÜberprüfung?
AW: Verschieben von Ordnern Inhalt 32/64
19.10.2021 14:17:07
Ordnern
...und noch eine Frage....
wenn der Ordner schon vorhanden ist... wie kann ich dann beim Verschieben den Ordner einfach nur eingliedern? Derzeit passiert folgendes:
C:\Test\AB123\00000 zu verschiebender Ordner nach C:\Test\AB123\00001
aber C:\Test\AB123\00001 bereits vorhanden dann passiert folgendes:
C:\Test\AB123\00001\00000
Ich würde aber gerne, dass er C:\Test\AB123\00001 verwendet und dann dort seine Unterordner reinkopiert., ohne noch C:\Test\AB123\00001\00000 anzulegen.
Anzeige
AW: Verschieben von Ordnern Inhalt 32/64
19.10.2021 23:39:14
Ordnern
Hallo Andreas,
leider kann ich Deine Frage nicht beantworten...
Ggf. mal diesen Parameter FnF_RENAMEONCOLLISION weglassen und schauen, was passiert:
.fFlags = FnF_SILENT
' Bei Namenskollisionen im ZIEL wird ein neuer Name
' erzeugt (z.B. Kopie(2) von xy.tmp)

Private Const FnF_RENAMEONCOLLISION = &H8&
' Zeigt keine Fortschritts-Dialogbox (fliegende Blätter)
Private Const FnF_SILENT = &H4&

Zu den geöffneten Dateien hast Du ja schon Antworten erhalten.
Frage: Womit werden Textdateien bei Dir geöffnet. Mit Editor oder auch anderweitig?
Gruß
Karl-Heinz
Anzeige
AW: nachgefragt ...
19.10.2021 10:42:28
neopa
Hallo Andreas,
... warum möchtest Du das mit Excel erledigen lassen, was dies doch einfach mit Systemfunktionalität machbar ist?
Gruß Werner
.. , - ...
AW: nachgefragt ...
19.10.2021 11:57:25
Andreas
... Kann Dir leider nicht ganz folgen? ICh habe in Excel eine Art Liste, die den Dateipfad aktuell halten soll. Also auch verschieben soll, wenn dieser geändert wird.

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige