Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1800to1804
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

Ordner kopieren & UserForm aktualisieren

Ordner kopieren & UserForm aktualisieren
18.12.2020 12:21:00
Flo
Hey liebe Excelianer,
ich hab da folgendes Problem:
In einer Excel Datei habe ich 3 Arbeitsblätter (Start, [Quelle] & [Ziel] ), wobei Quelle und Ziel immer unterschiedlich benannt sein können.
Durch ein Makro wurden im Sheet [Quelle] in der Spalte "M" teilweise Ordnerpfade eingetragen.
(Bsp.: M54:"\\NAS1\ARCHIV\Ordner1\" M78:"\\NAS1\ARCHIV\Ordner2\" M471:"\\NAS1\ARCHIV\Ordner3\" ) usw.
Durch ein weiteres Makro werden die Pfadangaben eingelesen und Ordner für Ordner von einem Verzeichnis(Quelle) in ein anderes(Ziel) kopiert. Es sind je nach dem ganz unterschiedlich viele.
Manchmal sind es nur 10, ein anderes mal 200 Ordner.
Der Kopiervorgang läuft auch immer ohne Problme.
Beim starten des Makro habe ich jetzt noch zusätzlich eine Userform eingebastellt.
In der Userform ist eine Textbox die den aktuell zu kopierenden Pfad anzeigen soll. Allerdings zeigt die Textbox mir immer nur den ersten Ordner von den ganzen Kopiervorgang an. Die Anzeige läuft einfach nicht weiter obwohl die weiteren Ordner fleißig weiter kopiert werden. Wie kann ich das realisieren?
Kurze Rede, Langer Sinn
hier der Code:
Option Explicit
Private objSheetQV As Object
Private objSheetZV As Object
Private letZeiQV As Long
Private zNr As Long
Dim wksQV As String
Dim wksZV As String
Dim QuellPfad As String
Dim ZielPfad As String
Sub FolderCopyStart()
wksQV = Worksheets("Start").[Quelle]
wksZV = Worksheets("Start").[Ziel]
Set objSheetQV = Worksheets(wksQV)
Set objSheetZV = Worksheets(wksZV)
letZeiQV = objSheetQV.Cells(Rows.Count, 2).End(xlUp).Row
Load frm_Copy
With Application.WorksheetFunction
For zNr = 2 To letZei_QV Step 1
QuellPfad = objSheetQV.Range("M" & zNr)
ZielPfad = objSheetZV.Range("A1")
If QuellPfad  "" Then
Load frm_Copy
frm_Copy.UserForm_Initialize
frm_Copy.QuellPfad_Tb.Value = QuellPfad
frm_Copy.Show
CreateObject("Scripting.FileSystemObject").CopyFolder QuellPfad, ZielPfad
End If
Next zNr
End With
End Sub

Ich Danke euch jetzt schon mal im vorraus
Gruß Flo

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

Betreff
Datum
Anwender
Anzeige
AW: Ordner kopieren & UserForm aktualisieren
18.12.2020 13:58:19
Nepumuk
Hallo Flo,
teste mal:
Option Explicit

Public Sub FolderCopyStart()
    
    Dim wksQV As String, wksZV As String
    Dim QuellPfad As String, ZielPfad As String
    Dim letZeiQV As Long, zNr As Long
    Dim objSheetQV As Worksheet
    Dim objFSO As Object
    
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    wksQV = Worksheets("Start").Range("Quelle").Value
    wksZV = Worksheets("Start").Range("Ziel").Value
    
    Set objSheetQV = Worksheets(wksQV)
    
    letZeiQV = objSheetQV.Cells(Rows.Count, 2).End(xlUp).Row
    
    ZielPfad = Worksheets(wksZV).Range("A1").Value
    
    frm_Copy.Show False
    
    For zNr = 2 To letZeiQV Step 1
        
        QuellPfad = objSheetQV.Cells(zNr, 13).Value
        
        If QuellPfad <> vbNullString Then
            
            With frm_Copy
                
                .QuellPfad_Tb.Text = QuellPfad
                .Repaint
                
            End With
            
            objFSO.CopyFolder QuellPfad, ZielPfad
            
        End If
    Next zNr
    
    Set objFSO = Nothing
    Set objSheetQV = Nothing
    
End Sub


Gruß
Nepumuk
Anzeige
AW: Ordner kopieren & UserForm aktualisieren
18.12.2020 14:01:20
ralf_b
du könntest dir den Pfad auch einfach in die Stauszeile schereiben. Dann brauchste keine extra UF.
Application.StatusBar = "kopiere..... " & QuellPfad

AW: Ordner kopieren & UserForm aktualisieren
22.12.2020 01:20:15
Flo
Hi Zusammen,
sorry wenn ich mich jetzt erst melde.
Beide Lösungsvorschläge laufen prima!
Vielen lieben Dank nochmal.
Euch allen frohe Weihnachten
Gruß Flo

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige