Automatisch bestanden kopieren na aanmaken van een nieuwe map

Status
Niet open voor verdere reacties.

henri77

Gebruiker
Lid geworden
21 jun 2010
Berichten
230
Hallo allemaal,

Via Excel maak ik nieuwe mappen in de windows verkenner (XP).
Wat ik graag zou willen is dat wanneer deze map gemaakt is, dat dan automatisch een x aantal autocad bestanden gekopieerd worden naar deze map.

Zou zoiets kunnen?

Ik hoop dat iemand mij kan helpen.

vrgr.
Henri!
 
Als de te kopieëren bestanden een kenmerk hebben dat gekoppeld kan worden aan de nieuw aangemaakte map is dit geen probleem. Ik veronderstel dat de Cad-files in een verzameldirectory zitten waar dan gezocht kan worden naar dat specifieke kenmerk ?
 
Hallo Rudi,

Dank voor je reactie.
Wat mij betreft kan de bestanden gekoppeld worden aan de nieuw aangemaakte map. 'K zou alleen niet weten hoe.
En het klopt dat de CAD bestanden in een verzameldirectory zitten waarnaar gezocht kan worden.

Hoe moet ik het nu verder oppakken?
Ik wil graag het excel bestand gebruiken die jij voor mij gemaakt hebt.
Moet ik verder borduren in VBA zoals VISHA adviseerd?
Ik heb echter nog een aanpassing gemaakt nav je laatste reactie. Nu kan ik het excel bestand in een andere directory opslaan dan waar de mappen komen te staan. (zoals je al eerder aan heb gegeven).

Ik hoop nog iets van je te horen,

Vr.gr. Henri!
 
Wat ik eigenlijk bedoel is of het steeds dezelfde bestanden zijn die naar de nieuw map gekopieërd moeten worden, of dat het bestanden zijn die specifiek gekoppeld zijn aan dat bepaald project waarvoor je een nieuwe map gemaakt hebt ?
Ik heb momenteel iets in elkaar gestoken dat dus de nieuwe map aanmaakt en alle bestanden die in hun naam dezelfde naam hebben als de nieuwe map verplaatst worden naar die nieuwe map. bv je maakt een nieuwe map met als naam Henri dan worden uit de verzameldirectory alle bestanden met Henri erin (bv Henri1.cad, Henri2.cad, Henri3.cad) verplaatst.
Wees dus zeer duidelijk in je uitleg wat je eigenlijk wil bereiken.
Zet er een voorbeeld bij v/e mapnaam en enkele bestandsnamen die er dan naartoe gekopieërd moeten worden
 
Laatst bewerkt:
Hallo Rudi,

Het zijn idd steeds dezelfde bestanden die gekopieerd moeten worden naar de nieuwe map.
Ik kom maandag hier even op terug.

Vrgr.Henri!
 
Hallo Rudi,

De tekeningen die elke keer gekopieerd moeten worden staan in de map:
start tekeningen nieuwe projecten.

In de verkenner ziet dat er zo uit:
E:\algemeen\start tekeningen nieuwe projecten

In deze map zitten .dwg bestanden, te weten:
BB.dwg
bestaand.dwg
constr.dwg
foto-12.dwg
foto-12-0.dwg
V01.dwg
voorblad.dwg

Deze bestanden moeten dus gekopieerd worden naar de nieuwe aangemaakte map via excel.
Deze nieuwe mappen moeten komen in E:\ lopend
Dit kan ik zelf wel aanpassen.

Ik hoop dat ik e.e.a duidelijk heb uitgelegd
mocht je nog vragen hebben laat het me maar weten.

vr.gr. Henri!
 
Zijn dit de enige bestanden in deze map of zitten er ook nog andere bij ? Het is maar om het programmeren makkelijker te maken in de zin van 'Pak alle bestanden in die map en kopieër naar de nieuwe map', anders moet elk bestand afzonderlijk benoemd en gekopieërd worden.
 
Henri, de langverwachtte
Vergeet niet in je VB-Editor bij Extra >> Verwijzingen 'Microsoft Scripting Runtime' aan te vinken alvorens de code te gebruiken
Code:
Const SourceFolder As String = "E:\algemeen\start tekeningen nieuwe projecten"


Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 2 Then
        If Target.Offset(, -1) <> "" Then
            DestFolder = "E:\lopend" & "\" & Target.Offset(, -1) & "-" & Target
            MkDir DestFolder
        End If
    End If
    With CreateObject("scripting.filesystemobject")
        With .GetFolder(SourceFolder)
            For Each fl In .Files
                fl.Copy DestFolder & "\" & fl.Name
            Next
        End With
    End With
End Sub
 
Laatst bewerkt:
Hallo Rudi,

'T is echt ongeloofelijk!
Wat geweldig!
Ontzettend bedankt.

Vr. gr. Henri!
 
Graag gedaan. nog een kleine wijziging ter voorkoming van foutmeldingen bij gebruik van je werkblad buiten kolom 2
Code:
Const SourceFolder As String = "E:\algemeen\start tekeningen nieuwe projecten"

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 2 Then
        If Target.Offset(, -1) <> "" Then
            DestFolder = "E:\lopend" & "\" & Target.Offset(, -1) & "-" & Target
            MkDir DestFolder
        End If
        With CreateObject("scripting.filesystemobject")
            With .GetFolder(SourceFolder)
                For Each fl In .Files
                    fl.Copy DestFolder & "\" & fl.Name
                Next
            End With
        End With
    End If
End Sub
 
Hallo Rudi,

Ik wil nog een stap verder gaan met dit excel bestand. (komt hij weer aan!!!!!)
Mag ik de volgende vraag aan jou stellen of zal ik hem algemeen plaatsen.
(eerlijk zeggen).
Het is zo onderhand ook een beetje jou project geworden en wil jou niet het gevoel geven dat ik je niet meer nodig ben, integendeel zelfs. Laat het maar weten of je mij nog wilt helpen.

Ik wil graag dat alléén de tekst die ik in de cellen type, automatisch in m’n autocad tekening met de naam: voorblad.dwg
komt te staan. Zou dit kunnen denk je? Zie bijlagen.

Met vriendelijke groet,

Henri van der Laan
 

Bijlagen

Henri, dank dat je rekening wil houden met mijn gevoelens :p, maar in deze zal ik je toch moeten teleurstellen. Ik heb absoluut geen ervaring met AutoCad dus weet ik ook niet hoe objecten in deze aangeroepen worden. Ik zou je aanraden om een nieuwe vraag te beginnen aangezien deze al als opgelost staat en het toch een verschillend onderwerp is. Na wat Googlen heb ik begrepen dat je in AutoCad ook macro's kan maken dus het moet alleszins mogelijk zijn
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan