Option Explicit
Sub CopyFileMask()
'
'******************************************************************************
' Name : CopyFileMask / erstellt : 26.11.2014 / 18:05 / Sub
'------------------------------------------------------------------------------
'die Pfade zumZum ANPASSEN!
'without warranty of any kind
'******************************************************************************
'
Const S_FILE As String = "E:\Temp\Facility\yymmdd_*.csv" 'Maske und PRODUKTION!!!
Const T_PATH As String = "E:\Temp\Subfolder\" 'Zielverzeichnis
Dim objFso As Object 'FileSystemObject
Dim myDate As Date
Dim strInput As String
Dim strFile As String
Dim strOpen As String
On Error GoTo noInput
myDate = InputBox("gültiges Datum oder bestätigen: ", "Eingabe", Date)
If Not IsDate(myDate) Then Exit Sub
On Error GoTo 0
strInput = Format(myDate, "yymmdd")
Select Case MsgBox("soll der momentane Bestand kopiert werden?", _
vbYesNo Or vbQuestion Or vbDefaultButton1, "Sicherheitsabfrage")
Case vbYes
'---------------------------------------------------------------------------------
On Error GoTo File_Error
Set objFso = CreateObject("Scripting.FileSystemObject")
strFile = Replace(S_FILE, "yymmdd", strInput)
objFso.CopyFile strFile, T_PATH, True ' files are overwritten; if false, then not
Set objFso = Nothing
On Error GoTo 0
'---------------------------------------------------------------------------------
Case vbNo
'
End Select
'
On Error Resume Next
strOpen = T_PATH & strInput & "_STATOR.csv"
Workbooks.Open Filename:=strOpen
strOpen = T_PATH & strInput & "_Rotor.csv"
Workbooks.Open Filename:=strOpen
On Error GoTo 0
File_Error:
'------------------------------------------------------------------------------
Select Case Err.Number
Case Is = 0:
Case Is = 53
Call MsgBox(strFile, vbExclamation, "Keine Datei")
Case Else
Call MsgBox(Err.Description, vbCritical, Err.Number)
End Select
'------------------------------------------------------------------------------
noInput:
If Workbooks.Count > 1 Then
Call MsgBox(CStr(Workbooks.Count - 1) & " csv geöffnet!", vbInformation, "wow")
ThisWorkbook.Close SaveChanges:=False
Else
Call MsgBox("keine csv !", vbExclamation, "")
End If
End Sub
Ich hoffe du weist, wie man(n) mit Produktionsdaten umgeht!
|