Vraag


Acties:
  • 0 Henk 'm!

  • M.v.Veelen
  • Registratie: Januari 2001
  • Laatst online: 30-08 18:51
Hi,

we maken gebruik van een Excel-'formulier' waarin een hoop slimmigheidjes zijn verwerkt, onder andere met VBA code. Nu laat ik het bestand dat wordt aangemaakt wegschrijven in een subfolder met als naam het jaartal en dat doe ik als volgt:

code:
1
2
3
4
5
6
7
8
    Dim FSO As Object
    Dim SourceFileNameA, SourceFileNameB, DestinFileName, MoveFileName As String
    Set FSO = CreateObject("Scripting.Filesystemobject")
    SourceFileNameA = "C:\Temp\"
    SourceFileNameB = PartFileName
    MoveFileName = SourceFileNameA & SourceFileNameB
    DestinFileName = "\\path\Afgehandeld\" & Year(Now) & "\" & SourceFileNameB
    FSO.MoveFile BestandsNaam, DestinFileName


Nu heb ik voor de komende paar jaar al lege mapjes aangemaakt, maar ik zou heel graag automatisch een check willen doen of de jaar-map al bestaat. Zo niet: aanmaken. Enz.

Ik had dit bedacht:

code:
1
2
3
4
5
6
7
8
9
10
Sub TestForDir()
Dim strDir As String
    strDir = "\\path\Afgehandeld\" & Year(Now)
    
    If Dir(strDir, vbDirectory) = "" Then
        MkDir strDir
    Else

    End If
End Sub


Ik denk dat dit laatste wel zou moeten werken, maar hoe combineer ik dit in de code in het eerste blok?

¯\_(ツ)_/¯

Beste antwoord (via M.v.Veelen op 05-05-2021 10:30)


  • SpamLame
  • Registratie: Augustus 2000
  • Laatst online: 10:31

SpamLame

niks

Als je het perse in een sub wilt doen >> https://docs.microsoft.co...b-and-function-procedures

Maar waarom niet gewoon inline in je eerste bloc

Alle reacties


Acties:
  • 0 Henk 'm!

  • nescafe
  • Registratie: Januari 2001
  • Laatst online: 12:59
Je kunt TestForDir als enkele regel opnemen in je eerste routine en dan wordt hij uitgevoerd :)

Let erop dat je code ongebruikte regels bevat - ik weet niet of dat voor het voorbeeld is, maar SourceFileNameA, SourceFileNameB en MoveFileName zijn ongebruikt (of enkel toegewezen).

* Barca zweert ook bij fixedsys... althans bij mIRC de rest is comic sans


Acties:
  • Beste antwoord
  • 0 Henk 'm!

  • SpamLame
  • Registratie: Augustus 2000
  • Laatst online: 10:31

SpamLame

niks

Als je het perse in een sub wilt doen >> https://docs.microsoft.co...b-and-function-procedures

Maar waarom niet gewoon inline in je eerste bloc

Acties:
  • 0 Henk 'm!

  • M.v.Veelen
  • Registratie: Januari 2001
  • Laatst online: 30-08 18:51
Het was inderdaad zo simpel. Ik heb het nu inderdaad in het 1e blok/sub verwerkt en dat gaat prima. Thanks !

¯\_(ツ)_/¯